특정 폴더에 새 파일과 폴더를 만들 때 상위 폴더의 그룹과 권한을 상속받고 싶습니다. 가능합니까?
예를 들어
mkdir -p example.com/public
cd example.com
sudo chgrp apache public
chmod 775 public
이제 새 폴더를 만들면
cd public
mkdir test
ls -al
drwxrwxr-x 3 foo bar 4096 Nov 3 16:19 public
이 디렉토리는 내 기본 그룹 test
에 속합니다 . 새 폴더가 이 그룹 에 속하도록 하고 싶습니다 .foo
bar
apache
파일에 대해 동일한 동작을 원합니다.
어떤 아이디어가 있나요?
답변1
SGID 비트를 설정하여 그룹을 상속할 수 있습니다.
chmod g+s /path/to/directory
권한을 상속하려면 ACL이 필요합니다.man 5 acl
디렉터리에 대한 기본 ACL을 설정해야 합니다.setfacl -d -m g::...
답변2
그룹 소유권을 상속받는 것은 쉽습니다. 그냥 설정GID 설정소량:
chmod g+s example.com/public
이제 디렉터리에 생성된 모든 항목에는 apache
그룹 소유자가 있어야 하며 디렉터리는 SETGID 비트를 상속합니다.
ACL을 사용하여 권한을 상속하는 것은 모든 시스템에서 가능하지 않으며 경우에 따라 성능에 영향을 미칠 수 있습니다. umask
ACL을 사용하는 대신 웹 서버의 새 파일/디렉터리에 대한 권한을 설정할 수 있습니다 .