rsync 后目录上设置了奇怪的权限

rsync 后目录上设置了奇怪的权限

我在 Mac(OSX 10.7.5)上有一个驱动器,我正在 LAN 上共享它。在系统偏好设置中,共享设置为系统管理员具有读写权限,系统组具有只读权限,而每个人都具有只读权限。

共享文件夹中的文件是远程计算机上文件的镜像,这些文件使用 rsync 进行本地复制。远程计算机已设置权限,因此其他人无权访问,但我希望人们能够以 Guest 身份访问此本地共享,因此我所做的就是运行执行 rsync 的 shell 脚本,然后使用 chmod -R a+rX 和 chmod -R go-w。这基本上是可行的,只是在 rsync 运行时,共享上的目录会暂时显示为不可用(由于其源权限),然后在我执行 chmod 命令后再次变为可用。

因此,我向 rsync 命令添加了参数 --chmod=a+rX,og-w,u+w --perms,这时事情就变得奇怪了。

在我的 Mac 台式机上,当我查看 LAN 上的共享目录时,我可以看到所有文件,但看不到任何子目录。如果我打开终端窗口并 cd 到共享的根目录,它会显示所有子目录,但如果我尝试 cd 进入其中一个子目录,它会告诉我“没有这样的文件或目录”。

我以为这是一个简单的权限问题,但是从托管共享的机器上,如果我以管理员身份登录并使用 ls -ld 查看子目录,输出会显示 drwxr-xr-x admin,这看起来像我所期望的那样。

我阅读了有关 ACL 的资料,但 ls -d -le 显示的内容与 ls -ld 相同,这让我认为没有设置任何 ACL 权限。

我错过了什么?

相关内容