답변:
chmod()
시스템 호출 및 확장하여 chmod
프로그램, 파일이나 디렉토리의 그룹에 영향을주지 않습니다 (또는 파일의 다른 유형 : 블록 특수 문자 특수, 소켓, ... 심볼릭 링크는 특별한 경우의 일이다). 따라서 권한이 부여 된 그룹은 파일 또는 디렉토리가 속한 그룹이됩니다.
그룹 rwx
권한 을 추가하려면 다음을 사용해야합니다.
chmod -R g+rwx DirectoryName
그러나 이렇게하면 모든 파일뿐만 아니라 모든 디렉토리에 권한이 추가되며 모든 파일이 실행 가능한 것은 아닙니다. 개인적으로 누군가 누군가 내 디렉토리의 모든 (또는 다른) 디렉토리에 그룹 쓰기 권한을 제공하면 매우 불행 할 것입니다. 그러나 그것은 또 다른 이야기입니다.
디렉토리에만 영향을 주려면 find
대신 사용하십시오.
find DirectoryName -type d -exec chmod g+rwx {} +
( +
표기법은 POSIX 2008이며, Linux가 지원하지만 모든 유닉스 시스템이이를 지원하지는 않습니다.)
chmod +X
BSD (Mac OS X)에서도 지원됩니다. POSIX에 대한 신중한 조사는 결국 POSIX 기능 chmod
임을 나타냅니다 . 파마 기호 X는 파일이 디렉토리이거나 현재 (수정되지 않은) 파일 모드 비트가 하나 이상인 경우 파일 모드 비트의 실행 / 검색 부분을 나타냅니다. 실행 비트 (S_IXUSR, S_IXGRP 또는 S_IXOTH) 세트 파일이 디렉토리가 아니고 현재 파일 모드 비트에 실행 비트가 설정되어 있지 않으면 무시됩니다. 아래의 이론적 근거를 주목하십시오. +X
ext 파일 시스템의 모든 파일 에는 다음이 있습니다.
파일에 rwx 그룹 권한을 설정하는 경우 해당 파일의 소유자 그룹 만 파일을 읽고 쓰거나 실행할 수 있습니다. 그러나 다음을 사용하여 사용자와 소유자를 변경할 수 있습니다.
chown username file1 file2 ...
chown -R username somedir
chgrp groupname file1 file2 ....
chgrp -R groupname somedir
chown username:groupname file1 file2 ...
Mac OS X에서는 확장 파일 시스템 권한, 즉 ACL (액세스 제어 목록)에 대해 여러 가지 구현이 있지만 Linux 전문가가 아니기 때문에 서버 결함 을 물어봐야 합니다.