我正在尝试从 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