file/directory 权限尾随 + ( drwxr-xr-x+ )

file/directory permissions trailing + ( drwxr-xr-x+ )

我有一个具有奇怪权限的目录 ( 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/

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

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

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

setfacl -x u:username directory

and/or

setfacl -x g:groupname directory 

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

setfacl -x m directory

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

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

getfacl directory

以下输出来自 getfacl Codespace,其 ACL 由 setfacl -m u:umesh:rw Codespace 设置。 这里 setfacl 为用户 umesh.

授予对 Codespace 目录的 rw 权限
# 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

setfacl -b directory

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