Reliability of Journalling Filesystems Under Linux?
chrysrobyn asks: "Every write-up I see about journalling file systems under Linux discusses efficiency (embedded) or speed (desktop/server). Have any studies been done on reliability? I've used Linux since Slackware 96 (and kernel 2.0.0), and put it on 9 or 10 machines over the years (Slackware on x86 and Debian on PPC), but I've never strayed from ext2. Always, when the uptime gets high, 20-50 days, the filesystems start to get minor fsck errors. Not that I repair the system and expect it to stay live, I just use the fsck -n to help me decide when a repair is in order. Since the same thing has happened on a variety of hardware (386-PII and every interface in between and 601 and 750 processors with Apple hardware), I'm leaning on blaming the ext2 filesystem for these, the slightest of problems. I typically keep my servers up for as long as possible because 95% of my hardware problems have happened during resets and cold power-ups. It's time for my every-other-year rebuild of my personal server, with another on its way, so I was hoping to incite some anecdotal Slashdot conversation on the journalling file systems available for Linux. Personally, I'm most interested in hearing about the file systems supported under Debian stable for ease of administration for this machine which is a 5 hour drive away from home. I've been around the block a few times, so I'm not fearful of patching the kernel with better patches, but I'm respectful of the work the Debian assurance teams have done."
Let's have a close look at the costs involved when
running a Linux system.
An important factor in Linux' cost is its maintenance.
Linux requires a *lot* of maintenance, work doable only
by the relatively few high-paid Linux administrators that
put themselves - of course willingly - at a great place
in the market. Linux seems to be needing maintenance
continuously, to keep it from breaking down.
Add to this the cost of loss of data. Linux' native file
system, EXT2FS, is known to lose data like a firehose
spouts water when the file system isn't unmounted
properly. Other unix file systems are much more tolerant
towards unexpected crashes. An example is the FreeBSD
file system, which with soft updates enabled,
performance-wise blows EXT2FS out of the water, and
doesn't have the negative drawback of extreme data loss
in case of a system breakdown.
According to Linux advocates, an alternative to EXT2FS
would be ReiserFS. Unfortunately, ReiserFS is still in
beta stage. This means it is not intended for production
use (although according to many Linux advocates this
shouldn't be a problem, which makes me wonder how
(little) valuable they find your data).
The other proposed 'solution', EXT3FS, is nothing more
than an ugly hack to put journaling into the file system.
All the drawbacks of the ancient EXT2FS file system
remain in EXT3FS, for the sake of 'forward- and backward
compatibility'. This is interesting, considering that the
DOS heritage in the Windows 9x/ME series was considered a
very bad thing by the Linux community, even though it
provided what could be called one of the best examples of
compatibility, ever. When it's about Linux, compatibility
constraints don't seem to be that much of a problem for
Linux advocates.
Back to Linux' cost. Factor in also the fact that crashes
happen much more often on Linux than on other unices. On
other unices, crashes usually are caused by external
sources like power outages. Crashes in Linux are a
regular thing, and nobody seems to know what causes them,
internally. Linux advocates try to hide this fact by
denying crashes ever happen. Instead, they have frequent
"hardware problems".
The steep learning curve compared to about any other
operating system out there is a major factor in Linux'
cost. The system is a mix of features from all kinds of
unices, but not one of them is implemented right. A Linux
user has to live with badly coded tools which have low
performance, mangle data seemingly at random and are not
in line with their specification. On top of that a lot of
them spit out the most childish and unprofessional
messages, indicating that they were created by 14-year
olds with too much time, no talent and a bad attitude.
I could go on and on and on, but the conclusion is clear.
Linux is not an option for any one who seeks a
professional OS with high performance, scalability,
stability, adherence to standards, etc.