Ubuntu cp -p 在挂载的 ZFS 池上

JT.*_*.WK 5 ubuntu zfs cp

在我的 Ubuntu 服务器上,我有几个自动挂载的 zfs 池。我遇到的问题是,当我尝试在保留权限的同时复制文件时,出现以下错误:

cp:保留对“blah.txt”的权限:不支持操作

尽管如此,该文件仍然重复,以及原始文件属性。

任何人都可以帮助阐明这个问题吗?

Ale*_*huk 6

解决方案:禁用 ACL 制造

这是因为额外的 ACL 权限

查看并投票:https ://superuser.com/questions/198758/what-does-the-mean-in-the-acl-output-of-ls-l

当您cp -p 具有额外 ACL(ls -l显示 +)的 NFS 挂载不支持额外权限的 /tmp 之类的内容时,您将获得“保留某些权限:不支持操作” 。

要解决此问题,您首先需要让 NFS 服务器停止向新文件添加额外权限。在 OpenSolaris 或 OpenIndiana ZFS 机器上,您可以这样做:

zfs get sharenfs myzpool1
zfs set sharenfs=XXX myzool1
Run Code Online (Sandbox Code Playgroud)

但不是 XXX 把你以前的东西加上“,noaclfab”(见man share_nfs

您还可以删除现有文件的这些额外 ACL:

apt-get install acl
setfacl -b test.sh
Run Code Online (Sandbox Code Playgroud)

递归地:

find . -exec setfacl -b {} \;
Run Code Online (Sandbox Code Playgroud)

要在客户端解决此问题,您可以更新 /etc/sysconfig/autofs 中的这些行:

APPEND_OPTIONS="yes"
OPTIONS="--global-options nosuid,noacl,vers=3,retry=5000”
Run Code Online (Sandbox Code Playgroud)

“noacl”关键字是相关部分,其他选项可能不需要解决此特定问题,但需要考虑。