在移动networking中的某些文件时,我遇到了一个问题,似乎是由文件权限造成的。
目前我有这个权限drwxrwxrwx的文件夹。 我需要运行一个bash脚本,将权限更改为drwx — r-x +
ACL需要在那里。
我不太明白如何使用CHMOD命令获得相同的权限。 我已经尝试了迄今为止:
chmod -R ugo = rx“文件”
但是,这似乎改变为dr-xr-xr-x,这是不够的…
所以问题是,我应该运行哪个命令来实现drwx — r-x +?
提前致谢。
PS。 这个命令必须在MACOSX Maveriks中运行,所以“setfacl”命令不起作用。
drwx---r-x+
的权限分解如下:
d
是一个目录。 rwx
表示它的可读性,可写性和用户可访问性。 这三位可以用八进制数7
。 ---
表示前面提到的三位不是为分配给目录的组而设置的。 没有位被设置,所以八进制数是0
。 rx
表示没有与前两个类别(即其他人或“其他”)匹配的用户可以读取和访问目录的内容,但不能写入目录的内容。 这里的位是在第一列和第四列中,所以表示这个权限的八进制数是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