쉘 스크립트를 사용하여 디렉토리를 생성하고 해당 디렉토리에 대해 "chmod g+s" 권한을 사용하고 있지만 재귀 권한이 실패합니다.

쉘 스크립트를 사용하여 디렉토리를 생성하고 해당 디렉토리에 대해 "chmod g+s" 권한을 사용하고 있지만 재귀 권한이 실패합니다.

쉘 스크립트에서 다음 권한을 가진 디렉토리를 생성 중입니다.

chmod -R 770 /user/mydir
chown -R user:mygroup /user/mydir
chown -R g+s /user/mydir

하지만새 디렉토리를 만들 때마다 /user/mydir권한을 얻습니다.drwxrwsr-x. 디렉토리의 경우 그 아래에 새 파일을 생성하면 파일에 대한 권한이 입니다 . 하지만 비용을 지불하고 있기 때문에 -rw-rw-r--그럴 것입니다 . 제가 뭘 잘못하고 있는지 잘 모르겠습니다. 해결하도록 도와주세요.-rwxrwx---chmod 770

답변1

디렉토리에 gid를 설정하면 모드가 아닌 그룹만 설정됩니다.

파일 액세스 제어 목록이 필요합니다. 바라보다Gnu/linux에서 파일 권한 등을 설정하는 다른 방법은 무엇입니까?

setfacl -R -m o:-,d:o:- «dir-name»

설명하다:

  • setfaclfacl(파일 액세스 제어 목록)을 설정하는 데 사용됩니다.
  • -R기존 하위 파일을 반복합니다.
  • -m목록 수정
  • o:-다른 항목을 모두 지우도록 설정
  • d:o:-모두 지우려면 다른 기본값을 설정하세요.

또한 sgid의 효과를 얻고 사용자가 항상 권한을 갖도록 보장할 수 있습니다(소유자가 누구인지에 관계 없음).

setfacl -R -d -m u:user:rwx,g:mygroup:rwx,o:- «dir-name»
setfacl -R    -m u:user:rwx,g:mygroup:rwx,o:- «dir-name»

관련 정보