The OpenZFS project, formerly called ZFS on Linux, has released version 2.0.0 with major new features. The previous release was version 0.86 in October. Both Linux and FreeBSD are supported.
ZFS is approaching 20 years old. It was developed in 2001 by Sun Microsystems, and open-source code was released with OpenSolaris in 2005. It was ported to FreeBSD in 2008, and in the same year the ZFS on Linux project started. In 2013 the OpenZFS project was announced. ZFS on Linux was an implementation of OpenZFS, but now that the project also targets FreeBSD from the same repository, it is called simply OpenZFS.
Oracle Solaris also still exists and includes Oracle ZFS, though the OpenZFS project notes: “As Oracle’s code is not open source, the OpenZFS wish to maintain compatibility with Solaris ZFS pool versions 29–35 is difficult to realize.”
OpenZFS is more than a file system since it also includes volume management, integrity checking, self-healing, built-in RAID, almost inconceivably large theoretical capacity (256 trillion yobibytes is claimed), transparent compression, native encryption, and storage and replication.
The version numbering is a tad confusing since it has skipped 1.x. It may have been felt that a 1.0 release would also have confused, given the long history of ZFS. The goal, according to a presentation by co-founder Matt Ahrens at the OpenZFS developer summit in October, is to have a major release annually. There is also a plan to support macOS in OpenZFS 3.0.
New features in version 2.0.0 include sequential resilvering – meaning rebuilding a failed mirror – which according to the release notes takes “a fraction of the time it would take a traditional healing resilver”.
There is also ZStandard compression, which performs dramatically better than what was used previously, gzip.
Zstandard compression performs much better gzip (squiggle on left) according to tests here
Other features include persisting the L2ARC data cache across reboots, saving warmup time; performance improvements such as faster ZFS send and receive, used to replicate data between ZFS pools, and the ability to send subsets of data; and improved bootloader support.
OpenZFS looks great, but there are potential Oracle licensing issues that have caused Linus Torvalds to refuse requests to merge ZFS into Linux “until I get an official letter from Oracle that is signed by their main legal counsel or preferably by Larry Ellison himself.”
Linux watcher Michael Larabel commented: “OpenZFS 2.0 is a hell of a release – it’s just too bad many Linux distributions and upstream kernel developers aren’t backing it due to license incompatibilities with the upstream kernel and Oracle having not taken action to improve that situation.”
That said, Canonical has offered ZFS as an option in Ubuntu since 19.10. In 2016, Dustin Kirkland, part of the company’s Ubuntu product and strategy team, said it had “conducted a legal review” and concluded that it is “acting within the rights granted”. ®
Rojenx is a leading concept artist who work appears in games and publications
Check out his personal gallery here