완전히 공유되는 Unix 디렉토리를 만드는 방법은 무엇입니까?

완전히 공유되는 Unix 디렉토리를 만드는 방법은 무엇입니까?

내 시스템의 두 사용자 간에 디렉토리를 공유하고 싶습니다. 지금까지 내가 한 일은 다음과 같습니다.

사용자 "user1"과 "user2"가 있습니다. 나는 "ours"라는 그룹을 만들고 두 사용자를 모두 그룹에 추가했습니다. 또한 /ours 디렉토리를 생성하고 이를 "ours" 그룹으로 설정했습니다.

drwxrwsr-x user1 ours 4096 dec 13 2020 /ours

이제는 대부분 작동하지만 때때로 이 폴더에 파일을 만들 때 해당 파일이 "우리" 그룹의 소유가 되지 않습니다. 예를 들어 방금 해당 폴더에 PDF를 다운로드했는데 PDF 파일이 "ours" 그룹 대신 사용자 "user1" 및 그룹 "user1"로 설정되어 있는 것을 확인했습니다. Firefox 또는 Evince에서 효과적으로 생성되었습니다). 다른 사람이 실제로 파일에 액세스하기를 원할 때마다 해당 디렉토리에서 'chown -R'을 실행하여 모든 것을 우리 그룹이 소유하게 해야 하기 때문에 이는 짜증나는 일입니다.

우리가 사용하는 다양한 프로그램으로 생성된 파일이 항상 "우리" 그룹의 소유가 되도록 하려면 어떻게 해야 합니까? 나는 그룹의 '권한(setgid)이 이를 시행할 것이라고 생각했지만, 한동안 해당 디렉토리를 사용한 후에는 그렇지 않은 것을 보았습니다. 사용자 공간 프로그램이 그곳에서 생성한 파일을 chgrp-ing하고 있습니까?

그것이 가능하지 않다면, 완전히 원활한 "공유 디렉터리" 경험을 갖기 위해 정확히 무엇을 제안하시겠습니까?

감사해요.

답변1

setgid로 디렉토리를 설정하면 거기에서 생성된 파일이 그룹 소유가 되도록 강제해야 하지만, 그렇습니다. 일부 프로그램이 파일을 chgrp-ing할 가능성이 있습니다.

chgrp -R이 경우 디렉터리에서 주기적으로(예: 10분마다) 수행되는 크론 작업을 설정하는 것 외에는 다른 방법이 없습니다 .

관련 정보