新版本 经过两年多的开发,OpenZFS 2.2 正式发布 在这个新版本中对 Linux 的支持改进, 比如与不同内核版本的兼容性,以及与Linux容器的兼容性,以及FreeBSD等等。
值得一提的是,这个新版本的OpenZFS 已在 Linux 内核 3.10 至 6.5 上进行了测试 以及从 12.2-RELEASE 开始的所有 FreeBSD 分支,此外值得一提的是,OpenZFS 已经在 FreeBSD 中使用,并包含在 Debian、Ubuntu、Gentoo、NixOS 和 ALT Linux 发行版中。
OpenZFS 2.2的主要新功能
OpenZFS 2.2 最重要的新功能之一是 块克隆机制, 让 创建文件或其一部分的副本而不复制数据, 在第二个副本中使用引用源文件中已存在的数据块,而无需实际复制它们。 如果对源文件或其副本进行更改,则会复制块并对创建的副本进行更改(文件级写时复制模式)。 基于克隆机制, 实现reflink操作,可用于自动创建克隆 在各种复制实用程序中,例如 Linux 上新版本的 /bin/cp 中。
此次发布的另一个新功能是l 增加了对 用于隔离的技术 Linux 中的容器,例如 renameat 系统调用、overlayfs 文件系统、在挂载中分配用户 ID 以及容器的命名空间委托。
除此之外,还需要注意的是 已实施检测到的错误日志 在校验和验证(擦除)操作期间。 当命令执行时zpool状态«,显示有关受损坏块影响的所有文件系统、快照和克隆的信息。 要尝试快速恢复已知的坏块,可以使用命令“zpool 擦洗 -e«。
除此之外,还可以使用 用于校验和的 BLAKE3 加密哈希函数,它以其非常高的哈希性能而脱颖而出(比 Edon-R 快三倍,并且比 sha256 和 sha512 快得多),同时确保 SHA-3 级别的可靠性。
OpenZFS 2.2的另一个亮点是自适应ARC缓存的改进实现,提高了读操作的性能。 在此版本中,ARC 现在可以更好地适应高负载,并最大限度地减少手动优化设置的需要。
已实施“zfs receive -c”操作,可用于恢复损坏的数据 (不是元数据)在文件系统、快照和克隆中,如果存在先前使用命令保存的复制备份zfs 发送«。
, 其他变化 OpenZFS 2.2 的突出之处:
- 添加了对以编程方式设置和读取虚拟磁盘属性的支持 虚拟设备 个人。
- 添加了将任意自定义属性绑定到的功能 vdev 和 zpool, 类似于 zfs 数据集的自定义属性。
- 添加了对用于计算 SHA2 校验和的硬件加速机制的支持。
- Edon-R 的校验和实现已被重写和优化。
当 zstd 算法用于数据压缩时,它可以加快确定压缩没有意义的情况(数据无法压缩)。 - 对预取机制进行了改进,以加快密集 I/O 期间的工作速度。
- 模块选项- 选择模块选项的默认值是为了为大多数工作负载和配置提供良好的性能。
- 引入了许多常规优化来提高性能。
最后是 您有兴趣了解更多信息,您可以查看详细信息 在下面的链接中。