我已在目录上设置此 ACL:
root@<server_ip>:/srv/www# getfacl example.com/
# file: example.com/
# owner: web
# group: www-data
user::rwx
group::r-x
other::r-x
default:user::rwx
default:group::r-x
default:group:dev:rwx <--
default:mask::rwx
default:other::r-x
我想授予该dev
组所有访问权限 ( rwX
)
然后我想要touch
一个以组中用户身份登录的文件dev
:
luqo33@<server_ip>:/srv/www/example.com$ groups
dev
我收到权限被拒绝的消息:
luqo33@<server_ip>:/srv/www/example.com$ touch test
touch: cannot touch ‘test’: Permission denied
为什么会发生这种情况?我的ACL好像没有效果。
答案1
嗯,我可以用以下命令重现这个
setfacl -m default:group:foogrp:rwx foodir
但在这种情况下,我什至无法chdir
进入该目录(在应用 ACL 之前用户是否 chdir ?)。您需要使用默认组有什么原因吗?例如,类似以下事情之后会发生什么:
setfacl -k example.com
setfacl -m group:dev:rwx example.com
取消默认组并添加 ACL 以进行dev
组访问。