Linux의 기존 그룹에 사용자 추가

Linux의 기존 그룹에 사용자 추가

usermod 또는 groupmod를 사용하여 다른 기존 그룹에 사용자를 추가하는 데 차이가 있는지 궁금합니다. 예: Artists라는 보조 그룹이 있고 이 그룹에 Romeo를 추가하려고 합니다.

usermod -G artists romeo
groupmod -U romeo artists

저는 레드햇 9를 사용하고 있습니다.

답변1

man페이지 에서 groupmod:

The groupmod command modifies the definition of the specified GROUP
by modifying the appropriate entry in the group database.

옵션이 없습니다 -U(2022년 4월 18일자 Shadow-utils 4.6). 목적은 groupmod구성원의 특성이 아닌 그룹의 특성을 수정하는 것입니다.

man페이지 에서 usermod:

-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]
  A list of supplementary groups which the user is also a member of ...

  If the user is currently a member of a group which is not listed, the user
  will be removed from the group. This behaviour can be changed via the -a
  option, which appends the user to the current supplementary group list.

예를 들어 사용자가 romeo이미 그룹의 구성원 인 경우 paintworkers다음을 수행합니다.

usermod -G artists romeo

artists그는 의 구성원이 아닌 보충 그룹의 구성원일 뿐입니다 paintworkers. 그러나 다음을 사용하는 경우:

usermod -aG artists romeo

그는 두 그룹의 구성원이 될 것입니다.

고쳐 쓰다:

위에서 언급했듯이 이는 shadow-utils2022년 4월 18일 4.6에도 해당됩니다. 그러나 OP는 shadow-utils2021년 2월 12일 4.9가 현재 다음을 기록한다고 지적합니다 -U.

       -U, --users
           A list of usernames to add as members of the group.

따라서 대략적으로 usermod -aG또는 groupmod -U형식은 이후 버전에도 동일하게 적용되어야 합니다 shadow-utils.

답변2

...나무를 통해 숲을 본다

당신이 가리키는 모든 일은 결국에는 일어날 것입니다/etc/group

/etc/그룹 형식

<groupname>:x:gid:user1,user2,user_n

x = 비밀번호 필드는 거의 사용되지 않으며 /etc/passwd가 /etc/shadow를 참조하는 것처럼 /etc/gshadow를 참조합니다.

gid = 그룹 ID, 고유 그룹 ID. 규칙은 < 사용되지 않는 시스템 콘텐츠 100개, 관리 콘텐츠 1000개, 기타 콘텐츠 1000개입니다. 그러나 그것에 대해 내 말을 인용하지 마십시오.

그룹 이름에 대해 모든 사용자 계정을 쉼표로 구분하여 그룹에 추가하면 됩니다. 나는 사용자 계정이 속한 보조 그룹을 사용 usermod하거나 고려한 적이 없다고 생각합니다 . 정확히 무슨 일이 일어나고 있는지 확인하기 위해 직접 편집하는 것이 더 간단하고 빠르며 더 쉬운 것 같습니다.groupmod/etc/group

어쩌면 유일한 것은메인 그룹/etc/passwd특정 사용자 계정에 대해 각 계정의 4열에 있는 gid로 지정됩니다. 그러나 사용자 계정이 속한 모든 보조 그룹은 /etc/group누가 어떤 그룹의 구성원인지 지정합니다. 그러나 당신은 이러한 것들을 사용하거나 usermod단순히 groupmod변경하게 됩니다.

usermod -G주어진 사용자 계정 이름은 /etc/group에 지정된 그룹 이름 목록 끝에 추가됩니다. 새 그룹에 사용자를 추가하는 경우 /etc/group을 수동으로 편집하는 것이 더 쉽습니다. 그렇지 않으면 5개 이상의 그룹에 대해 동시에 이 명령을 실행하는 것이 /etc/group에서 수동으로 실행하는 것보다 약간 더 빠를 수 있습니다.

groupmod -U나는 이것이 유효한 옵션이라고 생각하지 않습니다(RHEL 7에서).

groupmod --help
Usage: groupmod [options] GROUP

Options:
  -g, --gid GID                 change the group ID to GID
  -h, --help                    display this help message and exit
  -n, --new-name NEW_GROUP      change the name to NEW_GROUP
  -o, --non-unique              allow to use a duplicate (non-unique) GID
  -p, --password PASSWORD       change the password to this (encrypted)
                            PASSWORD
  -R, --root CHROOT_DIR         directory to chroot into
  -P, --prefix PREFIX_DIR       prefix directory where are located the /etc/* files

관련 정보