Hacker News new | past | comments | ask | show | jobs | submit login
Ubuntu installer now supports ZFS on the boot partition (launchpad.net)
24 points by doener on Oct 7, 2019 | hide | past | favorite | 17 comments

Is ZFS any good?

What's the current recommendation of file system?

ext4, btrfs, ZFS?

Is there one better suited for a laptop/desktop and a server?

Is one better for RAID? Is one better for speed? Is one better for resiliency?

> Is ZFS any good?

The presentation "ZFS: The Last Word in File Systems" from its debut in 2008 is a good introduction. Part 1 (of 3) probably best explains how different it is from just about anything else out there (even now, in 2019):

* https://www.youtube.com/watch?v=NRoUC9P1PmA

Part 2 show some extra niceties / features, and Part 3 is a demo and Q&A. Watching Part 1 at least is worth it for anyone curious; 2 and 3 are optional.

ZFS is 100% better for RAID and resiliency. If you care about your data, ZFS is the answer. Even if you only have a single disk with no redundancy, at the very least you'll know when your data is corrupted, so you can avoid polluting your backups with that corrupted data.

It's possibly better for performance, depending on use case. If you're dealing with easily compressible data, then you can enable compression, which can speed up your reads/writes since you're reading or writing less data. You shouldn't get a performance hit on non-compressible data, since it will adjust its compression when it gets non-compressible data.

How does it compare to BTRFS? It has many of the same features and is supported today in production (SUSE ships it today by default).

I really like ZFS, and it's definitely more robust than most other filesystems, but there are multiple solutions "if you care about your data".

btrfs still hasn't got working raid567 (raidz123 in zfs)

https://btrfs.wiki.kernel.org/index.php/RAID56 in the begining of 2019 this page had a big fat warning: The parity RAID code has '''multiple serious data-loss bugs''' in it. It should '''not''' be used for anything other than testing purposes.

Someone watered it down in march, but it still doesn't look much better.

Most DBAs working with async/directIO databases recommend XFS, https://www.scylladb.com/2016/02/09/qualifying-filesystems/

For the topic of directIO / O_DIRECT, this is specific to databases that do their own buffering, and thus one would have double-buffering: once at the DB app layer and again at the OS VFS layer.

Not all databases do buffering: Postgresql does not, and is generally built around an OS's normal I/O buffering.

2017 sub-thread on this topic:

* https://news.ycombinator.com/item?id=15722708

That seems like terrible advice considering it has no silent data corruption protection. You should treat your storage hardware as if it's trying to corrupt your data.

How does one tell if this commit had been included in the daily live builds? I just pulled both the server and desktop ISOs and zfs is not yet appearing as an option. Eager to give it a spin.

Maybe answering my own question. Commit shows a merge into version 19.10.14, while current daily shows Ubiquity at 19.10.13

    $ curl -s http://us.cdimage.ubuntu.com/ubuntu/daily-live/current/eoan-desktop-amd64.manifest | grep 'ubiquity\s'

    ubiquity 19.10.13

Can somebody ELI5 what this means? Faster boot times?

ZFS is a somewhat popular filesystem but it's not included in the mainline kernel because of licensing issues. Adding support in the Ubuntu installer just makes things simpler for people who want to install ubuntu to a ZFS filesystem.

If you don't know what ZFS is you're probably better sticking with the default (EXT4).

Good to know cheers!

ZFS supports snapshotting and rollback, meaning failed upgrades can be rolled back (by booting with another ZFS capable image).

ZFS supports send and receive, meaning a volume can be sent to another ZFS pool for backup.

Compression can save on disk space, and in some workloads be a performance benefit trading CPU cycles for IO savings, but this is probably more beneficial on data volumes compared to system volumes.

All of the above will be dependent on any limitations present in the options the installer provides, which apparently will be expanded in the forthcoming 20.04 release.

You've been able to boot Ubuntu from ZFS for a while now, it just required you to drop to a shell, create your pool and then manually install onto it.

Now that it's fully integrated into the installer, you'd have to have a really good reason not to use it. It's just so much better and battle tested than any of the alternatives.

Not really - it's mainly just notable due to the controversy regarding the license incompatibility of ZFS and the Linux kernel, and the fact that Ubuntu is shipping them together while others deem this a violation.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact