<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Peter's Blog - Nodes for linux</title>
    <link>http://www.petersblog.org/</link>
    <description>Nodes containing the tag linux</description>
    <item>
      <title>Have linux, will travel</title>
      <link>http://www.petersblog.org/node/view/1650</link>
      <description>&lt;p&gt;
I recently bought a new USB Memory thingy, a Corsair Voyager 4G, to replace a rather nice verbatim that I had for about a month before I lost it (with important files on &lt;img alt="sad" src="/images/smileys/sad.png" /&gt; ). I fancied a rugged replacement that I could put on my keyring. Some research told me that the most rugged are reputedly Corsair and Sandisk. The comments on Amazon.co.uk revealed people moaning about their Sandisks and being very happy with their Corsairs so I bought the latter. The Sandisks come with some invasive 'feature' called &lt;a href="http://www.u3.com/"&gt;U3&lt;/a&gt; which can be a particularly annoying piece of tat-you-didn't-ask-for. The Corsair comes with some cryptographic thing if you happen to be between the I-need-encryption and the all-encryption-systems-have-government-backdoors levels of paranoia. 
&lt;/p&gt;
&lt;p&gt;
It seems rugged enough as it has a rubberised finish which feels rather unpleasant in the hand so I will not be inclined to keep fondling it in my pocket. Even better, the cap is rubber and so I won't be habitually clicking it. I would prefer a capless design but Corsair don't make one and then I would be fiddling with the cap mechanism. The rubber cap is downright unpleasant and I will only use it when necessary. The rubber seems to attract pocket lint &lt;img alt="sad" src="/images/smileys/sad.png" /&gt; 
&lt;/p&gt;
&lt;p&gt;
So I had a look around at the state of the art in Linuxes that boot from USB and I come across a little gem: &lt;a href="http://www.damnsmalllinux.org/"&gt;DSL USB Embedded&lt;/a&gt;. DSL is Damn Small Linux and is an old 2.4 kernel and 50 megabytes of applications, a minimal system with hand-picked useful apps. The beauty of this particular distrbution is that it includes a QEMU virtual machine so you can be running windows, bung the USB memory in the hole, run a batch file and have your own linux running in a virtual machine under windows without having to install linux or reboot into a live CD. Amaze and bewilder your friends by running linux on their cruddy windows boxes! Remove your USB key and all traces of linux with it! 
&lt;/p&gt;
&lt;div class="picture"&gt;&lt;div class="pictureframe"&gt;&lt;a href="/pictures/0000/0043/DslUsbEmbedded.jpg" rel="lightbox" title="DSL USB Embedded"&gt;&lt;img alt="DSL USB Embedded" src="/pictures/0000/0043/DslUsbEmbedded_normal.jpg"&gt;&lt;/a&gt;&lt;br/&gt;&lt;p&gt;DSL USB Embedded&lt;/p&gt;&lt;/div&gt;&lt;/div&gt; 
&lt;p&gt;
DSL USB Embedded under Vista with IE7 to prove it is Windows. It boots quite quickly too (less than a minute) which is much better than Ubuntu/Knoppix live CDs. 
&lt;/p&gt;
&lt;p&gt;
The USB key can also be set up to boot a pc straight into linux for some light Windows password resetting and it can have some persistant memory allocated to it should you not wish to cover your tracks. 
&lt;/p&gt;&lt;p&gt;Related Posts: &lt;a href="/tag/dsl"&gt;dsl&lt;/a&gt; &lt;a href="/tag/linux"&gt;linux&lt;/a&gt;&lt;/p&gt;</description>
      <guid>http://www.petersblog.org/node/view/1650</guid>
      <category domain="http://www.technorati.com/tag">dsl</category>
      <category domain="http://www.technorati.com/tag">linux</category>
    </item>
    <item>
      <title>andLinux</title>
      <link>http://www.petersblog.org/node/view/1648</link>
      <description>&lt;p&gt;
&lt;a href="http://www.andlinux.org/"&gt;andLinux&lt;/a&gt; is designed to make any sentence sound ungrammatical. It is also a linux distribution that runs under Windows 2000/XP/Vista. I was put onto it by long-time commenter spikeles and I am really impressed with it. 
&lt;/p&gt;
&lt;p&gt;
You install it on your Windows box and it creates a Windows service that is a linux kernel. It also includes enough X smarts to be able to run X applications alongside your windows apps. Here is the obligatory screenshot of IE7 peacefully coexisting with Krusader and Konsole on a Windows Vista desktop: 
&lt;/p&gt;
&lt;div class="picture"&gt;&lt;div class="pictureframe"&gt;&lt;a href="/pictures/0000/0040/andLinux.jpg" rel="lightbox" title="andLinux"&gt;&lt;img alt="andLinux" src="/pictures/0000/0040/andLinux_normal.jpg"&gt;&lt;/a&gt;&lt;br/&gt;&lt;p&gt;andLinux&lt;/p&gt;&lt;/div&gt;&lt;/div&gt; 
&lt;p&gt;
Notice how the different 'linux' apps have their own windows taskbar entries. And you can NEVER have enough dual-pane file managers. And yes, konsole is about a billion times better than the windows command terminal. Oh, and note that the last quicklaunch bar entry is for Konsole and was created by the andLinux installer. 
&lt;/p&gt;
&lt;p&gt;
It's support for linux is about as deep as I can trawl, I was able to get &lt;a href="/tag/autofs"&gt;autofs&lt;/a&gt; running exactly as I would under ubuntu. It is based on Kubuntu (most of the apps that come with it are KDE) and while the current install gives you a version of gutsy I was able to upgrade it to hardy from the standard ubuntu repositories. 
&lt;/p&gt;
&lt;p&gt;
I can cut and paste between linux and windows apps. The linux apps can access the windows files using Samba: there is an alternative method of accessing the  windows files called &lt;a href="http://colinux.wikia.com/wiki/Cofs_device"&gt;cofs&lt;/a&gt; but the cofs website says: 
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
Please note: The cofs device is new in coLinux 0.6.2. It's still in the experimental phase and is very buggy! So don't blame us if it breaks your disk ;)... YES it is, it crashed my server when I tried to rename a file from within coLinux This and other crashes are fixed in coLinux 0.6.3. Please see Cofs in 0.6.3 for a description how to use it there. &lt;/blockquote&gt; 
&lt;/p&gt;
&lt;p&gt;
so sod that. 
&lt;/p&gt;
&lt;p&gt;
One bugbear at the moment is that with a dual-screen setup, andLinux seems to think there is just one big monitor and so windows pop up in the centre of the big screen, windows tend to be too large for one monitor etc. It is something I can live with. 
&lt;/p&gt;
&lt;p&gt;
andLinux makes cygwin look mighty primitive. There is always an element of finger crossing to using cygwin and I have struggled to get it working properly with &lt;a href="/tag/netbeans"&gt;NetBeans&lt;/a&gt;. andLinux makes running linux in a vm look like a cludge. If you want to use apps written by developers for developers rather than apps designed by marketing for management and you are compelled by your corporate overlords to do it on a windows box then this is what you want. 
&lt;/p&gt;
&lt;p&gt;
Thanks spike! 
&lt;/p&gt;
&lt;p&gt;
UPDATE: OMG &lt;a href="http://evernote.com/pub/pinkblob/public#14f89183-100c-48b8-8d99-62f8f6005382"&gt;Konsole is good&lt;/a&gt;. 
&lt;/p&gt;&lt;p&gt;Related Posts: &lt;a href="/tag/andlinux"&gt;andlinux&lt;/a&gt; &lt;a href="/tag/linux"&gt;linux&lt;/a&gt; &lt;a href="/tag/ubuntu"&gt;ubuntu&lt;/a&gt;&lt;/p&gt;</description>
      <guid>http://www.petersblog.org/node/view/1648</guid>
      <category domain="http://www.technorati.com/tag">andlinux</category>
      <category domain="http://www.technorati.com/tag">linux</category>
      <category domain="http://www.technorati.com/tag">ubuntu</category>
    </item>
    <item>
      <title>Best of Both Worlds</title>
      <link>http://www.petersblog.org/node/view/1638</link>
      <description>&lt;p&gt;
Could this be the best of both worlds? 
&lt;/p&gt;
&lt;div class="picture"&gt;&lt;div class="pictureframe"&gt;&lt;a href="/pictures/0000/0031/BothWorlds.jpg" rel="lightbox" title="Best of Both Worlds"&gt;&lt;img alt="Best of Both Worlds" src="/pictures/0000/0031/BothWorlds_normal.jpg"&gt;&lt;/a&gt;&lt;br/&gt;&lt;p&gt;Best of Both Worlds&lt;/p&gt;&lt;/div&gt;&lt;/div&gt; 
&lt;p&gt;
On the left we have &lt;a href="http://www.kubuntu.org/"&gt;kubuntu&lt;/a&gt; running under &lt;a href="http://www.vmware.com/products/player/"&gt;vmware player&lt;/a&gt; on Windows Vista. To the right we have Outlook and some Vista widgets running on the Vista host. 
&lt;/p&gt;
&lt;p&gt;
Vmware player is incredibly solid and linux installs nicely unlike Microsoft Virtual PC which runs into various problems (which Microsoft aren't rushing to fix). Vmware player is free and I prefer it to Vmware server as I don't need the 'server' element. It's missing features like pause/rewind/snapshot so it is less useful for testing setup programs (cannot roll back to a clean o/s install) but is ok if all you want is a simple desktop os. It supports USB, unlike the free versions of VirtualBox. 
&lt;/p&gt;
&lt;p&gt;
I found a site called &lt;a href="http://www.easyvmx.com/"&gt;Easy VMX&lt;/a&gt; that allows me to make new virtual machines for vmware player so I can build whatever vm's I like. 
&lt;/p&gt;
&lt;p&gt;
Somehow (not sure how) the seamless mouse thing works and I can switch between kubuntu and windows just be moving the mouse. Unfortunately cut and paste between them does not seem to be working. 
&lt;/p&gt;
&lt;p&gt;
So why use Vista as the host? Because I'd need another license to run it in a vm on a linux host &lt;img alt="sad" src="/images/smileys/sad.png" /&gt; 
&lt;/p&gt;
&lt;p&gt;
I'm giving kubuntu/KDE a try. Compared to gnome it is either more suited to the power user or more bloated, depending on your viewpoint. I think I'm leaning to krusader as a file manager, I could probably run it under gnome but it costs nothing to try KDE. 
&lt;/p&gt;
&lt;p&gt;
TBH there's something about the gnome philosophy of cloning windows that irritates me. KDE may have once used 'non free' software but I don't really care. 
&lt;/p&gt;
&lt;p&gt;
Good to see the blog works in Konquerer and the text editor has a spell checker! Ironically Konquerer is flagged in red. 
&lt;/p&gt;&lt;p&gt;Related Posts: &lt;a href="/tag/kubuntu"&gt;kubuntu&lt;/a&gt; &lt;a href="/tag/linux"&gt;linux&lt;/a&gt; &lt;a href="/tag/vista"&gt;vista&lt;/a&gt; &lt;a href="/tag/vmware"&gt;vmware&lt;/a&gt;&lt;/p&gt;</description>
      <guid>http://www.petersblog.org/node/view/1638</guid>
      <category domain="http://www.technorati.com/tag">kubuntu</category>
      <category domain="http://www.technorati.com/tag">linux</category>
      <category domain="http://www.technorati.com/tag">vista</category>
      <category domain="http://www.technorati.com/tag">vmware</category>
    </item>
    <item>
      <title>Mythical Convergence Box++</title>
      <link>http://www.petersblog.org/node/view/1636</link>
      <description>&lt;p&gt;
My Mythical Convergence Box was working ok as a mythtv backend but as a server it was frustratingly slow: slow to boot firefox, task switch, run wow, whatever. I was itching to upgrade it. 
&lt;/p&gt;
&lt;p&gt;
I decided the cheapest solution was a good old processor/motherboard/memory upgrade so now the box has a Dual Core 64 bit AMD processor, a AMD690GM motherboard and 2g of 800Mhz ram. I also splurged on a 750G SATA hard disk since they were on special offer. I installed the native &lt;a href="/tag/ubuntu"&gt;Ubuntu&lt;/a&gt; 64 bit version for a free 64 bit state of the art operating system. Why pay more? 
&lt;/p&gt;
&lt;p&gt;
This fixed the performance problems &lt;img alt="smile" src="/images/smileys/smile.png" /&gt; 
&lt;/p&gt;
&lt;p&gt;
Myth and everything all worked fine, 64 bits did not cause any compatability problems. The 750G disk will hold about 375 hours of TV recordings, should I have 15 solid days (and nights) spare to watch tv. 
&lt;/p&gt;
&lt;p&gt;
The motherboard I bought had an AMD/ATI chipset so my biggest problems were getting WoW to run without crashing, ATI's linux drivers not being the best. I used the ones installed by ubuntu, I tried installing newer ones at one point but they made no difference. I tweeked more things than I can remember googling for but the most important thing is to add 
&lt;/p&gt;
&lt;pre class="lazy"&gt;SET gxAPI &lt;span class="String"&gt;&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;opengl&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;
&lt;/pre&gt;
&lt;p&gt;
to WTF/Config.wtf as otherwise it tries to runs in direct 3d mode and immediately dies with a fatal exception. The frame rate was then crap and I had to turn all the settings down but it does run wow acceptably: while setting it up I became preoccupied with gathering turtle meat. 
&lt;/p&gt;
&lt;p&gt;
The graphics are still odd, there is something wrong with the colour balance that makes everything looks cartoonish and when watching recordings the top line on the display flickers. It's awfully tempting to get an nvidia card.. 
&lt;/p&gt;
&lt;p&gt;
On my desktop Wow still runs just fine, even with mythtv showing Alien vs Predator on the second monitor. Add a nice mug of coffee and life is sweet. 
&lt;/p&gt;&lt;p&gt;Related Posts: &lt;a href="/tag/linux"&gt;linux&lt;/a&gt; &lt;a href="/tag/moneypit"&gt;moneypit&lt;/a&gt; &lt;a href="/tag/mythtv"&gt;mythtv&lt;/a&gt; &lt;a href="/tag/ubuntu"&gt;ubuntu&lt;/a&gt; &lt;a href="/tag/wow"&gt;wow&lt;/a&gt;&lt;/p&gt;</description>
      <guid>http://www.petersblog.org/node/view/1636</guid>
      <category domain="http://www.technorati.com/tag">linux</category>
      <category domain="http://www.technorati.com/tag">moneypit</category>
      <category domain="http://www.technorati.com/tag">mythtv</category>
      <category domain="http://www.technorati.com/tag">ubuntu</category>
      <category domain="http://www.technorati.com/tag">wow</category>
    </item>
    <item>
      <title>Hardy Improved</title>
      <link>http://www.petersblog.org/node/view/1625</link>
      <description>&lt;p&gt;
I resolved my issues with &lt;a href="/node/1624"&gt;Ubuntu hardy heron&lt;/a&gt;. Extensive googling revealed I was pretty much alone in my misery so I fixed it the Windows way, with a clean install. To be more accurate, I installed Xubuntu rather than Ubuntu and I'm glad I did. The difference is that I am using xfce rather than gnome and so I'm missing a lot of gee whiz features but, oddly enough, I've never found anything extra in gnome that I can't live without. Gnome development seems to be going in the direction of dumbing it down to make Windows converts feel at ease and all the brilliant new features of gnome are cunningly hidden in case Windows folk turn them on by mistake and their brains explode from the amazement and confusion. 
&lt;/p&gt;
&lt;p&gt;
I reinstalled as follows: 
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;
backed up my xorg.conf in case I broke my carefully crafted  X setup. 
&lt;/li&gt;
&lt;li&gt;
backed up assorted irreplacable stuff in my home directory. How nice it is having a home directory, one place to store all my files. 
&lt;/li&gt;
&lt;li&gt;
downloaded and blew xubuntu install cd 
&lt;/li&gt;
&lt;li&gt;
swapped my primary and secondary monitor leads as I am sooo sick of my small secondary monitor being considered the primary monitor (despite my protests). 
&lt;/li&gt;
&lt;li&gt;
booted cd 
&lt;/li&gt;
&lt;li&gt;
selected install option 
&lt;/li&gt;
&lt;li&gt;
cd booted and gaved me a totally orange desktop 
&lt;/li&gt;
&lt;li&gt;
rebooted cd and pressed f4 for safe graphics mode 
&lt;/li&gt;
&lt;li&gt;
ran install, carefully overwriting my old linux setup 
&lt;/li&gt;
&lt;li&gt;
install complete. 
&lt;/li&gt;
&lt;li&gt;
make sure the nvidia restricted (urgh nasty closed source) driver is installed. 
&lt;/li&gt;
&lt;li&gt;
Most importantly, run 
&lt;pre class="lazy"&gt;sudo aptitude install nvidia-settings
nvidia-settings
&lt;/pre&gt;
to set up the multi-monitor. I've learn from my last install not to touch the main display control panel. 
&lt;/li&gt;&lt;/ul&gt;

&lt;p&gt;
Um, that's it. It was easy and took maybe 30 minutes (which didn't include downloading the cd image). 
&lt;/p&gt;
&lt;p&gt;
Xubutu has a great advantage over ubuntu: a crisp blue theme instead of that brown! 
&lt;/p&gt;
&lt;p&gt;
One problem I am having with all the (x)ubuntu work: I have to type my password about 300 times a day, both for ssh and sudo and it is driving me MAD. 
&lt;/p&gt;&lt;p&gt;Related Posts: &lt;a href="/tag/linux"&gt;linux&lt;/a&gt; &lt;a href="/tag/ubuntu"&gt;ubuntu&lt;/a&gt; &lt;a href="/tag/xubuntu"&gt;xubuntu&lt;/a&gt;&lt;/p&gt;</description>
      <guid>http://www.petersblog.org/node/view/1625</guid>
      <category domain="http://www.technorati.com/tag">linux</category>
      <category domain="http://www.technorati.com/tag">ubuntu</category>
      <category domain="http://www.technorati.com/tag">xubuntu</category>
    </item>
    <item>
      <title>Hard(l)y an upgrade</title>
      <link>http://www.petersblog.org/node/view/1624</link>
      <description>&lt;p&gt;
I upgraded my home desktop to Ubuntu 8.04 (Hardy Heron) as soon as it came out last week. I used the feature in the Upgrade Manager which told me the new version was available so doing the actual upgrade was fairly idiot proof. 
&lt;/p&gt;
&lt;p&gt;
Since then Firefox (version 3 beta) has been broken, the menu's don't work, I click on them and nothing happens, as if they were disabled. Also the user interface locks up after five to ten minutes of doing anything. When it happens again the menu's die, the mouse moves about and some of the panel widgets work but essentially it is useless. Ctrl-alt-backspace fortunately works so I can reboot the desktop and start again. 
&lt;/p&gt;
&lt;p&gt;
World of Warcraft is the only thing that works for any period of time ( &lt;img alt="smile" src="/images/smileys/smile.png" /&gt; ). Apart from that the system is useless and I've had to use Windows. 
&lt;/p&gt;
&lt;p&gt;
I've googled and found other people complaining about 8.04 but they appear to have kernel lockups which would be much more dire. 
&lt;/p&gt;
&lt;p&gt;
It's a pity as I had been enjoying using a linux desktop. The only thing that didn't work before was my printer and I hadn't put any effort into fixing that. 
&lt;/p&gt;
&lt;p&gt;
I had already upgraded my &lt;a href="/node/1609"&gt;Mythical Convergence Box&lt;/a&gt; to Xubuntu 8.04 which is Ubuntu with a lean mean xfce user interface rather than gnome. Xfce gives a passable Windowsy level of functionality. That box is running just fine and now reacts to the Hauppauge Remote Control. Unfortunately 8.04 has a newer version of mythtv so if I rolled my desktop back to the previous version (gutsy gibbbon) I wouldn't be able to use a gutsy mythtv frontend with the hardy backend and I don't want to roll the myth box back. 
&lt;/p&gt;
&lt;p&gt;
When gnome is working on Hardy it has changed it's behaviour somewhat. The application menu works in a contrary way such that the menu is only there while your mouse button is down so you press your mouse down to open it, find your menu item while holding the button down and then release to activate. I can see that this needs just a mouse down and up rather than two clicks but it's annoyingly different, especially as I can't find a way to turn it off. 
&lt;/p&gt;
&lt;p&gt;
Gnome also has interesting behaviour when moving windows around in that it tries to guess where you are dragging it to and how big the window will be. I can drag a maximised app from one screen to another and even though the screens are different sizes I get the result I want. I think this may actually be useful once I learn to predict what it is going to do. 
&lt;/p&gt;
&lt;p&gt;
Conclusion: I wish I'd waited for 8.0.5 &lt;img alt="sad" src="/images/smileys/sad.png" /&gt; I may go back to gutsy on the desktop and live without the myth frontend for a while. I don't want to go back to windows. 
&lt;/p&gt;&lt;p&gt;Related Posts: &lt;a href="/tag/linux"&gt;linux&lt;/a&gt; &lt;a href="/tag/mythtv"&gt;mythtv&lt;/a&gt; &lt;a href="/tag/ubuntu"&gt;ubuntu&lt;/a&gt;&lt;/p&gt;</description>
      <guid>http://www.petersblog.org/node/view/1624</guid>
      <category domain="http://www.technorati.com/tag">linux</category>
      <category domain="http://www.technorati.com/tag">mythtv</category>
      <category domain="http://www.technorati.com/tag">ubuntu</category>
    </item>
    <item>
      <title>Disk Full</title>
      <link>http://www.petersblog.org/node/view/1612</link>
      <description>&lt;p&gt;
I set up a cron job to backup my web sites to my &lt;a href="/node/1609"&gt;Mythical Convergence Box&lt;/a&gt;, just a simple rsync of the subversion repository and, to be safe, /var/www. The latter was 500Mbytes. 
&lt;/p&gt;
&lt;p&gt;
Next morning the cron job had run and my server was inaccessable. Oops, with 10g of WoW and 10g of family photos I had filled the main disk up, my 250g Myth disk being mounted on /var/lib/mythtv. The box hadn't crashed but it was in a kind of coma, you ask it to do something and it went urgh. 
&lt;/p&gt;
&lt;p&gt;
I had to reboot into recovery mode and move the photos to the mythtv disk, leaving me 68%. Observations: 
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;
Interesting how hard the system failed when the disk filled up. Have to be careful. 
&lt;/li&gt;
&lt;li&gt;
Linux recovery mode is actually useful! Whenever I've tried the (admittedly pre-vista) Windows recovery modes it has spent a quarter of an hour loading drivers for obscure disk controllers, then I've tried the automated recovery that never works, then I've rebooted, I've waited another quarter hour, then it's given me something with the raw power of a 1985 dos prompt, then I've given up and reformatted the disk. 
&lt;/li&gt;&lt;/ul&gt;

&lt;p&gt;
Last night my cron job worked fine and my websites are so thoroughly backed up that my head is spinning. 
&lt;/p&gt;&lt;p&gt;Related Posts: &lt;a href="/tag/backup"&gt;backup&lt;/a&gt; &lt;a href="/tag/linux"&gt;linux&lt;/a&gt; &lt;a href="/tag/ubuntu"&gt;ubuntu&lt;/a&gt;&lt;/p&gt;</description>
      <guid>http://www.petersblog.org/node/view/1612</guid>
      <category domain="http://www.technorati.com/tag">backup</category>
      <category domain="http://www.technorati.com/tag">linux</category>
      <category domain="http://www.technorati.com/tag">ubuntu</category>
    </item>
    <item>
      <title>vsftpd</title>
      <link>http://www.petersblog.org/node/view/1579</link>
      <description>&lt;p&gt;
I had a need to put an ftp server on my &lt;a href="/tag/slicehost"&gt;slicehost&lt;/a&gt; slice so someone could upload stuff to a site I was hosting. I'd rather avoid ftp as a potential security hole but the alternative is to try to convert them to sftp and also the &lt;a href="/node/1576"&gt;E editor&lt;/a&gt; only supports ftp. 
&lt;/p&gt;
&lt;p&gt;
I settled for vsftpd as the ftp server but it took ages to get this person's login to work. I had him set up chrooted to the directory he needed to be in and with his shell set to /bin/false to prevent him logging into a shell. When testing I couldn't log in as him without getting a generic error 530, login denied according to the log file (which didn't feel the need to say &lt;i&gt;why&lt;/i&gt; login was denied). Of course my own login was fine. 
&lt;/p&gt;
&lt;p&gt;
The answer was in the vsftpd faq, it seems that vsftpd looks through a file called /etc/shells to see if the person connecting has a legitimate login shell and /bin/false wasn't in there. It says this check can be disabled but the incantation didn't work so I had to add /bin/false to the shells file. 
&lt;/p&gt;
&lt;p&gt;
I don't quite understand the logic of this design. Isn't it fairly standard to have users who can ftp in but not login? The /bin/false trick was following a precedent from the noble ubuntu/debian distributions. 
&lt;/p&gt;
&lt;p&gt;
I'm getting into the habit now of adding any file I edit in /etc to subversion (as noted &lt;a href="/node/1559"&gt;here&lt;/a&gt;), if only as a way to keep track of which ones I have fiddled with. The 95% that I don't need to touch are not in subversion. I like this, I can recall what I did and why (through subversion comments) which will help me restore the system or replicate it. That way, next time I need to install vsftpd I can recall what other obscure system files need tweeking. 
&lt;/p&gt;&lt;p&gt;Related Posts: &lt;a href="/tag/ftp"&gt;ftp&lt;/a&gt; &lt;a href="/tag/linux"&gt;linux&lt;/a&gt; &lt;a href="/tag/subversion"&gt;subversion&lt;/a&gt; &lt;a href="/tag/vsftpd"&gt;vsftpd&lt;/a&gt;&lt;/p&gt;</description>
      <guid>http://www.petersblog.org/node/view/1579</guid>
      <category domain="http://www.technorati.com/tag">ftp</category>
      <category domain="http://www.technorati.com/tag">linux</category>
      <category domain="http://www.technorati.com/tag">subversion</category>
      <category domain="http://www.technorati.com/tag">vsftpd</category>
    </item>
    <item>
      <title>Is 2008 my year of the Linux Desktop?</title>
      <link>http://www.petersblog.org/node/view/1577</link>
      <description>&lt;p&gt;
I forgot to blog that over christmas I had a brief look at the state of the art in linux desktop distributions. I tried three, two from cover disks in 'Linux Format' magazine: 
&lt;/p&gt;
&lt;dl&gt;&lt;dt&gt;Ubuntu 7.10&lt;/dt&gt;&lt;dd&gt;
Interesting to see that the ubuntu CD is now a live CD that boots to let you play with it but the desktop has an 'install' shortcut so you can install it as well. Nice presentation. 
&lt;/dd&gt;
&lt;dt&gt;Fedora 8&lt;/dt&gt;&lt;dd&gt;
This installed nicely and was ok, a bit like Ubuntu but blue. Seen one gnome desktop, seen them all. 
&lt;/dd&gt;
&lt;dt&gt;PCLinuxOS&lt;/dt&gt;&lt;dd&gt;
This was an interesting new distribution that uses KDE rather than gnome and also uses apt for repositories which I still prefer to rpm/yum. 
&lt;/dl&gt;&lt;/dd&gt;

&lt;p&gt;
These distributions all have the nice new Beryl/Compiz guis to give Vista style windows animations (I like the bouncing effect) but what I really liked was the 'cube', a quick way to move between virtual desktops using the keyboard. Unfortunately none of them would work properly with my home desktop multi-monitor setup despite hours wasted editing X config files. Is it really at the limit of modern computer science for X to not get confused as to which monitor is which? Do microsoft have a patent on it? I got it running apart from the title bars not appearing on windows (ffs). 
&lt;/p&gt;
&lt;p&gt;
I ended up installing PCLinuxOS on my laptop (Dell D410) as I decided I like the depth of KDE compared to gnomes attempt to mimic windows 'simplicity'. Unfortunately I'm now in a situation where I have to sign in as root to get it to connect to a wireless network (argh). There's probably an easy way to do this but in the googling I have done it has eluded me thus far. If it weren't for this I'd be perfectly happy with it on the laptop. I'm not sure the battery life is as good as it is with Windows but with its extended life battery it runs for a couple of hours between charges which is about as long as I get to use it. 
&lt;/p&gt;
&lt;p&gt;
Conclusion: the year of the linux laptop maybe, probably not the desktop. 
&lt;/p&gt;&lt;p&gt;Related Posts: &lt;a href="/tag/linux"&gt;linux&lt;/a&gt; &lt;a href="/tag/ubuntu"&gt;ubuntu&lt;/a&gt;&lt;/p&gt;</description>
      <guid>http://www.petersblog.org/node/view/1577</guid>
      <category domain="http://www.technorati.com/tag">linux</category>
      <category domain="http://www.technorati.com/tag">ubuntu</category>
    </item>
    <item>
      <title>Problems with Multiple Ruby Extensions</title>
      <link>http://www.petersblog.org/node/view/1572</link>
      <description>&lt;p&gt;
I've been testing my C libraries by compiling them into ruby extensions and then using ruby's unit testing to test them. Under Windows I had it all running nicely and I could run a main test script that would invoke all the other test scripts. Sweet. 
&lt;/p&gt;
&lt;p&gt;
Then it came to getting it running under linux (the target system) and while the unit tests ran fine individually, when I tried my main test script I was getting weird errors from my test extensions, including segment violations (!). 
&lt;/p&gt;
&lt;p&gt;
It took me a while to track down the problem but it turned out to be due to the behaviour of gcc and the linux program loader. All my test libraries were loaded into one ruby process and because they all contained functions with similar names it became a bit of a lottery as to which function in which library was called. I am used to the behaviour of windows dll's where all functions are by default hidden from the outside world unless you explicity export them. gcc/elf/whatever seems to export everything from shared libraries (linux equivalent of a dll) by default with hilarious results. 
&lt;/p&gt;
&lt;p&gt;
In version 4 of gcc they have added a facility for hiding these internal functions. I solved my problem as follows: 
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;
Add '-fvisibility=hidden' to the gcc arguments to cause all functions to be hidden by default. 
&lt;/li&gt;
&lt;li&gt;
Add this code to my stddefs.h: 
&lt;pre class="lazy"&gt;&lt;span class="line-numbers"&gt;   1 &lt;/span&gt; #&lt;span class="Keyword"&gt;ifdef&lt;/span&gt; _MSC_VER
&lt;span class="line-numbers"&gt;   2 &lt;/span&gt;   #&lt;span class="Keyword"&gt;ifdef&lt;/span&gt; BUILDING_DLL
&lt;span class="line-numbers"&gt;   3 &lt;/span&gt;     #&lt;span class="Keyword"&gt;define&lt;/span&gt; &lt;span class="Entity"&gt;DLLEXPORT&lt;/span&gt; &lt;span class="Entity"&gt;__declsp&lt;span class="Entity"&gt;ec&lt;/span&gt;&lt;/span&gt;(dllexport)
&lt;span class="line-numbers"&gt;   4 &lt;/span&gt;   #&lt;span class="Keyword"&gt;else&lt;/span&gt;
&lt;span class="line-numbers"&gt;   5 &lt;/span&gt;     #&lt;span class="Keyword"&gt;define&lt;/span&gt; &lt;span class="Entity"&gt;DLLEXPORT&lt;/span&gt; &lt;span class="Entity"&gt;__declsp&lt;span class="Entity"&gt;ec&lt;/span&gt;&lt;/span&gt;(dllimport)
&lt;span class="line-numbers"&gt;   6 &lt;/span&gt;   #&lt;span class="Keyword"&gt;endif&lt;/span&gt;
&lt;span class="line-numbers"&gt;   7 &lt;/span&gt;   #&lt;span class="Keyword"&gt;define&lt;/span&gt; &lt;span class="Entity"&gt;DLLLOCAL&lt;/span&gt;
&lt;span class="line-numbers"&gt;   8 &lt;/span&gt; #&lt;span class="Keyword"&gt;else&lt;/span&gt;
&lt;span class="line-numbers"&gt;   9 &lt;/span&gt;   #&lt;span class="Keyword"&gt;define&lt;/span&gt; &lt;span class="Entity"&gt;DLLEXPORT&lt;/span&gt; __attribute__ ((visibility(&lt;span class="String"&gt;&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;default&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;)))
&lt;span class="line-numbers"&gt;  10 &lt;/span&gt;   #&lt;span class="Keyword"&gt;define&lt;/span&gt; &lt;span class="Entity"&gt;DLLLOCAL&lt;/span&gt; __attribute__ ((visibility(&lt;span class="String"&gt;&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;hidden&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;)))
&lt;span class="line-numbers"&gt;  11 &lt;/span&gt; #&lt;span class="Keyword"&gt;endif&lt;/span&gt;
&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
Change the functions that ruby calls to load the ruby extension to the following form (i.e. add DLLEXPORT): 
&lt;pre class="lazy"&gt;&lt;span class="line-numbers"&gt;   1 &lt;/span&gt; &lt;span class="Comment"&gt;&lt;span class="Comment"&gt;/*&lt;/span&gt;&lt;/span&gt;
&lt;span class="line-numbers"&gt;   2 &lt;/span&gt; &lt;span class="Comment"&gt; * Initialise the test class.&lt;/span&gt;
&lt;span class="line-numbers"&gt;   3 &lt;/span&gt; &lt;span class="Comment"&gt; &lt;span class="Comment"&gt;*/&lt;/span&gt;&lt;/span&gt;
&lt;span class="line-numbers"&gt;   4 &lt;/span&gt; DLLEXPORT &lt;span class="Keyword"&gt;void&lt;/span&gt; &lt;span class="Entity"&gt;Init_testtim&lt;span class="Entity"&gt;er&lt;/span&gt;&lt;/span&gt;( &lt;span class="Keyword"&gt;void&lt;/span&gt;)
&lt;span class="line-numbers"&gt;   5 &lt;/span&gt; {
&lt;span class="line-numbers"&gt;   6 &lt;/span&gt;     VALUE oMyClass = rb_define_class( &lt;span class="String"&gt;&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;TestTimer&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;, rb_cObject);
&lt;span class="line-numbers"&gt;   7 &lt;/span&gt;     rb_define_method( oMyClass, &lt;span class="String"&gt;&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;initialize&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;, test_initialise, &lt;span class="Constant"&gt;1&lt;/span&gt;);
&lt;span class="line-numbers"&gt;   8 &lt;/span&gt;     rb_define_method( oMyClass, &lt;span class="String"&gt;&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;TimerSet&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;, test_TimerSet, &lt;span class="Constant"&gt;1&lt;/span&gt;);
&lt;span class="line-numbers"&gt;   9 &lt;/span&gt;     rb_define_method( oMyClass, &lt;span class="String"&gt;&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;TimerUpdate&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;, test_TimerUpdate, &lt;span class="Constant"&gt;1&lt;/span&gt;);
&lt;span class="line-numbers"&gt;  10 &lt;/span&gt;     rb_define_method( oMyClass, &lt;span class="String"&gt;&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;TimerStart&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;, test_TimerStart, &lt;span class="Constant"&gt;1&lt;/span&gt;);
&lt;span class="line-numbers"&gt;  11 &lt;/span&gt;     rb_define_method( oMyClass, &lt;span class="String"&gt;&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;TimerTest&lt;span class="String"&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;, test_TimerTest, &lt;span class="Constant"&gt;0&lt;/span&gt;);
&lt;span class="line-numbers"&gt;  12 &lt;/span&gt; }
&lt;/pre&gt;
&lt;/li&gt;&lt;/ul&gt;

&lt;p&gt;
These functions are the only ones that need to be visible outside the library. 
&lt;/p&gt;
&lt;p&gt;
Results: 
&lt;/p&gt;
&lt;div style="text-align:center"&gt;&lt;img src="/images/TestsDone.gif" alt="images/TestsDone.gif"/&gt;&lt;/div&gt; &lt;p&gt;Related Posts: &lt;a href="/tag/c"&gt;c&lt;/a&gt; &lt;a href="/tag/gcc"&gt;gcc&lt;/a&gt; &lt;a href="/tag/linux"&gt;linux&lt;/a&gt; &lt;a href="/tag/ruby"&gt;ruby&lt;/a&gt;&lt;/p&gt;</description>
      <guid>http://www.petersblog.org/node/view/1572</guid>
      <category domain="http://www.technorati.com/tag">c</category>
      <category domain="http://www.technorati.com/tag">gcc</category>
      <category domain="http://www.technorati.com/tag">linux</category>
      <category domain="http://www.technorati.com/tag">ruby</category>
    </item>
  </channel>
</rss>
