[unix] 항상 동일한 UID와 GID 쌍이 있습니까?

을 사용하여 파일 / 디렉토리의 소유권을 변경해야합니다 chmod. 소유자의 사용자 이름 만 알고 있지만 기본 그룹 이름을 동시에 변경하고 싶습니다. 이 단계에서는 그룹 이름이 결정되지 않으므로 사용자 이름과 동일하게 입력합니다

chown -R username:username path_to_dir

명령은 다양한 시스템 / 사용자에 대해 실행될 수 있으므로 내 관심사는 Linux에 항상 username (user) : username (group) 쌍을 갖거나 어느 시점 에서이 기본 group_name이 오류를 줄 수 있다는 것입니다.

사용자가 속한 GID를 찾기 시작했지만

id username | tr '(=)' ':' | awk -F: '{print $3}

그러나 지식을 알고 싶습니다. /etc/passwd /etc/groups“종료, 중지, 동기화, opeartor”와 같은 소수의 사용자 를 제외하고 분석 할 때까지 모든 사용자가 그룹으로 나열했습니다.

편집 1 : id -gn username 또한 좋은 옵션입니다



답변

groupname = username이 존재할 것이라는 보장은 없습니다 .

가장 일반적인 시나리오는 Linux에서 시스템 관리자가 시스템에서 로컬로 새 사용자를 작성하는 것이 그룹에 대한 명시적인 스펙이없는 것입니다. 즉, 그룹은 기본적으로 사용자 이름과 동일하게 작성되고 사용자에게 새로 작성된 그룹의 기본 GID

이것은 다른 시스템 관리자가이 절차를 따를 것이라는 의미는 아니며 다른 이름 지정 서비스를 NIS 또는 LDAP와 같은 믹스에 넣을 경우 기본값으로 지정된 그룹은 사용자 이름과 동일한 그룹 이름을 가진 새 GID와 동일하지 않을 수 있습니다.

따라서 username = groupname이라는 사실에 의존해서는 안됩니다.


답변

하지만 사용자 개인 그룹 관용구는 종종 현대적인 리눅스 시스템에서 사용되는, * nix에서 스크립트는 실제로 각 사용자에 대해 고유 한 기본 그룹을 필요로하지 않으며, 같은 공통 기본 그룹을 공유하는 여러 사용자 계정에 대해 확실히 가능 usersstaff.

UPG 관용구가 시행되는 경우에도 특정 UPG의 숫자 GID가 소유자의 UID와 같아야하는 특별한 이유는 없지만 대부분의 계정 생성 도구는 UID와 GID를 순서대로 할당하려고 시도합니다. 유효한. 사용자 및 / 또는 그룹이 여러 시스템에서 일관성을 유지해야하는 경우 (예 : 기존 NFS 공유를 수용하기 위해) ID가 쉽게 벗어날 수 있습니다.


답변

Ramesh는 기본적으로 UID와 GID는 일반 사용자와 동일합니다. 그러나 이것이 항상 그런 것은 아니므 로 시스템에 혼란을 초래할 수있는 가정을해서는 안됩니다. 잘못된 그룹에 파일 / 폴더 권한을 할당하는 것은 다소 지저분하지 않습니까?

짧은 대답 : 아니요, UID가 항상 GID와 같지는 않습니다. 여전히 /etc/passwd동일한 줄에 기본 그룹의 UID와 GID가 모두 포함되어 있으므로 추출하기가 쉽습니다.


답변

에서 링크, 나는 아래의 정보를 참조하십시오.

UID (사용자 ID)는 Unix 계열 운영 체제에서 각 사용자에게 할당 한 고유 한 양의 정수입니다. 각 사용자는 UID로 시스템에 식별되며 사용자 이름은 일반적으로 사람을위한 인터페이스로만 사용됩니다.

UID는 해당 사용자 이름 및 기타 사용자 별 정보 /etc/passwd와 함께 파일에 저장되며 다음과 같이 cat 명령으로 읽을 수 있습니다.

cat /etc/passwd

세 번째 필드에는 UID가 포함되고 네 번째 필드에는 그룹 ID (GID)가 포함되며 기본적으로 모든 일반 사용자의 UID와 같습니다.

편집하다

그러나 @Karlson이 지적했듯이 UID가 기본적으로 GID와 동일하다는 것은 사실이 아닙니다.

이 명령문은 일반 그룹이 별도로 추가되지 않고 사용자 작성시 그룹이 명시 적으로 지정되지 않은 경우에만 적용됩니다 . 기본적으로 다음에 추가 된 사용자의 gid = max(gid) + 1. * NIX 시스템에 필요한 UID와 GID 간에는 상관 관계가 없으며 일부 경우에 일치합니다.

더 많은 참조

http://www.thegeekstuff.com/2009/06/useradd-adduser-newuser-how-to-create-linux-users


답변