如何在Linux中将用户添加到组
在本教程中,我们将说明如何在Linux系统中将用户添加到组中。 我们还将向您展示如何从组中删除用户以及如何创建,删除和列出组。
Linux组
Linux组是组织单位,用于组织和管理Linux中的用户帐户。 组的主要目的是为一组可以在组内用户之间共享的给定资源定义一组特权,例如读取,写入或执行权限。
Linux操作系统中有两种类型的组:
小学组 –用户创建文件时,文件的组设置为用户的主要组。 通常,组的名称与用户的名称相同。 有关用户主要组的信息存储在
/etc/passwd
文件。次要或补充组 -当您要向属于该组成员的一组用户授予某些文件权限时很有用。 例如,如果您将特定用户添加到docker组,则该用户将继承该组的访问权限,并能够运行docker命令。
每个用户可以完全属于一个主要组,零个或多个次要组。
仅root用户或具有 sudo
访问可以将用户添加到组中。
如何将现有用户添加到组#
要将现有用户添加到辅助组,请使用 usermod -a -G
命令后跟组名和用户名:
sudo usermod -a -G groupname username
例如,添加用户 linuxize
到 sudo
组,您将运行以下命令:
sudo usermod -a -G sudo linuxize
始终使用 -a
(添加)选项,将用户添加到新组中。 如果您省略 -a
选项,该用户将被从未列出的任何组中删除 -G
选项。
成功之后, usermod
命令不显示任何输出。 仅当用户或组不存在时,它才会警告您。
如何在一个命令中将现有用户添加到多个组
如果要在一个命令中将现有用户添加到多个辅助组,请使用 usermod
命令后跟 -G
组的选项名称,以 ,
(逗号):
sudo usermod -a -G group1,group2 username
如何从组中删除用户
要从组中删除用户,请使用 gpasswd
命令机智 -d
选项。
在以下示例中,我们将删除用户 username
从组 groupname
:
sudo gpasswd -d username groupname
如何建立群组
要创建一个新组,请使用 groupadd
命令,后跟组名:
sudo groupadd groupname
如何删除群组
要删除现有组,请使用 groupdel
命令,后跟组名:
sudo groupdel groupname
如何更改用户的主要组
要更改用户主要组,请使用 usermod
命令后跟 -g
选项:
sudo usermod -g groupname username
在以下示例中,我们将更改用户的主要组 linuxize
至 developers
:
sudo usermod -g developers linuxize
如何在一个命令中创建新用户并分配组
以下 useradd
命令创建一个新用户,名为 nathan
与主要群体 users
和次要小组和开发人员。
sudo useradd -g users -G wheel,developers nathan
显示用户组
要显示完整的用户信息,包括用户所属的所有组,请使用 id
命令,后跟用户名:
id username
如果省略用户名,该命令将打印有关当前登录用户的信息。 让我们检查一下用户 linuxize
:
id linuxize
uid=1000(linuxize) gid=100(users) groups=100(users),10(wheel),95(storage),98(power),990(libvirt),993(docker),999(kvm)
从上面的输出中,我们看到用户的主要组是 users
它属于 wheel
, storage
, libvirt
, docker
和 kvm
补充团体。
使用 groups
显示用户的补充组的命令:
groups linuxize
wheel storage power users libvirt docker kvm
如果没有用户名传递给 groups
命令,它将打印当前登录的用户组。
结论#
在本教程中,我们向您展示了如何将用户添加到组中。
相同的命令适用于任何Linux发行版,包括Ubuntu,CentOS,RHEL,Debian和Linux Mint。
如有任何疑问,请随时发表评论。
终端用户组