在 Mac OS X 中,运行 'ls -al' 会给我这样的结果。
drwxrwxrwx+ 4 smcho 工作人员 136 May 5 09:18 Public drwxr-xr-x+ 6 smcho 员工 2010 年 2 月 1 日 204 站点 drwxrwxrwx 9 smcho 员工 306 2010 年 2 月 2 日备份 drwxr-xr-x@ 36 smcho 员工 1224 Sep 4 22:51 bin
在 Michael Mrozek 的回答之后,我运行了 'ls -ale' 以获得以下信息。
drwx------+ 66 smcho 工作人员 2244 八月 30 日 13:40 图书馆 0: group:com.apple.sharepoint.group.3 允许搜索 1: group:everyone 拒绝删除 drwxr-xr-x 3 smcho 工作人员 102 Sep 4 15:01 邮件 drwx------+ 13 smcho 工作人员 442 八月 28 日 17:55 电影 0: group:everyone 拒绝删除 drwx------+ 6 smcho 工作人员 204 Jul 9 09:37 音乐 0: group:everyone 拒绝删除 drwx------+ 11 smcho 员工 374 Aug 28 16:55 图片 0: group:everyone 拒绝删除 drwxr-xr-x 3 smcho 员工 102 Mar 18 15:43 项目 drwxrwxrwx+ 4 smcho 工作人员 136 May 5 09:18 Public 0: group:everyone 拒绝删除 drwxr-xr-x+ 6 smcho 员工 2010 年 2 月 1 日 204 站点 0: group:everyone 拒绝删除
那些附加的消息是什么意思?为什么我有一些文件?我不记得为他们做过什么特别的事。
Mic*_*zek 40
该@
后缀是唯一的Mac OS和被水覆盖着这个问题,所以我从那里抄我的答案,这部分; 这意味着该文件具有扩展属性。您可以使用xattr
命令行实用程序来查看和修改它们:
xattr --list filename
xattr --set propname propvalue filename
xattr --delete propname filename
Run Code Online (Sandbox Code Playgroud)
该+
后缀表示该文件有一个访问控制列表,并共同在任何* nix的支持ACL的。给予ls
该-e
标志将使其显示相关的ACL文件后,并chmod
可以用来修改即可。其中大部分来自chmod
手册页:
您可以使用 来添加 ACL chmod +a "type:name flag permission,..."
,然后使用 将其删除chmod -a
。的论点chmod
相当复杂:
user
或group
,以阐明name
是指用户名还是组名。如果name
是明确的,则可以省略类型allow
此 ACL 条目是否授予权限,或者deny
是否拒绝权限xattr
, 从上面)在您的特定示例中,大多数 ACL 条目都是group:everyone deny delete
. 即该everyone
组中的所有用户(自然是所有人)都没有删除文件夹的权限。我相信,虽然我找不到任何关于它的文档,但这些是阻止您删除基本根文件夹的默认 ACL——如果不是这种情况,有人会纠正这一点。唯一的其他条目是group:com.apple.sharepoint.group.3 allow search
,它允许目录服务按名称搜索文件/Library
夹中的文件