One notable new feature is block cloning, which allows for the creation of shallow copies of files or parts of files. This facility is used to implement “reflinks” or “file-level copy-on-write”. Additionally, Linux container support has been added, including support for Linux-specific container interfaces such as
renameat(2), overlayfs, idmapped mounts in a user namespace, and namespace delegation support for containers.
Another important addition is the scrub error log, which allows
zpool status to report all affected filesystems, snapshots, and clones when a shared corrupt block is found. The
zpool scrub -e command can be used to perform a fast, targeted repair of known damaged blocks.
In terms of performance, this release introduces fully adaptive ARC, which allows the ARC to better adjust to highly dynamic workloads and minimizes the need for manual workload-dependent tuning. It also includes optimized SHA2 and Edon-R checksum implementations, as well as improvements in prefetching and general optimization.
For those interested in the technical details, the complete change log and module options are available in the OpenZFS documentation.
Overall, the release of version zfs-2.2.0 brings exciting new features and performance improvements to the OpenZFS/ZFS on Linux community. It is recommended for users who are looking to enhance their server, Linux, DevOps, and home lab environments.