New Linux file system in development: Tux3

Recently Daniel Phillips announced that he is developing a new file system, Tux3. It plans to be a modern file system on level with ZFS and the currently also still in development Btrfs.

While there are many file systems like ext3, Xfs, Jfs and others are available for Linux it currently lacks a modern, new age file system: especially features like versions and writable snapshots are hardly available. On the other hand, other Unixes do have such file systems: OpenSolaris and some BSDs have ZFS, and DragonFly BSD has HAMMER.

To fill this gap the Oracle’s Chris Manson started the development of Btrfs a year ago. Now Daniel Phillips also announced that he is developing a new file system, Tux3. The general aims are indeed close to the general aims of the other mentioned file systems.
Also, Daniel is not new to file system development. Years ago he announced Tux2 as an improvement to ext2 but without journaling. However, that file system never started off due to patent reasons.

The question is of course which file system will make the run: Tux3 is still at the beginning, while Btrfs could see a first beta in the next months. But there are still rumors that ZFS might be released under the GPL, and Hammer could also be implemented for Linux.
Either way, exciting times for file systems on Linux are ahead


40 thoughts on “New Linux file system in development: Tux3”

  1. Interesting news, but wouldn’t their time be better spent on implementing a native linux zfs?

    As I understand the license, they can’t use any code, but are not prohibited from implementing a clone. I dont think the kernel needs more diversity with regards to filesystems, it needs less, and it needs zfs.

  2. Andreas, as I understand the rumors and Kit-Kat bar metaphors, ZFS might be made available for Linux.

    So whether or not its going to happen, it certainly kills any incentive to re-implement ZFS.

  3. Andreas, the main problem is not the license, but patents. Sun has quite some patents regarding ZFS, and that’s makes it problematic.

    Pau, interesting, didn’t knew that.

  4. Christoph Hellwig offered to mentor people who want to add ZFS support to Linux. I think read support is targeted for that.

    Otherwise, KDE will shortly run fine on Solaris and BSD, so if you want KDE with ZFS, that’s possible 🙂

  5. Well, we have several Solaris 10 (properly patched) systems here running ZFS, and we already got 3 massive file system corruption, due to known bugs of ZFS in Solaris x64 for which Sun doesn’t have an official patch yet.
    For a file system that should not have any possible corruption, it’s a bit sad.
    On top of that, ZFS acts partly as a volume manager, partly as a file system, and thus it reacts often in a very weird (understand buggy) way with tools not designed specifically for it, and this is a real pain for standardized datacenters.
    Just to say that I can live very well without ZFS and that in practice, I have not seen this file system bringing that much compared to others yet in the practical sense.
    I would really much prefer a file system implementing ZFS-like data protection semantics, but leaving out the volume manager aspect.

  6. It’s very interesting to hear about bugs in zfs, all i’ve heard to date is that due to zfs bugs in both hardware and software has been found.

    Is there a public bug report for this bug? Does this bug only occur in solaris 10 or is also present in opensolaris? If it is i should be able to ‘run into’ the bug.

    I’ve always like that zfs has integrated volume management 😉 Although i must admit that there are some limits in zfs which are a bit annoying, for example one can’t extend a raid-z array with additional drives. What happens is that a new raid-z array is created and then added to the storage pool…

    Well, I’m looking forward to kde4(.1), which hopefully will be released in gentoo soon. But i wont switch away from gentoo just to be able to run KDE4, so i’m stuck with linux atm.

    Regarding the patents that SUN have, don’t they concern apple and the various BSDs legal councils?

    I guess that basicly i want the family of unix and unix-like OSes to get along nicely, and one big step would be to center on one filesystem…

  7. Richard, interesting – I haven’t had the chance to test the file system on my own, let alone test it in real world setups so first hand experiences are very interesting.
    I also heard the complains about the VM feature of ZFS – although I must admit that I heard it in relation to the LVM which was described as pretty bad than.

    Andreas, regarding the license issue I guess the BSDs don’t care – and Apple could pay money if they want to.
    And I also want to get all unixes and in fact all OSes to get along nicely – however, with MS’s – and to a certain point, Apple’s – attitude that’s hardly possible. :/

  8. As for me, I think that ext4 should be the linux file system once it is completely developed and rolled out.

    The only other alternative I see is ZFS, which I tried several times just for test purpose for my big music collection and video collection, and in both cases it works really good. it still needs further tunning under linux.

    For the time being I am back with ext3 with journaling, from previously used ReiserFS.

  9. E@zyVG, I had some very bad experiences with ext3 once so I use Xfs and Jfs usually, and do pretty much like Xfs. However, I do hope for Btrfs to have some really nice features 🙂

  10. stelt, an advanced file system has little to do with Apple’s Time Machine. ATM is more comparable to tools like rsnapshot or rdiff-backup, which are working pretty nice on Linux for years now 😉
    But they lack, of course, cute graphics…

  11. Useless.

    Here’s an idea: Why not focus on some of the areas that are currently lacking in Linux instead of spreading the finite amount of time and development effort reinventing the wheel? Do most users really care about the filesystem?

  12. @Dave’s Not Here: That is EXACTLY the case. I don’t care unless I’m missing features. The only way I can tell if I’m running HFS or HFS+ on my Mac is to check the info on the drive because both filing systems have the same capabilities, except for journaling. The only way I can tell if I’m running FAT32 or NTFS on a Windows machine is if I’m missing user-specific permissions. I don’t know what filing system I’m running on Kubuntu 8.04 at home, though I believe it’s EXT3. I just don’t care as long as it works.

  13. The difference between HFS and HFS+ is not journalling.

    Journalling is a add-on feature for HFS+ using BSD-VFS and is actually not very good at all. It’s slow and uses a lot of resources.

    > The only way I can tell if I’m running FAT32 or NTFS on a Windows machine is if I’m missing user-specific permissions.

    Well that and the fact that Fat32 will gradually corrupt your files and file systems as time goes by and the system crashes, or power goes out, or other system errors build up.

    And the fact that you can’t have large files on Fat32.

    Ever noticed how when you have files you haven’t touched for a long long time have started being a bit ‘funny’? Old videos with errors in them, or folders with large amounts of images and a couple images suddenly are broken?

    Lesson here is: Use NTFS if your using Windows.

    > I just don’t care as long as it works.

    Well then your not the target here. Thing is that people who use Linux in enterprise situations are not using it as desktops or whatnot. They are using for network infrastructure, database backends, web services, and mission critical or whatnot.

    Linux developers want them to use Linux for data warehousing, but the file system options for Linux on very large volumes is pretty limited. That is one of the major reasons why people can’t just start replacing their aging and very expensive SANs with Linux systems crammed full of disks any time soon.

    With Linux running Ext3 it can take _days_ to run a file system repair (fsck) on a multi-TB array.

    That’s why Oracle is making BTRFS and why Sun has created ZFS. It’s why we have BSD DragonFly’s HAMMER, and why Tux3 is being created.

  14. I wouldn’t put much stock in the HAMMER FS being ported to linux. Its pretty tightly integrated with BSD and especially DragonflyBSD’s internal structures, some of which Linux doesn’t really have a notion of.

    ZFS could be interesting but Btrfs and Tux3 I think are better options in the long run. Things that are built for the original platform tend to do better in the long run in my experience…

  15. I always find it a tad shocking that some people think they can dictate other peoples time.

    Take “Dave’s not here”s comment:

    “Here’s an idea: Why not focus on some of the areas that are currently lacking in Linux instead of spreading the finite amount of time and development effort reinventing the wheel? Do most users really care about the filesystem?”

    Maybe /you/ think there are other areas that deserves more attention. Maybe the developer(s?) in question feel that this is what needs more attention. Since it’s their time – they decide. They’re not hired to do your work.

    Come to think of it, not everything is about the end-users, as in the desktop users. A next-generation filesystem is of *most* use in the datacenters. Since I actually work in .. oh, datacenters, I find that I really like the focus on this.

    Other people howl that the time should be spent on bringing ZFS to linux. Sure, ZFS is nice, but it’s not necessarily what the coder in question thinks is needed. Or maybe it’s due to patent encumberance. Or maybe it’s due to a general dislike of the architecture of that FS. I don’t know – but I certainly won’t try to tell this developer how he should spend his time.

  16. Improvement in filesystems may not be of much interest to simple desktop users but to someone who runs systems with many servers filesystems are critical.
    When vital data is stored in tens or hundreds of gigabyte files recovery on the existing linux filesystems can be painfully slow.

    Even ZFS is only a stepping stone to even better systems.

  17. Dave’s Not Here, Aaron: It might come as a shock to you, but there are actually people out there using a computer for other tasks than you do. If you don’t care about your file system you are certainly never managed servers or have ever dealt with larger computer network setups. But others have to do that all day – and they need modern file systems.
    Additionally, backups would b *much* easier and reliable with a new file system. And while the user would not be aware of the file system he would be aware of the faster, more reliable backup.

    But to “discuss” more closely to the stupid level you two guys are used to: the developers already did improve the user/desktop situation a lot – look at the latest post about the kernel! So now they are just taking some time off, and will soon be back at your will, I’m sure 😉

  18. Running a fsck on an 8 terabyte ext3 filesystem takes me about 4 hours – far too long. Being able to change the settings on the filesystem requires an fsck – very annoying. We need something *much* better.

  19. Of course developers are free to devote their time to whatever they choose. In the case of tux3 and btrfs i find that they both aim to develop filesystems very similar to zfs, which makes me worry about the developers time. If someone has a list with incompatabilities in the specs of btrfs/tux3 vs zfs please enlighten me.

    About the patents that sun hold, if SUN were to sign a document stating that no lawsuit would be be filed on the basis of those patents, would that be enough to ‘open the dam’ of native zfs development?

  20. Andreas, of the more important points is that ZFS is patent covered – and therefore cannot be implemented on Linux. Also, the licence currently forbids it to simply port it to Linux.
    Additionally, as another reader pointed out, file systems can be very much developed for a specific operating system. Chris (the Btrfs developer) also pointed out that Btrfs is not really developed with ZFS in mind, but more with other Linux operating systems in mind. If there will be ever a ZFS version, than maybe Btrfs would merge with it or something – but currently that is unlikely.

  21. I don’t think ZFS will become the new standard fs in Linux. As you say ZFS is not Linux oriented. I like Btrfs much better, I’m really looking forward to a stable version in major Linux distributions 🙂
    Too bad Tux3 is still in this very early phase. So we have to wait for first comparisons between the two 😦

    Hammer sounds nice, too, but I haven’t read much about it yet.

    Wanting to play around a bit with file systems… is there a good tutorial on how to start understanding (and maybe coding) fs drivers? I remember some article about coding network drivers posted in magazine “c`t” I believe, but I do not think I kept it.

    Btw: liquidat, I think I’m experiencing a form of small-world-syndrome, everytime I use google I find blogs of people I know… should this tell me something?

  22. Its true a modern FS would be a good thing for Linux… so why do we need so man people working on so many different ones?

    Surely Daniel could offer his development time to improve BTRFS, Ext4 or ZFS – time that would be immediately more productive. Go on Daniel, surprise us all and help an existing project instead of making your own!

  23. Johannes, the small world could be due to cookies by google or similar to track your interests and also the pages you keep watching/reading – so clear that space, lock out of google, and check again. On the other hand – if you are specialized enough the number of people dealing with the same problem quickly shrinks to only 2 or 3 😉
    Anyway, about the file system driver thing: I don’t know where you can get information, but a good start should be this IBM tutorial about the Linux file system anatomy.
    Also, check out this tutorial related to netfs.

    Andy, currently there is one big project, Btrfs, and one new one, Tux3 – and both are coming from different perspectives and try to reach the goal from different angles. Two file systems is not the worst problem in the world.
    As already mentioned, helping Hammer or ZFS is most likely not really helpful, and ext4 is part of the old file systems.

    So Daniel has quite some good reasons to work at his own project, only few reasons to join Btrfs – and in the end it wouldn’t surprise me if both projects would closely work together.

  24. Well, actually this time I found your site through the search function on digg, so not using google does not really help…

    Anyway, thanks for the links, I will check them out when I have enough free time 😉

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s