나는 4명의 사용자(A, B, C, D)와 하나의 디렉토리(folder10)를 가지고 있습니다. A와 B에게 폴더 10에 대한 액세스 권한을 부여하고 싶습니다. 누군가가 이 폴더에 파일을 생성할 때마다 그 사람만이 파일을 수정할 수 있습니다. 소유자, 다른 사람은 읽을 수만 있습니다. 예를 들어, A가 파일을 생성하고 B가 파일을 열고 읽을 수는 있지만 수정할 수는 없습니다. B가 파일을 생성하는 경우에도 동일한 일이 발생합니다.
비슷한 문제가 몇 번 있었지만 상황은 다릅니다. 어떤 도움이라도 대단히 감사하겠습니다.
답변1
읽기 액세스만 가능한 그룹을 생성하여 이 문제를 해결할 수 있으며 Linux에서는 다음 명령을 사용하여 그룹을 할당할 수 있습니다.
usermod -a -G 그룹 사용자
답변2
파일이나 디렉터리가 생성될 때마다 권한이 할당되고 다음과 같이 나뉩니다.
OWNER:GROUP:OTHERS/WORLD
chmod
이러한 권한은 디렉토리나 파일의 액세스 기준을 수정하거나 를 사용하여 확장 ACL을 적용하기 위해 할당될 수 있습니다 setfacl
.
이제 요점은 B를 다른 사람으로 원하는지 아니면 그룹으로 원하는지입니다.
B를 다른 사람으로 대하는 것은 쉽게 할 수 있다
chmod <permission> <directory or filename>
<permission>
이를 부여/추가/제거하려는 권한과 <directory or filename>
(놀랍지도 않게) 액세스 권한을 부여하려는 디렉터리 또는 파일의 이름 으로 바꿀 수 있습니다 .
예를 들어 B가 속한 파일을 하나의 그룹만 읽도록 하려면 다음과 같이 그룹을 만드십시오.
groupadd groupname
B를 추가할 때 다음을 사용하여 B를 그룹의 일부로 만드세요.
useradd -n -g -groupname username
그러면 사용자가 생성되고 username
사용 groupname
됩니다.
setfacl -m g:<groupname>:<permission> <directoryname or filename>
이제 이를 기반으로 그룹 액세스에 읽기, 쓰기 또는 실행 권한을 허용할 수 있습니다.
해당 사용자에게만 권한을 부여하고 싶은 경우
setfacl -m u:<username>:<permission> <directoryname or filename>