如何让 ZFS 用户创建自己的数据集?

如何让 ZFS 用户创建自己的数据集?

我在虚拟机中运行 Ubuntu 22.04,并按照说明进行操作这里用于创建 ZFS 池。

但是,创建、挂载和卸载 zfs 数据集的命令似乎都需要 root 权限。我想创建一个特定的池,允许用户在其中创建和删除自己的数据集。

我已经读过我应该能够这样做来授予用户权限:

sudo zfs create new-pool/userspace # this works
sudo zfs allow $USER create,mount,unmount new-pool/userspace # this fails

我收到错误:

cannot set permissions on 'new-pool/userspace': operation not applicable to datasets of this type

最初 Linux 上的 ZFS(ZoL)不支持allow,但显然在 0.7.0 中已添加,所以我相信它应该可以工作。我该如何解决这个问题?

其他可能相关的信息:

$ zfs get type new-pool/userspace
NAME                PROPERTY  VALUE       SOURCE
new-pool/userspace  type      filesystem  -
$ zfs list
NAME                 USED  AVAIL     REFER  MOUNTPOINT
new-pool            6.44G  12.4G     6.44G  /new-pool
new-pool/userspace    24K  12.4G       24K  /new-pool/userspace
$ ls -ld /new-pool/userspace
drwxr-xr-x 2 root root 2 Nov  4 19:31 /new-pool/userspace

答案1

这是一个误导性的错误信息。问题在于这unmount不是一个有效的权限。create并且mount两者都有效。有一个未解决的问题可以改进错误信息这里

相关内容