특정 디렉터리의 소유자에게만 파일 수정 권한 부여

특정 디렉터리의 소유자에게만 파일 수정 권한 부여

나는 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>

관련 정보