이상한 문제가 있습니다. 일부 개발자가 폴더의 여러 파일에 대한 쓰기 권한을 가질 수 있도록 acl에 집중하려고 합니다.
여기에 샘플 폴더 구조가 있습니다. 거기에 settings.local.php 파일이 있습니다. chmod를 사용하여 000 권한을 부여한 다음 setfacl을 사용하여 rwX 권한을 부여했고 작동했습니다. getfacl에서 올바른 권한을 부여한 것처럼 작동했습니다. 하지만 소유자 권한은 영향을 받지 않으며 사용자는 실제로 파일을 저장할 수 없습니다. 실제로 이 예에서는 사용자가 파일을 읽을 수도 없습니다.
hostname:/srv/clientname/sites/local# chmod 000 *
hostname:/srv/clientname/sites/local# ls -la
total 64
dr-xrwxrwx+ 3 clientname www-data 4096 Jun 19 16:50 .
drwxrwxrwx+ 5 clientname www-data 4096 Jun 19 16:51 ..
----------+ 1 clientname www-data 775 Jun 19 16:50 settings.local.php
hostname:/srv/clientname/sites/local# groups clientname
clientname : www-data sftp ftp
hostname:/srv/clientname/sites/local# setfacl -m u:clientname:rwX *
hostname:/srv/clientname/sites/local# ls -la
dr-xrwxrwx+ 3 clientname www-data 4096 Jun 19 16:50 .
drwxrwxrwx+ 5 clientname www-data 4096 Jun 19 16:51 ..
----rw----+ 1 clientname www-data 775 Jun 19 16:50 settings.local.php
hostname:/srv/clientname/sites/local# getfacl settings.local.php
# file: settings.local.php
# owner: clientname
# group: www-data
user::---
user:www-data:rw-
user:clientname:rw-
group::r--
group:www-data:rw-
mask::rw-
other::---
내가 뭘 잘못했나요?
답변1
ACL은 일반 권한을 보완하지만 대체하지는 않습니다. clientname
파일의 소유자 로서 ,먼저 소유자 ACL을 적용합니다.. 그건
user::---
(소유자 권한과 일치) 액세스가 거부되었습니다.