![공유 디렉터리에 대한 권한](https://linux55.com/image/126307/%EA%B3%B5%EC%9C%A0%20%EB%94%94%EB%A0%89%ED%84%B0%EB%A6%AC%EC%97%90%20%EB%8C%80%ED%95%9C%20%EA%B6%8C%ED%95%9C.png)
저는 리눅스 민트 18을 사용하고 있습니다. 여러 개의 공유 디렉터리가 있다고 가정합니다. 각 디렉터리는 특정 그룹에 속합니다. 그 중 하나가 foo인데 Pippo와 Pluto가 공유해야 하므로 foo 그룹을 만들고 Pippo와 Pluto를 추가했습니다. foo 및 해당 하위 디렉터리에서 생성된 모든 항목은 작성자가 Pippo인지 Pluto인지에 관계없이 Pippo 및 Pluto에서 액세스할 수 있어야 합니다. 문제는 새 파일이나 디렉터리가 생성될 때 foo 폴더와 그 하위 디렉터리의 그룹을 변경하고 foo 에 파일을 보냅니다.
foo 그룹에 새 콘텐츠를 추가하는 방법은 무엇입니까?
편집하다
foo 폴더 외부에서 Pippo 또는 Pluto가 생성한 모든 파일에는 각각 Pippo 및 Pluto로 설정된 그룹이 있어야 합니다.
답변1
(당신이 발견한) 기본 동작은 파일에 소유자와 동일한 UID 및 GID를 제공하는 것입니다. 이를 재정의하려면 다음을 설정해야 합니다.GID 비트 설정파일이 저장된 디렉토리에 있습니다. 이는 이미 존재하는 파일 및 디렉터리에 영향을 미치지 않으므로 아래 각 디렉터리에 대한 권한도 수정해야 합니다(@cas가 언급했듯이 foo
그룹 구성원이 서로의 작업을 수정하고 디렉터리를 볼 수 있도록 허용할 수 있습니다). )이므로 이러한 권한도 추가해야 합니다.)
이 문제를 해결하려면(디렉터리 구조를 이미 생성했다고 가정) 구조의 루트에서 다음 명령을 실행합니다.
find . -type d -exec chmod g=rwsX {} \;
chgrp -R foo *
find
나는 파일에 setuid/setgid 비트를 설정하는 것과 같은 디렉토리를 선택 하곤 했습니다.다른 의미를 가지고 있다. 물론, 새로운 디렉토리를 생성하고 싶다면 를 사용하지 않고 chmod
/ chgrp
명령어 만 실행하면 됩니다 find
.
편집: chmod
권한이 수정되었습니다.
답변2
cron 작업을 실행하여 콘텐츠 소유자를 foo 그룹으로 반복적으로 변경할 수 있습니다.