저는 특정 그룹(예: )의 일부 파일을 저장하기 위해 공유 폴더를 설정하려고 했습니다 /home/project
. 현재 나는 다음을 수행했습니다.
그룹이 생성되고 이를 "구성원"이라고 부르며 user1과 user2라는 두 명의 사용자가 추가됩니다.
이것을 실행하면 cat /etc/group
다음이 반환됩니다.
구성원:x:1005:사용자1,사용자2
이것은 적어도 맞는 것 같습니다. 그런 다음 솔직히 말해서 일부 인터넷 가이드에 따라 디렉토리를 만들고 권한을 추가했습니다.
mkdir /home/project
sudo chown -R root.members /home/project
sudo chmod 775 /home/project
sudo chmod 2775 /home/project
이 모든 것이 잘 진행되는 것 같지만 user2로 테스트 텍스트 파일을 만들면 user1이 할 수 있습니다.읽다파일이지만 쓰기 권한이 없습니다. 내가 뭘 잘못했나요?
답변1
때때로 우리는 기술적인 문제를 다룰 때 단순한 것을 생각합니다. 우리 모두 가끔 이런 일을 하지 않나요? 사용자가 로그아웃했다가 다시 로그인하면 그룹 구성원 자격을 얻게 됩니다.
답변2
문제는 폴더의 권한이 아니라 새로 생성된 개체의 권한입니다. 이러한 권한은 두 가지 메커니즘을 통해 결정됩니다.
- umask (항상)
- 기본 ACL(사용된 경우)
umask는 새 객체에 대해 차단되는 권한을 결정합니다. 기본값은 022
이 그룹과 다른 그룹에 대한 쓰기 권한을 차단하는 것입니다. 로그인할 때마다 이 값을 적절하게 설정해야 합니다.
umask 002
ACL을 사용하는 경우 새 객체에 대한 그룹 권한을 구성할 수 있습니다.
setfacl -m d:g::rwx /home/project