在 ZFS 文件系统上使用 cp -p 挂载 NFS 失败

在 ZFS 文件系统上使用 cp -p 挂载 NFS 失败

我正在尝试从 Ubuntu 计算机复制到通过 NFS 共享的 OmniOS ZFS 池。当我运行以下命令时,我得到:

cp: failed to preserve ownership for `./test.txt': Invalid argument

问题是文件复制得很好,但目标处的权限如下所示:

-rw-------   1 nobody nogroup   7 Mar  4 21:35 test.txt

然后我尝试:

chown root test.txt
chown: changing ownership of `test.txt': Invalid argument

我找到了这个线这很相似,但是他/她的错误更明确,是“操作不允许”错误,而我的是“参数无效”。

NFS 通过以下方式从 ZFS 服务器共享:

cat /etc/dfs/sharetab
/pool1/backup      -       nfs     sec=sys,[email protected],[email protected]

答案1

出现此问题的原因是我以 NFSv4 形式挂载,而版本 4 将 root 权限视为“nobody”。强制我的 NFS 客户端使用 NFS 版本 3 解决了我的问题。

nfs -t nfs -o nfsvers=3,proto=tcp server:/pool1/backup /backup

答案2

您还可以通过以下方式更改所有者组idmap

进入/etc/idmapd.conf

[Mapping]

Nobody-User = anyUserYouChoose
Nobody-Group = anyUserYouChoose

相关内容