为什么可以使用 usermod 将用户添加到组,但不能使用 usermod 将用户从组中删除?

为什么可以使用 usermod 将用户添加到组,但不能使用 usermod 将用户从组中删除?

为什么你可以用 将用户添加到组usermod,但不能用 从组中删除用户usermod?我错了吗?

我有一个想要从sudo组中删除的用户。我使用 将此用户添加到组中usermod,现在我必须使用deluser将该用户从组中删除吗?

在测试箱中,我运行了sudo usermod -G "" user(我读过的一些线程的错误建议)它删除了所有组,很高兴我没有在服务器上运行它。

从手册页中,我看到一个-W选项提到删除列表gids。是gids组吗?

答案1

虽然我不推荐这样做,但实际上你可以从附加组中删除用户usermod- 通过传递以下列表要保留的组-G命令。来自man usermod

   -G, --groups GROUP1[,GROUP2,...[,GROUPN]]]
       .
       .
       .

       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.

前任。

$ id testuser
uid=1001(testuser) gid=1001(testuser) groups=1001(testuser),27(sudo),33(www-data),100(users)

$ sudo usermod -G users,www-data testuser

$ id testuser
uid=1001(testuser) gid=1001(testuser) groups=1001(testuser),33(www-data),100(users)

答案2

使用 添加和删除组中的用户usermod。用户-a将用户添加到组中;使用-r从组中删除用户。您可以cat/etc/group文件上使用以查看所有组的成员:

sudo usermod -a -G <group> <username>
cat /etc/group | grep <group>
sudo usermod -r -G <group> <username>
cat /etc/group | grep <group>

相关内容