기본 그룹 소유권에 대한 ACL 재정의 문제

기본 그룹 소유권에 대한 ACL 재정의 문제

이전에 설정된 ACL 설정을 덮어쓸 수 없습니다.

다음과 같습니다.

root@ip-xxx-xxx:/srv/www# getfacl grace.staging.site.com.au/
# file: grace.staging.site.com.au/
# owner: web
# group: www-data
user::rwx
group::r-x
group:www-data:rwx
group:dev:rwx
mask::rwx
other::r-x
default:user::rwx
default:group::r-x
default:group:www-data:rwx <---------
default:mask::rwx
default:other::r-x

보시다시피 기본 그룹은 default:group:www-data:rwx- 이 설정은 반복적으로 적용됩니다. 그러나 새 파일이나 디렉터리를 만들 때마다 다음 항목에 귀속됩니다 luqo33:dev.

luqo33@ip-xxx-xxx:/srv/www/grace.staging.site.com.au$ touch test_file
luqo33@ip-xxx-xxx:/srv/www/grace.staging.site.com.au$ ls -al
total 20
drwxrwxr-x+ 3 web    www-data 4096 Jun 28 19:14 .
drwxr-xr-x  5 web    www-data 4096 Jun 28 18:33 ..
drwxrwxr-x+ 2 web    www-data 4096 Jun 28 18:33 logs
-rw-rw-r--+ 1 luqo33 dev         0 Jun 28 19:14 test_file <-------

모든 파일과 디렉터리를 에 속하게 해야 합니다 web:www-data. 그룹( www-data)에 기본 ACL이 있지만 아무런 효과가 없는 것 같습니다. 내가 무엇을 놓치고 있나요?

답변1

default이는 ACL 항목의 의미 가 아니라 항목의 의미입니다. 생성한 새 파일을 보면 이미 ACL( +ls 출력 끝에)이 있고 a 에 해당 파일과 연결되어 getfacl test_file있음이 표시됩니다 group:www-data:rwx.

새로 생성된 파일을소유하다이 시점에서 www-data디렉토리에 setgid 비트를 추가해야 합니다.

해당 플래그가 없으면 파일을 만들면 내 그룹에 포함됩니다.

$ ls -ld .
drwxr-xr-x 2 sweh www-data 4096 Jun 28 17:37 ./

$ touch x
$ ls -l x
-rw-r--r-- 1 sweh sweh 0 Jun 28 17:38 x

이제 디렉토리에 setgid 비트를 추가했으며 새 파일의 그룹 소유권은 기본적으로 www-data로 설정됩니다.

$ sudo chmod g+s .
$ ls -ld .
drwxr-sr-x 2 sweh www-data 4096 Jun 28 17:38 ./

$ touch y
$ ls -l y
-rw-r--r-- 1 sweh www-data 0 Jun 28 17:38 y

관련 정보