我在挂载 zpool 时遇到问题。某些 zfs 无法挂载,因为“目录存在”,也就是存储子数据集的子文件夹。例如tank/media/movies
。它说存在/tank/media/movies
,所以挂载失败。因此,为了安全地删除所有这些目录,我想卸载所有 zfs 文件系统。
但是 zfs 没有递归卸载选项。所以我只打算运行一行代码。
zfs list -o name | grep -v NAME | awk '{print $1}' | xargs sudo zfs unmount
但是我得到了错误too many arguments
。我认为这是因为它将它们全部打印在一行上。因为当我做同样的事情时,而不是sudo zfs unmount
我echo
这样做,它会将它们全部打印在一行上。
如何卸载所有 zfs 文件系统?
答案1
改为使用zpool export
。它确保没有什么池中的当前正在被引用,为您想要运行的删除提供最大的安全性。