디렉토리의 모든 폴더 / 파일에 대한 기본 파일 권한을 설정하는 방법은 무엇입니까?


254

폴더 내에서 만든 모든 항목 (디렉토리, 파일)이 기본 권한 및 그룹을 상속하도록 폴더를 설정하고 싶습니다.

"미디어"그룹을 호출 할 수 있습니다. 또한 디렉토리 내에 생성 된 폴더 / 파일은 자동으로 g + rw를 가져야합니다.


1
사용자가 새 파일 / 폴더 및 그의 umask를 작성하여 제어하지 않습니까?
와디 M.

umask는 권한과 관련이 있지만 사용자 자신이 아닌 기본 그룹을 설정하여 아무것도하지 않는다고 생각합니다.
Chris

1
어떤 OS? 태그가 필요합니다. setfacl기본 ACL은 AIX에 존재하지 않습니다.
Amit Naidu

답변:


269

찾았습니다 : 기본 권한 적용

기사에서 :

chmod g+s <directory>  //set gid 
setfacl -d -m g::rwx /<directory>  //set group to rwx default 
setfacl -d -m o::rx /<directory>   //set other

다음으로 확인할 수 있습니다 :

getfacl /<directory>

산출:

# file: ../<directory>/
# owner: <user>
# group: media
# flags: -s-
user::rwx
group::rwx
other::r-x
default:user::rwx
default:group::rwx
default:other::r-x

5
끈적 끈적한 비트에 대한 예!
개브.

22
gid를 끈적 거리는 비트와 혼동하지 않습니다.
Amit Naidu

10
g + s는 디렉토리의 새로운 콘텐츠가 그룹 소유권을 상속 받도록합니다. setfacl은 chmod 만 변경합니다. 귀하의 경우 권한을 o = rx
Steen Schütt

10
파일 권한이 상속 되려면 ACL이 활성화되어 있어야합니다 (마운트 된 파일 시스템에 대한 마운트 옵션 중 하나로 포함됨).
sg23

11
대신 'X'를 사용하여 파일이 아닌 디렉토리에 대해서만 실행 권한을 설정하는 것이 좋습니다.setfacl -d -m g::rwX /<directory>
Adrian Gunawan

27

이것은 Chris의 답변에 추가 된 것으로, 내 아치 리눅스 장비에 대한 나의 경험을 기반으로합니다.

기본 스위치 (-d)와 수정 스위치 (-m)를 사용하면 기본 권한 만 수정되지만 기존 권한은 그대로 유지됩니다.

setfacl -d -m g::rwx /<directory>

기존 것을 포함하여 폴더의 전체 권한 구조를 변경하려면 추가 줄을 작성하고 재귀 적으로 만들어야합니다 -R :

setfacl -R -m g::rwx /<directory>

예.

setfacl -R -m g::rwx /home/limited.users/<directory> // gives group read,write,exec permissions for currently existing files and folders, recursively
setfacl -R -m o::x /home/limited.users/<directory> //revokes read and write permission for everyone else in existing folder and subfolders 
setfacl -R -d -m g::rwx /home/limited.users/<directory> // gives group rwx permissions by default, recursively
setfacl -R -d -m o::--- /home/limited.users/<directory> //revokes read, write and execute permissions for everyone else. 

( 권한 철회 모든 권한 행의 구문에 대한 주석에서 markdwite를 작성하는 CREDIT )


2
(예를 들어) 그룹 권한을 취소하려면 sudo는 setfacl 명령 -d -mg : --- / 경로
markdwhite

1
setfacl -R -m g::rwx /<directory>답에서 두 번만 오타 입니까?
Shane Rowatt

0

www-data 서버에 생성 된 파일로 작업 할 수 있도록 www-data 그룹에 본인 / 로그인 된 사용자 추가

sudo usermod -a -G www-data $USER

새로 추가 된 그룹을 적용하려면 다시 시작 / 재 로그인해야합니다.

cd /var/www

www-data를 html 폴더의 그룹 구성원으로, 사용자를 소유자로 추가하여 그룹 구성원뿐만 아니라이를 소유합니다.

sudo chown -R $USER:www-data html

USER 대신에 사용자 이름을 입력하십시오

필요에 따라 읽기, 쓰기, 실행 권한 설정, (ugo) u = user, g = group, o = others

sudo chmod 750 html

html의 GID를 설정하십시오. 이제 html로 새로 작성된 파일은 소유권을 상속받습니다.

sudo chmod g+s html

html 디렉토리 및 서브 디렉토리 내에 새로 작성된 파일 / 디렉토리에 대한 기본 규칙이 작성됩니다.

sudo setfacl -R -d -m u::rwX -m g::rX -m o::000 html

SELinux가 설치되어 있으면 작성하고 www-data 컨텍스트 요구 사항을 무시하여 쓰기 권한을 허용하십시오.

sudo setsebool -P httpd_unified 1

새 권한이 적용되는 디렉토리보기

ls -ld html

이것을 돌려줍니다

drwxrwsr-x+   3 html www-data

후행 +는 ACL (Access Control List)이 디렉토리에 설정되어 있음을 나타냅니다.

참조 : 포럼 링크


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.