“支持 ZFS”实际上是什么意思?

“支持 ZFS”实际上是什么意思?

因此,在新的 Ubuntu 20.04(我拥有的)中,它被写在他们的博客页面

Ubuntu 20.04 LTS 附带了较新的 ZFS,它具有原生的硬件加密、设备移除、池修剪和改进的性能。虽然仍处于试验阶段,但我们通过添加 zsys 在该功能的基础上进行了改进。

我想理解这一点支持' 以及他们这样说的实际含义。

这样做之后df -T我得到了以下输出(我发布了前 2 个相关列):

Filesystem     Type    
udev           devtmpfs   
tmpfs          tmpfs      
/dev/sdb2      ext4     
tmpfs          tmpfs      
tmpfs          tmpfs      
tmpfs          tmpfs      
/dev/loop0     squashfs   
/dev/loop4     squashfs   
/dev/loop3     squashfs   
/dev/loop2     squashfs   
/dev/loop5     squashfs   
/dev/loop7     squashfs   
/dev/loop11    squashfs    
/dev/loop9     squashfs    
/dev/loop10    squashfs    
/dev/loop1     squashfs    
/dev/loop12    squashfs    
/dev/loop8     squashfs     
/dev/loop13    squashfs     
/dev/loop14    squashfs     
/dev/loop18    squashfs     
/dev/loop17    squashfs     
/dev/loop16    squashfs     
/dev/loop15    squashfs     
/dev/loop6     squashfs     
/dev/loop19    squashfs    
/dev/sda2      vfat         
tmpfs          tmpfs       
tmpfs          tmpfs
/dev/sdb1      fuseblk

所以我可以看到 ext4 而不是 zfs,然后我知道我们有 zfs 模块但没有加载,因为lsmod | grep zfs什么都没有给,所以我做了sudo modprobe zfs(现在我可以在执行时看到它lsmod)但在加载它时,zfs命令仍然无法识别,我发现在这个开始使用 ZFS Ubuntu 20.04文章说我必须使用 apt 来安装它。

另外,如果我尝试查找扩展模块,则不lsmod | grep ext4会有任何结果。
那么模块有什么用途呢?为什么整个模块尚未预安装?我是否遗漏了什么?


所以我明白了为什么以及在安装时在哪里配置 ZFS,但我不明白的是,假设您在安装时没有配置 ZFS,现在想要配置,那么首先您必须加载一些模块,然后安装 zfsutils。这是为什么?为什么它不像我们可以加载整个东西那样构建?

另外,目前我找不到 ext4 模块

答案1

每次安装 Ubuntu 时,根分区都/需要一些文件系统要创建。Ubuntu 19.10 之前的版本有以下选项:扩展文件系统文件系统捷豹路虎西弗斯等等。在所有可用选项中,扩展文件系统,准确地说,ext4是目前的首选*。
*有些博客说 Linux 可能会逐渐转向 btrfs。

Eoan Ermine 宣布支持 ZFS用于根文件系统。根据新功能 - Eoan Ermine/ReleaseNotes

根上的 ZFS

  • 在 19.10 中,添加了对 ZFS 作为根文件系统的支持作为一项实验性功能
  • 直接从安装程序自动创建 ZFS 文件系统和分区布局

Eoan Ermine 的 ZFS 版本为 0.8.1。使用 ZFS 作为根文件系统的选项是仅有的可从安装程序(即在安装 Ubuntu 时)获得。该用法是实验性的,因此是可选的。

Focal Fossa(20.04)引入了新版本的 ZFS,这是第一个具有 ZFS 的 LTS 版本支持用于根文件系统。从存储/文件系统 - Focal Fossa/ReleaseNotes

ZFS 0.8.3

Ubuntu Focal 延续了 Eoan 版本的功能,推出了 zfs 0.8.3。与之前的 LTS 版本相比,zfs 0.8 带来了许多新功能。亮点包括:

  • 本机加密(在Focal中启用硬件加速)
  • 设备移除
  • 泳池装饰
  • 顺序清理和重新镀银(性能)

虽然 Ubuntu 支持 ZFS,但是 Linus Torvalds不鼓励使用因为 Oracle 的许可问题。

看来你已经安装了 Ubuntu,/dev/sdb2其文件系统是 ext4 格式。sqashfs 是小循环设备中的 snap 程序使用的文件系统(参见gnome-disk-utility 中可见的小型 snap loop 设备,或者 snap ubuntu-core 的功能是什么)。因此,您在系统中没有找到任何与 ZFS 相关的内容。

尽管 Ubuntu 最初支持Eoan Ermine 发布后,根分区的 ZFS 成为支持其他分区自 Xenial Xerus (16.04) 起(参见Ubuntu 16.04 LTS(Xenial Xerus) - Ubuntu 版本历史 - 维基百科)。zfsutils-linux是一个为 ZFS 提供一些管理实用程序的软件包。如果您cat /proc/filesystems | grep zfs在未安装上述软件包的情况下运行,则输出将为空,这意味着 ZFS 的某些(如果不是全部)操作将不可用,并且可能无法按预期工作。

相似地,e2fsprogs提供扩展文件系统的管理实用程序。这包括 ext2、ext3 和 ext4。此软件包大多是预安装的,因为目前 ext4 是 Linux 系统广泛使用的文件系统。有关预安装软件包的信息,请参阅相应的清单文件。例如,这是 20.04 服务器镜像的清单文件


一些相关文章:

答案2

所以我明白了为什么以及在安装时在哪里配置 ZFS,但我不明白的是,假设您在安装时没有配置 ZFS,现在想要配置,那么首先您必须加载一些模块,然后安装 zfsutils。这是为什么?为什么它不像我们可以加载整个东西那样构建?

安装程序会根据您当前的配置卸载未使用的软件包。它不会默认安装大多数文件系统管理实用程序,因为大多数人不会进一步编辑分区,但会很容易地识别您使用的文件系统类型。

相关内容