A Short History of Btrfs
diegocgteleline.es writes "Valerie Aurora, a Linux file system developer and ex-ZFS designer, has posted an article with great insight on how Btrfs, the file system that will replace Ext4, was created and how it works. Quoting: 'When it comes to file systems, it's hard to tell truth from rumor from vile slander: the code is so complex, the personalities are so exaggerated, and the users are so angry when they lose their data. You can't even settle things with a battle of the benchmarks: file system workloads vary so wildly that you can make a plausible argument for why any benchmark is either totally irrelevant or crucially important. ... we'll take a behind-the-scenes look at the design and development of Btrfs on many levels — technical, political, personal — and trace it from its origins at a workshop to its current position as Linus's root file system.'"
This looks like a promising filesystem - as ZFS on linux is, at present, doomed to die an ugly death, btrfs looks to address a lot of the shortcomings of other filesystems and bring a clean, modern fs to linux. It goes beyond ZFS in some areas too, such as being able to efficiently shrink a filesystem, and keeps a lot of the cool things that ZFS made popular, such as Copy-On-Write.
It looks like Btrfs also addresses some decisions that were made with the direction that ZFS would be going in, or how it would handle certain problems that now with hindsight behind the developers, they possibly would have done things differently.
Apple are really struggling with ZFS, with it being announced as a feature in early betas of both Leopard (10.5) and Snow Leopard (10.6), as well as being there in a very limited form in Tiger (10.4) - maybe development on Btrfs will leapfrog ZFS for consumer-grade hardware and Apple can finally look at deprecating HFS.
Specialist Mac support for creative pros, Melbourne
Is this ever going to replace ext4? The ext series of file systems are 'good enough' for most people, so unless it has some epic benchmarks I can't imagine a huge rush to reformat. Maybe that's what drives file system programmers insane. The knowledge that for the most part, it's going nowhere. FAT12 is still in use, for Christ's sake.
Will you also be enjoying your media in REAL PLAYER?
Is it Beta? The fact that Linus runs it as his root fs doesn't tell me much. Now, if you told me that's what he uses for ~/, I would be more impressed.
The important question to me is, how long 'til it gets in the major distributions?
Help! I'm a slashdot refugee.
There doesn't seem to be any hard and fast rules about anything in British english! ;-)
In Fowler's Modern English Usage, which is generally considered to be the bible of english usage by UK journalists and writers, there's an article called "Possessive Puzzles". In that, he says it was "formerly customary" to drop the last 's', but not any more.
If it was formerly customary in Fowler's day, i reckon it must be well and truly archaic now.
That argument isn't actually based on the technical merits, and thus doesn't make any sense..
Just because a Real OS features a Real FS backed up by a real company, doesn't necessarily mean the FS or OS are any good on technical merits compared to a REAL project licensed under a REAL free software license backed up by a REAL community and supported by a REAL foundation.
As if fsck wasn't bad enough to use in business talks, now I have to get prepared for btrfsck
Maybe someday you'll be a Real Boy
I wish the parent hadn't been modded down. He makes a point that should be addressed.
I've lost data on every file system that I've ever used, including NTFS, and the highly touted ReiserFS. Nothing guarantees the security of your data. The nearest you can come to data security, is to backup, backup, and backup again. Those people and organizations that keep regular backups seldom lose data. However, even those people can lose data in the event of a physical disaster (fire, flood, theft, being hit by a humongous meteorite) which is why off-site backups are important.
That said - IMHO, a journaling file system is an important first step to data security. NTFS and Ext3 are about equal, in my experience. Turning off caching features is an important second step. A power outage before data is written to disk, and/or while data is being written results in corruption in all current file systems. The important thing is, if data is mission critical, you want it written IMMEDIATELY, not floating around in RAM.
And, finally, you NEED redundant backups. Anyone who fails to make backups WILL LOSE data, eventually.
"Windows is like the faint smell of piss in a subway: it's there, and there's nothing you can do about it." - Charlie Br
Who cares? In a few years' time, this will be obsoleted by its successor, icantbelieveitsnotbtrfs.
Why would you use such shenigans? Simply make the filesystem mark deleted files as "hide from directory listing, and really delete only if you need the space". Then add a couple of syscalls to examine these "recyclable" files and restore them to normal status.
Now, there are a number of corner cases that need to be thought out - such as what happens if you delete a file/directory and then create a new one with the same name - but the principle is simple enough: don't really delete files, merely mark them as deletable/recyclable/harvestable/condemned/dying.
Forget magic. Any technology distinguishable from divine power is insufficiently advanced.
In spoken English, you generally pronounce the second 's' (unless you are a pedant of some sort), so it would stand to reason that the second 's' should remain. There is another motivation: the "'s" is actually a clitic that attaches to phrases (usually noun phrases) and is thus a separate word, not a part of the word it is attached to. As such, it should always be spelled out (as it is always pronounced).
No. I was alluding to GP's failure to make a good argument for supporting ZFS, using sound reasoning. I'm saying the truth of the premises doesn't imply the truth of the consequent.
ZFS on supported hardware is actually superior to ext4 on certain technical merits; primarily data integrity (checksumming), random write performance, and read performance (when massive amounts of RAM are available), and more advanced features (snapshots).
On the other hand, ext4 works on 32-bit processors (ZFS is only recommended to be used on 64-bit procs) with small amounts of RAM available, less than a GB; the minimum amount of RAM one should use ZFS with is 2gb, and 4gb or more is strongly recommended, above and beyond any RAM required by apps running on the machine.
But that has little to do with the OS being produced by a large corporation.
I undelete stuff all the time on Linux. you just open the trash and pull the stuff out. Once you empty the trash it is gone though. If you're using a command-line and 'rm' stuff though, that's entirely your fault for using such a low-level power-user interface for file management.
There are serious performance consequences and fragmentation consequences of supporting undelete at the filesystem level. But supporting snapshots is something high performance filesystems do, and snapshots are way more useful than undelete. Especially if snapshots are cheap enough to make them automated. Imagine having 24 revisions of your filesystem of the last 24 hours. This is done all the time on real Filers. I love it when my home directories at work are snapshot this way, makes it super easy to recover screwed up source code due to my inability to check in source before I make huge changes to it.
I think we should demand that Linux get snapshot support that is generally available (like default on RHEL,SuSE,Ubuntu,etc.) It's a feature that has been missing from Linux. While things like FreeBSD have had it standard for many years now.
“Common sense is not so common.” — Voltaire
Ahhh, but, it seems that you have assumed AC to be human. ;-)
"Windows is like the faint smell of piss in a subway: it's there, and there's nothing you can do about it." - Charlie Br
Wow. FUD flies fast and hard on slashdot. Zealots? Are you serious? Rather than mod your post as +1 Funny, I think I'll blow some karma and respond, just to set the record straight.
Laying aside misconceptions about the GPL, the main reason BtrFS is GPL is because it's part of the Linux kernel which is also GPL! How hard is it to grasp that? If Apple or anyone else wants to license Oracle's BtrFS code, they are welcome to negotiate and get the code under a different license than the GPL. It's that simple. BtrFS is an implementation of an idea, a specification. If Apple wants to write their own BtrFS driver, they are welcome to do that. Or Microsoft.
Why are developers who don't want their code to be ripped off (used without payment in a closed product) by companies and incorporated into a product are labeled zealots? How is this different than software companies requiring code to be licensed by third parties? So a company who creates some really cool technology that they license for a fee to others for use in products zealots? There really is no difference.
While I haven't written any software of note, I also use the GPLv2 (evaluating v3) since I want my software to be able to be freely used by those that want to use it, but if my code is that valuable to a company, I want to get paid for my trouble. If no one is willing to pay me, then that's fine. They are welcome to use my software without restriction, but if they redistribute it, to do so under the terms of the GPL. Guess that makes me a zealot.
Perhaps because they are writing software which is by FAR most useful when it is used as far and wide as possible, while using a license which makes that goal extremely difficult to achieve, unnecessarily.
Honestly, the only reason anyone cares about Btrfs is because the license on ZFS is too restrictive for inclusion in Linux, and NOBODY has opted to write their own implementation under a GPL or other, freer, license.
Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant