文件/目录权限尾随 + ( drwxr-xr-x+ ) [关闭]

Posted

技术标签:

【中文标题】文件/目录权限尾随 + ( drwxr-xr-x+ ) [关闭]【英文标题】:file/directory permissions trailing + ( drwxr-xr-x+ ) [closed] 【发布时间】:2017-12-22 23:28:29 【问题描述】:

我有一个具有奇怪权限的目录 ( drwxr-xr-x+ ) - 尾随 ( + ) 作为第 11 个字符,这似乎强制所有文件和子目录假定 rwxrwxrwx 权限,以下是权限。

drwxr-x---+  3 root root 4096 Dec 22 15:33 directory

我想去掉这个尾随 (+)。 我已经尝试过。

chmod 755 directory/
chmod a-x directory/
chmod u=rwx,g=rw,o=x directory/

我也尝试过:

sudo chmod u=rwx,g=rx,o-x,u-s,g-s    directory/

任何帮助将不胜感激。 谢谢 - 我卡住了。

【问题讨论】:

这意味着文件/目录有一个访问控制列表。见unix.stackexchange.com/questions/92071/… @jww 实际上这与编程有关(因为我正在编写 shell 脚本),正在创建的所有文件或子目录始终具有 777 权限。这给我带来了问题,我发现这个尾随(+)似乎是一个问题。但无论如何,我可能应该在 unix 交换中问它。非常感谢 @barmar 谢谢,我去看看。 这个问题需要在 Stack Exchange 网络上问多少次? What does the trailing “+” mean in file permission bits in Linux?、What is the “+” mark at the end of file description?、What does a + mean at the end of the permissions from ls -l?、+ or @ mark after running 'ls -al'、What does the dot mean at the end of -rw-r--r--?等 @jww 道歉,我试图搜索但找不到任何一个:) 【参考方案1】:

列出文件时的 + 表示对该文件的扩展权限。这些权限将使用访问控制列表进行设置。如果您运行“getfacl directory”,您将看到该目录的扩展权限。

根据访问控制列表的设置方式,删除,运行:

setfacl -x u:username directory

和/或

setfacl -x g:groupname directory 

要从列表中删除 +,您可能还需要运行:

setfacl -x m directory

【讨论】:

【参考方案2】:

结尾的+ 表示在目录上设置了ACL,访问控制列表。

您可以使用getfacl获取详细信息

getfacl directory

以下输出来自getfacl Codespace,其 ACL 由setfacl -m u:umesh:rw Codespace 设置。 这里setfacl 为用户umesh 授予rwCodespace 目录的权限。

# file: Codespace/
# owner: root
# group: root
user::rwx
user:umesh:rw-
group::r-x
mask::rwx
other::r-x

我们可以使用setfacl删除ACL,例如,对于上面的示例

setfacl -x u:umesh Codespace/

更多详情请访问man setfaclman getfacl

【讨论】:

投反对票的人,留下评论为什么投反对票,以便我们纠正。 getfaclsetfacl 是来自 acl 包的工具。用sudo apt-get install acl安装它【参考方案3】:

setfacl -b 目录

删除所有扩展 ACL 条目。保留所有者、组和其他人的基本 ACL 条目。

【讨论】:

以上是关于文件/目录权限尾随 + ( drwxr-xr-x+ ) [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

linux drwxr-xr-x 是什么意思

Linux中drwxr-xr-x.的意思和权限

关于linux的权限系统知识点(drwxr-xr-x)

Linux权限管理.md

chmod修改文件的权限/chown修改文件和目录的所有者(转)

解决Permission denied: user=root, access=WRITE, inode=“/“:root:supergroup:drwxr-xr-x问题