다음과 같은 기본 그룹과 보조 그룹이 있는 사용자가 있습니다.
[ testuser Welcome ~ ]$ id
uid=2000(testuser) gid=2000(testuser) groups=2000(testuser),27(sudo),2001(testgroup)
기본 그룹은 이고 testuser
, 보조 그룹은 입니다 testgroup
.
이제 다음 명령을 사용하여 이 사용자에게 다른 보조 그룹 testgroup2를 추가하려고 합니다.
usermod -G testgroup2 testuser
단, 이전 보조그룹( testgroup
)을 삭제하고 새로운 보조그룹을 추가합니다. 내 필요는 이전 보조 그룹을 삭제하지 말고 새 보조 그룹을 추가해야 한다는 것입니다.
-a
우분투에서 다른 그룹을 제거하지 않고 사용자에게 그룹을 연결하는 옵션이 있다는 것을 보았습니다 .
수세리눅스에서도 가능한지 알려주세요...?
감사해요!
답변1
SLES11 SP3에서 usermod
pwdutils 3.2.15의 명령은 -A
원하는 작업을 수행하는 옵션을 지원합니다.
-A, --add-to-group group,...
With this option a list of groups can be specified, which the user should
become a member of. Each group is separated from the next one only by a comma,
without whitespace.
SLES12 및 OpenSUSE 13.1에서 usermod
명령(더 널리 사용되는 Shadow-utils 4.1.5.1의 명령)은 다음 -a
과 함께 옵션을 지원합니다 -G
.
-a, --append
Add the user to the supplemental group(s). Use only with -G option.
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]
A list of supplementary groups which the user is also a member of. Each group
is separated from the next by a comma, with no intervening whitespace.
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.
답변2
추가할 수 없는 경우 usermod
(할 수 없더라도 -A
) 현재 그룹 세트를 추가해 보세요.
usermod -G "$(groups testuser | sed 's/.*: //;s/ /,/g'),testgroup2" testuser
답변3
이 명령을 사용하면 이전 그룹을 대체하는 모든 그룹의 목록을 지정할 수 있습니다.
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]
A list of supplementary groups which the user is also a member of. Each group is separated from the next by a comma, with no intervening whitespace. The groups are subject to the same restrictions as the group given with the -g option.
대신 다음을 사용하십시오 adduser
.
adduser [options] user group
adduser
사용자를 추가하거나 그룹에 사용자를 추가하는 데 사용할 수 있습니다.
또는 @markplotnick이 지적했듯이 -a
다음 옵션을 사용하십시오.usermod