Tuesday, June 10, 2008

The little Fujitsu just keeps on going. It's my favorite confuser to bring on work trips due to its small size. I access my corporate VPN easily using a java client, and it works seamlessly on both Damn Small Linux 4.2.5 and Puppy linux 4.0.

The machine is currently triple-booting Puppy, DSL and Wolvix, though Puppy is my everyday favorite. It's fast, easy to use and hassle free. DSL 4.2.5 is certainly more user friendly than earlier versions, but still lags behind Puppy (and it's half the size!) Wolvix is really nice, but definitely puts more strain on the modest hardware of the B2131. Wolvix also has some odd shortcomings, for example it lacks a graphical search tool and for the life of me I can't get the screen to lock.

In fact, I like B2131 so much, I decided to get a B2630 from eBay. Same form factor, more power and built in wifi. It didn't go quite according to plan - for some reason Fujitsu messed with the keyboard layout. Some keys were moved around, and the B2630 didn't have the Page-up and Page-down keys on the B2131. I really missed them. Add to that, the B2630 I got must have had some kind of hardware fault, as it would reboot randomly and with no warning. So, after some protracted wrangling with an unhappy seller, I was eventually able to return the B2630.

I've decided that for now the B2131 does everything I need while on the road. It doesn't have the power of a EeePC processor, but the screen is bigger. For everyday computing tasks like web browsing, accessing my corporate VPN, word processing and spreasheets - Puppy on the B2131 does everything I need.

Friday, August 31, 2007

Limitations of compact flash

So my reason for using a CF card instead of a hard drive was to reduce noise and power consumption. One of the current limitations of compact flash, is that it has limited write cycles - the exact number varies from brand to brand, but somewhere between a few hundred thousand and a million.

Most linux distributions use "swap" space on the hard drive as extra ram, in the event that there isn't enough physical ram for ongoing operations. The hard drive is slower at reading and writing than ram, so this isn't ideal but at least means the operating system doesn't freeze when it runs out of physical ram. However, if a CF card were to be used as swap, it would very quickly be ruined, due to the limited write cycles.

Hence why I chose DSL and Puppy in the first place. Or so I thought, until I noticed the hard drive light blinking away and discovered that Puppy had created a swap file on one of my partitions. There may be a boot option to turn that off, but in the meantime I've been using DSL exclusively.

DSL definitely is running 100% in ram and not using a swap file. Mostly it runs great - fast, stable. It is rather minimal, but learning to set things up using the command line or writing scripts has been educational. However, I've had recurring problems with DSL freezing - usually after some time running Opera or Firefox. It turns out this is what happens when you run out of memory. I've been writing to the DSL forum, but haven't found a way around this - yet.

Sunday, August 19, 2007

Don't keep your documents on the ramdisk!

I know I still need to explain how I got linux running on my laptop, but since I just lost several days' worth of work I thought I would throw out a warning!

DO NOT KEEP YOUR FILES ON A RAMDISK!!

I've been running DSL booted into ram, and it presents you with a nice cosy Home folder, just like I'm used to from Mac OSX. However, if for any reason the machine freezes, you'll loose everything. I guess this is fairly obvious, but it hadn't occurred to me until too late ;-) So, keep your files on a physical drive..

Friday, August 17, 2007

Choosing an operating system

Faced with somewhat modest hardware and limited storage space, I started looking for Linux distributions that were optimized to make the most of older hardware, limited storage etc. I've used Mandrake (now Mandriva), Red Hat, SuSe, Ubuntu, Yellowdog and Knoppix previously, but decided that none of them would be appropriate - they have all the bells and whistles and are great in their own ways, but would probably run quite slow on my machine.

So I read up on the following:
Vector linux
Zenwalk
Damn Small Linux (DSL)
Puppy Linux

Of these, it seemed that DSL and Puppy were most likely to do what I wanted right out of the box. Both optimized for slower hardware, both live cd distros and both can run in RAM with little or no tweaking.

Since the Lifebook has no CD or floppy drive (and is too old to boot from floppy), I decided that the easiest option would be to borrow my neighbor's desktop machine to do the install. I concentrated on Puppy to start with, since it has a Universal Installer script - which even includes an option for installing to "Compact Flash card in USB card reader, to be moved to CF/IDE adapter". I mean, it's like it was written just for me!!

Except.. the Puppy installer doesn't install the boot loader for you. It ends with something like: "if you use GRUB, you might like to include the following lines.." S'cuse me? Beginner friendly? So I ended up buying a 2.5" to 3.5" IDE adapter ($5) so I could install the CF card as hard drive in my friend's desktop and used DSL's "frugal install to hard drive" option - including setting up GRUB for you..

Even though the installer reported no errors, no matter what changes I made I couldn't make the laptop boot. Eventually, it turned out that my BIOS just wouldn't recognize the TwinMOS compact flash card. As a last ditch attempt before buying a hard disk, I purchased a cheap Toshiba CF card at my local OfficeMax. I made 3 partitions - 65MB for DSL, 150MB for Puppy, and the rest for data. This time the DSL install worked first time and booted the laptop no problem. I then installed Puppy, and edited the GRUB menu.lst file - and had a dual-booting laptop with DSL and Puppy.

Getting the hardware, and the thoughts behind the project

So my main motivation here: get a working machine that I can do any common office task on, as small and light as practically possible.

I was very tempted by the Toshiba Libretto 110CT, but after following a few auctions on eBay they seemed to have a cult following that was willing to pay prices out of all proportion to its performance. Also, I was unsure that the keyboard would be large enough to touch type on.

Eventually, I won an auction on a Fujitsu Lifebook B-2131 with no hard drive for only $65! It's old, as seen by the specs:
Processor: Intel Celeron 400MHz
RAM: 64 MB standard - I bought ram to max it out at 192 MB as soon as I won the auction.
1 CardBus/PCMCIA slot
Battery life (When new): 3 hours
Weight: 3 lbs

Another one of my criteria was that the machine should be quiet. I really don't like fans, but even the whirring of a hard drive is a bit annoying. So I decided to use a compact flash card in place of a hard drive - which has the additional benefit of being very robust (important in a machine I tote around a lot) and also drawing an order of magnitude less power than a hard drive.

I hunted around for a good deal on a compact flash card, and ended up getting a 4GB TwinMOS Ultra-X 140x card. I thought if it's replacing the hard drive I should aim for something reasonably fast.

The important thing to note about compact flash cards, to any who may be tempted to do something similar, is that they have a finite and relatively low number of write cycles. You can write to a CF card between 100,000 and 1,000,000 times (depends on card & manufacturer) but it will eventually fail. To extend the life of the card as much as possible, the best idea is to choose a linux distribution that can run completely in RAM - and whatever you do, don't set up a swap space on the card!