我在网络中移动某些文件时遇到问题,而且似乎是由文件权限引起的。
目前我拥有具有此权限的文件夹drwxrwxrwx。 我需要运行一个bash脚本来更改drwx --- r-x +
的权限ACL必须在那里。
我不太明白如何使用CHMOD命令获得相同的权限。到目前为止我已尝试过:
chmod -R ugo = rx“file”
但这似乎改为dr-xr-xr-x,这还不够......
所以问题是,我应该运行哪个命令来实现drwx --- r-x + ??
提前致谢。
PS。此命令必须在MACOSX Maveriks中运行,因此“setfacl”命令无效。
答案 0 :(得分:17)
权限drwx---r-x+
细分如下:
d
当然是一个目录。rwx
表示 u ser可读,可写且可访问。这三个位可以用八进制数7
表示。---
表示未为分配给目录的 g roup设置上述三个位。没有设置位,因此八进制数为0
。r-x
表示与前两个类别(即其他所有人)或“ o ”匹配的用户可以读取和访问目录,但不能写入它。这里的位在ones列和fours列中,因此表示此权限的八进制数为5
。+
表示存在与此目录关联的“扩展安全信息”,该信息未以标准ls
“长格式”显示。例如,访问控制列表。要设置此目录的基本权限,您可以使用八进制简写:
$ chmod 705 directoryname
或者您可以使用“符号”表示:
$ chmod u+rwx,g-rwx,o+rx-w directoryname
显然,速记是......更短。
对于+
表示的扩展安全信息,您需要找出设置的内容才能进行复制。 ls
命令具有-e
选项,可以显示扩展安全设置。
要从命令行实际设置您的ACL,您需要使用chmod'a =a
,-a
和+a
选项。有关此内容的文档可在man chmod
的OSX中找到。从该手册页:
Examples
# ls -le
-rw-r--r--+ 1 juser wheel 0 Apr 28 14:06 file1
owner: juser
1: admin allow delete
# chmod =a# 1 "admin allow write,chown"
# ls -le
-rw-r--r--+ 1 juser wheel 0 Apr 28 14:06 file1
owner: juser
1: admin allow write,chown