如何在Linux中将用户添加到组
Linux组是组织单位,用于组织和管理Linux中的用户帐户。组的主要目的是定义一组权限,例如对指定资源的读取,写入或执行权限,这些权限可以在组内的用户之间共享。
Linux操作系统中有两种类型的组:主要组 –用户创建文件时,文件的组将设置为用户的主要组。通常,组的名称与用户的名称相同。相关用户的主要组的信息存储在/etc/passwd
文件中。
次要或补充组-除了主要组外的其它的用户所在组,在您希望向某个用户授予某些文件权限时很有用。例如,如果将指定用户添加到docker
组,则该用户将继承该组的访问权限,并且将能够运行docker命令。每个用户仅有一个主要组,零个或多个次要组。
在本教程中,我们将介绍如何在Linux系统中将用户添加到组。我们还将向您展示如何从组中删除用户以及如何创建,删除和列出组。创建用户并添加到辅助组/补充组,将一个用户同时分配到多个组。更改主要组,修改用户所属组,主要组和次要组的差别。相同的命令适用于任何Linux发行版,包括Ubuntu,CentOS,RHEL,Debian和Linux Mint。
先决条件
要向一个组中添加用户,您需要以root限具有sudo权限用户登录。
如何将现有用户添加到组中
要将现有用户添加到辅助组,请使用usermod
命令,然后使用-G
选项和组的名称:
sudo usermod -a -G groupname username
例如,要将用户myfreax
添加到名为sudo的组中,您需要运行以下命令:
sudo usermod -a -G sudo myfreax
将用户添加到新组时,始终使用-a
(附加)选项。如果省略-a
选项, 则该用户会从-G选项之后未列出的任何组中删除。成功后,usermod
命令将不会显示任何输出。仅当用户或组不存在时,它才会警告您。
如何在一个命令中将现有用户添加到多个组
如果要在一个命令中将现有用户添加到多个辅助组,请使用usermod
命令,然后使用以,
逗号分隔的组的名称:
sudo usermod -a -G group1,group2 username
如何从组中删除用户
要从组中删除用户,请使用gpasswd
命令,在以下示例中,我们从名为groupname
的组中删除名为username
的用户:
sudo gpasswd -d username groupname
如何创建组
要创建新的组,请使用groupadd
命令,后跟组名称:
sudo groupadd groupname
如何删除组
要删除现有的组,请使用groupdel
命令,后跟组的名称:
sudo groupdel groupname
如何更改用户的主要组
要更改用户主要组,请使用usermod
命令,然后使用-g
选项:
sudo usermod -g groupname username
在以下示例中,我们将用户myfreax
的主要组更改为developers
:
sudo usermod -g developers myfreax
如何在一个命令中创建新用户和分配组
以下内容useradd命令将创建一个名为nathan
的新用户,主要组为users
,辅助组为wheel和developers。
sudo useradd -g users -G wheel,developers nathan
显示用户组
要显示完整的用户信息,包括用户所属的所有组,请使用id
命令,后跟用户名:
id username
如果省略用户名,该命令将打印当前登录用户的信息。让我们检查一下用户myfreax
所属组:
id myfreax
uid=1000(myfreax) 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 myfreax
wheel storage power users libvirt docker kvm
与id
命令相同,如果省略了用户名,则groups
命令将打印当前登录用户的辅助组。
结论
在本教程中,您学习了如何将用户添加到组中。相同的命令适用于任何Linux发行版,包括Ubuntu,CentOS,RHEL,Debian和Linux Mint。如有任何疑问,请随时发表评论。
以上是 如何在Linux中将用户添加到组 的全部内容, 来源链接: utcz.com/z/507159.html