Compact Flash as a System Drive, Revisited

Last year, I wrote about the results of my experiments using Compact Flash (CF) cards with Linux, specifically where the cards are used as system drives. The really short version: CF write performance sucks abysmally, and you’re going to be disappointed if you try to use one as a system drive. Use a microdrive instead, and you’ll actually see better overall performance.

I’ve been using my Debian system (a 1.8GHz Mini-ITX box) with a pair of CF cards as the only internal storage for close to a year now – actually, a CF card and a microdrive – and I thought perhaps it’s time to revisit that decision.

In review, when i got my new Mini-ITX box, it proved to only have space inside for a single low-profile 44-pin EIDE 2.5″ hard drive. A laptop hard drive, in other words. Now, considering my previous machine had a pair of 7200RPM SCSI drives on a fairly nice RAID card, I was… not enamored of going with a single bare drive. Could I use an IDE->CF adapter, and run two CF cards with software RAID, I wondered.

Sure I could, I found.

Performance was just abysmal.

Eventually through much trial and error, I worked out the best way to squeeze performance out of the CF form factor under Linux, and everything was – and still is, for the most part – all happy, though I wound up giving up on RAID.

On my machine the / mount point is a 6GB Hitachi microdrive, formatted XFS, and /home and /usr are partitions on an 8GB, 133X Transcend CF card, formatted EXT3 and JFS, respectively. (Why three filesystems? I was testing performance, and it just kind of “stuck”.) After moving and symlinking /home/nemo/.mozilla to /nemo/.mozilla (moving the Firefox/Iceweasel cache from the CF card to the microdrive) as detailed in a previous post, I’ve had absolutely no complaints about the performance of my system. The microdrive offers excellent write performance, and decent read performance, and the CF card still sucks for writing to but has excellent read performance, so… best of both worlds, really.

If you do something similar on your computer, and are reasonably sensible about where you put files you’re working with, I suspect you’ll have no complaints whatsoever…

…so long as you never experience a power outage.

We had a brief power outage on Sunday, which caused my Debian system to go down for the first time in about five months. It came back up without difficulty, and everything was hunky-dory.


/home is a 2.1GB EXT3 partition on the compact flash card. Two gigs! That’s nothing, in this day and age! And EXT3! One of the most reliable and mature filesystems known to man!

Because compact flash cards suck so very, very badly, it took five hours for that 2.1GB partition to be FSCK’d.

Oy vey.

Sure CF cards are solid-state and cheap and have no moving parts and use very little electricity. Assuming the time required scaled linearly, though, a 16GB CF card could take almost two days to FSCK. In the future, I think I’ll just stick with microdrives, thanks. (And maybe buy another UPS.)

Published in: Geekiness, General | on June 2nd, 2010| Comments Off on Compact Flash as a System Drive, Revisited

Both comments and pings are currently closed.

Comments are closed.