추가 그룹이 없는 사용자의 파일 권한

추가 그룹이 없는 사용자의 파일 권한

Rocky Linux 서버를 사용하여 다음 명령을 사용하여 사용자를 생성했습니다.

sudo adduser foobar

사용자는 foobar이제 그룹의 구성원이 됩니다 foobar. 우리는 다음을 통해 확인할 수 있습니다.

foobar$ id
uid=1111(foobar) gid=1111(foobar) groups=1111(foobar)

the uid와 the 는 gid동일하다는 점에 유의하세요.

이제 소유자 권한은 소유한 파일 및 디렉터리에 대한 foobar그룹 권한과 동일합니까 ?

다음 디렉토리의 경우,

drwxrwx---  1  foobar  foobar  my_dir

이상하게도 그룹 baz에 속하지 않은 사용자는 .foobarmy_dir

baz$ id
uid=2222(baz) gid=10000(group1),10001(group2)
baz$ touch my_dir/test  # (?)
baz$ ls my_dir
test

위의 (?) 줄: "기타" 비트가 꺼져 있을 때 어떻게 쓸 수 있습니까 baz?my_dir

답변1

Linux는 기본 파일 모드(rwxrwxrwx)를 지원하지만 ACL 목록도 지원합니다. 나의심하다baz가 쓸 수 있는 일부 ACL 목록을 설정했습니다.

getfacl my_dir 

상황을 보여줄 수 있습니다.

답변2

Unix의 사용자 및 그룹 권한은 우연히 이름이 동일하거나 숫자 ID가 동일하더라도 별개입니다.

adduser 명령은 100% 표준화되지 않았습니다. 일부 버전에서는 사용자와 함께 그룹을 생성하고 일부에서는 그렇지 않으며, 그렇지 않은 버전에서도 그룹 이름을 지정하여 사용자와 함께 그룹을 생성하라는 지시를 받을 수 있습니다. adduser의 일부 버전은 그룹 이름이 지정되지 않은 경우 사용자를 "users" 그룹이나 유사한 기본 그룹에 할당합니다.

게다가, groupid와 userid는 우연히 동일하며(아마도 다음 사용 가능한 연속 ID에 할당될 수 있음) 쉽게 동기화되지 않을 수 있습니다. (저는 이것이 짜증나고 때로는 고치려고 애쓰기도 합니다.)

또 다른 대답은 터치가 작동하는 이유에 대한 합리적인 설명을 제공합니다. 또 다른 가능성은 "테스트" 파일이 터치되기 전에 이미 존재했고 baz는 파일에 대한 쓰기 액세스 권한이 있지만 디렉터리에 대한 액세스 권한이 없거나 어떤 이유로 파일이 이미 존재하기 때문에 업데이트할 때 인쇄 오류가 없다는 것입니다. 시간.

관련 정보