What’s The Fastest Linux Filesystem On Cheap Flash Media? What’s The Fastest Linux Filesystem On Cheap Flash Media?

David North, Tuesday, October 26, 2010 11:28:40 AM

Compact Flash and SD storage cards are everywhere; gigabytes for cheap in a tiny form factor. Most come formatted with VFAT. So what is the fastest Linux filesystem for these little devices?

Flash drives and SD Cards are getting bigger, faster and cheaper. They’re not just for sucking down snaps from your pocket camera any more: they’re backup storage, portable homedirs, netbook expansion … you name it.

Most arrive with a VFAT filesystem, and usually stay that way. But for a lot of applications, this is not ideal. Curious if the filesystem made any difference, we did what Feynman would have done: tested some.

For once, testing gave a pretty clear answer. So what is the fastest filesystem linux folks can use on their flash media?


Test Methodology

Well over 200 tests were run using eight computers running 12 operating systems. Ten flash units were used, some USB drives and others in one of five card readers. Small, medium and large workloads were tested. The results were consistently weird, but almost always favored Ext4.
Tests were run from hard disk to flash, from flash to flash, and to get as clean a result as possible, from ramdisk to flash and back. The variances were interesting, but usually not far from the numbers you’ve already seen. Your results will vary! So running your own tests is highly recommended.

To duplicate these tests, download the linux 2.6.34 beezyball and run “time rsync -rv from -> to && time sync && time umount flash”. Best to live on the edge and run as root.


GRUB 2 is the default boot loader and manager for Ubuntu 9.10 (Karmic Koala) and Ubuntu 10.04 onwards and many other operating systems. As the computer starts, GRUB 2 either presents a menu and awaits user input or automatically transfers control to an operating system kernel. GRUB 2 is a descendant of GRUB (GRand Unified Bootloader). It has been completely rewritten to provide the user significantly increased flexibility and performance. GRUB 2 is Free Software.

In this guide, GRUB 2 is version 1.98 or later. GRUB legacy (version 0.97) will be referred to as GRUB. To determine your version, use grub-install -v.

Note: When working with multiple GNU/Linux distributions on the same system be aware that other distributions (notably OpenSuse and Fedora) have not necessarily moved to Grub 2 yet which may complicate Grub 2 configuration.

Bug#595163: PATCH to make php-cgi work with thttpd

Bug#595163: PATCH to make php-cgi work with thttpd
php-cgi needs SCRIPT_FILENAME environement variable to be defined todetects it was invoqued as CGI script. It is not CGI compliant, but it

was writen like this. Here is a little patch which defines this

environment variable and take care of the TILDE_MAP_[12] preprocessor

definitions (in thttpd config.h), even if theses configuration variables

are undefined in Debian packages.

It also adds the index.php name to the index filename list to search for.

— thttpd-2.25b.orig/config.h