带有 ZFS Rpool 的 Ubuntu 20.04 有数百个克隆文件系统

带有 ZFS Rpool 的 Ubuntu 20.04 有数百个克隆文件系统

我已经使用 ZFS 设置在我的服务器上安装了新的 Ubuntu 20.04。

一切运行良好,但我看到一些奇怪的事情。 zsys-gc并且zsys-commit服务因此错误而被标记为失败

 level=error msg="rpc error: code = DeadlineExceeded desc = context
 deadline exceeded"

我的磁盘使用空间不断增长,我有数百个快照和克隆的文件系统rpool。我知道zsys自动快照仍在开发中,我不太在意,因为我可以在需要时手动创建快照。问题是我无法删除所有这些快照,因为它们链接到克隆的文件系统,我真的不明白为什么 Ubuntu 不断创建新的克隆文件系统。所有这些文件系统都在文件系统下rpool/ROOT/ubuntu_093s22/var/lib 例如:

 rpool/ROOT/ubuntu_093s22/var/lib/001e8858fabddf7a79270efe28da048d73a67812a478bba5cbd866a64ebfa2f6
 rpool/ROOT/ubuntu_093s22/var/lib/001e8858fabddf7a79270efe28da048d73a67812a478bba5cbd866a64ebfa2f6-init

等等....

其中没有一个是自动取款机安装的。

销毁这种克隆的文件系统应该是安全的吗?

Ubuntu 在 var/lib 目录中创建了数百个子克隆文件系统但没有一个被挂载,这很正常吗?

答案1

这不是 ubuntu,但可能您已安装 docker,它会为您创建它们。您应该删除 zfs 集成(不确定默认情况下这会带来什么,他们的 wiki 页面并没有真正列出好处:https://docs.docker.com/storage/storagedriver/zfs-driver/)。几周后,对 repo 中默认 ubuntu docker 包的修复将创建 rpool/var/lib/docker,以便它们在那里创建为持久数据集。(rpool/var并且rpool/var/lib将具有 canmount=off)。

如果您从我的测试中删除容器docker rm(包括已停止的容器),它们将被删除。

请在 docker 本身上提交错误,以便用户可以调整,并且他们解释这会带来什么好处(也可以更改他们的默认分布以具有持久的 rpool/var/lib)。

更多信息https://github.com/ubuntu/zsys/issues/102

相关内容