![aclutils 설치](https://linux55.com/image/145356/aclutils%20%EC%84%A4%EC%B9%98.png)
라는 폴더를 만들었고 이 폴더 가 기본 폴더 안에 있기 때문에 /home/projects
이를 사용해야 합니다 .sudo mkdir /home/projects
처음에 폴더에는 다음과 같은 권한이 있습니다.
drwxr-xr-x 4 root root 4096 Dec 29 16:53 projects
그런 다음 두 명의 사용자를 추가했습니다.사용자 1그리고사용자 2그룹에개발자.
그런 다음 폴더 소유자를 다음으로 변경했습니다.사용자 1폴더의 소유자가 아닌 경우 변경 사항이 작동하지 않을 수 있다는 내용을 읽었기 때문입니다. 나는 다음을 사용하여 이 작업을 수행했습니다.
sudo chown -R user1 /home/projects
그런 다음 폴더의 소유권을 가진 그룹을 변경했습니다(또한사용자 1) 개발자에게 다음과 같이 전달합니다.
sudo chgrp -R developers /home/projects
출력은 ls -la
다음과 같습니다
drwxr-xr-x 4 user1 developers 4096 Dec 29 16:45 projects
두 사용자 모두 이 그룹의 일부입니다. 다음을 확인했습니다.
groups {username}
이 모든 것에도 불구하고,사용자 2여전히 폴더나 파일을 생성할 수 없습니다 /home/projects
. 사용자는 폴더에 들어가서 모든 내용을 볼 수 있지만 다른 내용은 볼 수 없습니다.
가장 이상한 점은사용자 2그는 Ubuntu가 갑자기 권한 거부 오류를 표시하기 시작하기 전 약 일주일 동안 파일과 폴더를 생성/업로드 및 삭제할 수 있었습니다 /home/projects
.
내가 설정하면사용자 2사용자는 폴더의 직접 소유자로서 모든 작업을 수행할 수 있지만 물론 다른 사용자는 수행할 수 없습니다.
여기서 무슨 일이 일어나고 있는 걸까요?
편집: Zeta 사용자는 그룹에 w
액세스 권한을 부여할 것을 제안했으며 이제 폴더는 다음과 같습니다.
drwxrwxr-x 4 user1 developers 4096 Dec 29 16:45 projects
권한이 거부되는 대신 다음 오류가 발생합니다.
mkdir /home/projects/New directory: received failure with description 'Failure'
운영 체제는 Gnu/Linux(Ubuntu 18.10)입니다.
답변1
공유 디렉터리가 최선의 접근 방식이라고 확신하는 한(Github과 같은 버전 제어가 많은 사용 사례에서 훨씬 우수함) 다음을 수행하고 싶을 것입니다.
- 사용자 1로서,
chmod g+ws /home/projects
그러면 디렉터리에 쓰기 권한이 부여되고 setgid 비트가 설정되어 디렉터리 내에 생성된 모든 파일과 디렉터리가 자동으로 올바른 그룹으로 이동됩니다.
- 두 명의 사용자로서
umask g+rwx
쉘 시작 파일에 추가하십시오. 이런 방식으로 한 사용자가 만든 파일은 기본적으로 그룹의 모든 구성원이 액세스하고 쓸 수 있습니다.
답변2
글을 쓸 그룹이 없어서 그 그룹이 글을 쓸 수 없습니다.
파일 액세스 제어 목록( setfact
/ getfacl
)도 참조하세요. 모든 새 파일/디렉터리가 개발자 그룹에 추가되도록 기본 그룹을 설정합니다.
aclutils 설치
Debian 또는 Ubuntu와 같은 파생 제품을 사용하는 경우 apt-get install acl
.