1

在 Solaris 10 update 10 (sparc, 147440-25) 中进行复制时,我遇到了一个奇怪的问题。

这是设置(以root身份完成):

# cd /tmp
# mkdir foo
# touch foo/thing1
# ln -s thing1 foo/thing2
# chown -hR joe:user foo

如果您查看目录和链接,一切都归用户“joe”所有。现在是有趣的部分:

# cp -rpP foo bar

此处 cp 的选项是递归、保留权限和所有权,以及对链接进行操作而不是跟随它们。但是当我这样做时,虽然使用正确的权限复制了链接,但目录本身 bar 设置为 root:root。这种行为有什么原因吗?

只有在目录中有链接时它才会这样做。如果目录仅包含文件,则保留所有所有权(我假设是因为 -P 永远不会发挥作用)。

4

1 回答 1

1

这确实是cp我在同一个 Solaris 版本上重现的奇怪行为。

不确定是否有适用于 Solaris 10 的补丁,但该问题已在 Solaris 11.1 中修复。

于 2013-08-06T17:49:57.913 回答