ext3 / ext4 on USB flash drive?

Mark Ballard
Thu, 29 Aug 2013 11:56:35 -0000

I think this is really an attempt at user feedback, rather than user
discussion. But there's no such thing as a user-feedback mail list.

Nevertheless, others may find this pertinent: why doesn't mke2fs
handle USB's competently? And if it does, why doesn't it reassure me
so? And how can I handle a linux-formatted USB flash drive in the
absence of my system giving me any guidance?

I cannot accept the usual advice you see in the forums: simply format
it FAT16 or whatever. I need it to use a linux file system.

But linux may have problems, apparently, with the device:
http://lwn.net/Articles/428584/

Plenty of people say in the forums that ext3 and ext4 will wear your
USB out quickly, effectively thrashing it with their journaling. But
the above-linked article suggests it may depend on the device. Some
people say ext4 is simply okay, some that it is actually advisable to
use it. I'm none the wiser.

If it is true that ext4 will thrash your USB then it could important
if it is also true that, for example, the life-expectancy of a USB can
really as low as 10,000 writes:
http://linux.koolsolutions.com/2009/01/29/installing-linux-on-usb-part-3-which-linux-filesystem-for-usb-devices/.
I spoke to Integral Memory, the manufacturer of my USB drive. Their
technical support line said their device had a life expectancy of 1000
writes, and came with a two-year warranty. He didn't know what he was
talking about.

None of Integral's publically available spec-sheets tell you anything
useful. They give an approximate write-speed and that's about it.
Nothing about block size, whether optimized for linear write or not,
what method of wear distribution they use - all the things you are led
to believe may be important in deciding whether you should format your
USB ext4 or not.

Of course, I shouldn't have to know about any of these things as a
user anyway. But I'm left with no choice but to lower myself into this
arcane realm and get in a tangle.

One of the things I'm led to believe I must consider when formatting a
USB drive is its physical block size. This appears to be something of
a mystery, but someone reckons he has worked out a simple method of
discerning it: http://kim.oyhus.no/FlashBlockSize.html. Using that
method, and assuming Kim G. S. ?yhus is correct, my drive seems to
have 4k block size. Now perhaps if I format my drive with a filesystem
that uses a 4k block size I might stop it being mashed by ext4.
Perhaps.

It does seem strange to me though that mke2fs doesn't already do this
for me: discerns what's going on underneath the casing of my USB,
adjust its formatting parameters accordingly - and tell me what its
doing so I can be reassured. Or that the help pages at least tell me
definitively whether and in what circumstances it can be used with USB
so I don't have to waste so much time trying to unravel the mystery by
going like a pinball from one contradictory, incomplete or
well-meaning nincompoop forum message to another; and so I don't mash
my USB, and lose my data, because I should have listened to the
pessimists and not put an ext4 filesystem on my USB. I actually don't
want to believe them. But they shout loudest.

mb.