如何在Linux中向组中添加用户

Linux使用组来方便地共享资源。一般来说,资源将具有用户、组和其他访问权限。在本教程中,我们将学习如何将用户添加到Linux组及其变体,如创建组、删除组、列出组成员等。

null

Linux组

Linux组是用于组织和管理用户帐户和权限的组织单位。特别是对于特权和访问管理,如对给定资源的读、写、执行权限或登录系统,可以通过允许某些组和拒绝某些组来使用组进行管理。

Linux操作系统中有两种类型的组,如下所示。

主要群体

Primary Group 是用户首先选择的组,这意味着如果用户创建文件,则文件组将分配给用户主组。如果用户尝试先使用某些资源,则会检查主组。可以在中查看主要组信息 /etc/passwd 文件如下。

$ cat /etc/passwd
Primary Group
主要群体

第5列提供主要组信息。正如我们所看到的,一些用户没有主组,因为他们不可操作,并且被操作系统使用,所以他们不需要主组。

次要或补充组

辅助组用于为非用户主组的其他资源提供访问权限。例如,其他用户使用不同的主组创建的文件可以通过使用辅助组共享。一个用户可以有多个辅助组。

将现有用户更改或添加到主组

我们将首先向ta primary组添加一个现有用户。注意,因为这将更改用户的主要组,这可能会由于文件和文件夹所有权和访问限制而产生问题。我们将使用 usermod 命令 -g 具有主要组名和 -a 附加。

相关文章: 如何在Linux中更改或重命名用户名和用户ID?

在本例中,我们将添加用户 ismail 到名为 ali 作为主要群体。

$ sudo usermod -a -g ali ismail

将现有用户添加到辅助组

我们将从将现有用户添加到现有组开始。我们将使用 usermod 命令。 usermod 是用于管理用户和组的命令。我们还将提供 -a 也就是说附加和 -G 我们将在其中指定要添加用户的组。

在这个示例中,我们将添加用户 ismail 对团队来说 syslog 作为第二组。

$ sudo usermod -G syslog ismail

将现有用户添加到多个组

在某些情况下,我们可能需要使用一个命令将用户添加到多个组中。实际上,我们将使用与单个组相同的命令和参数。我们将用 , .

在本例中,我们将添加用户 ismail 分为多个辅助组 root , sudo , syslog

$ sudo usermod -a -G root,sudo,syslog ismail

从组中删除用户

我们可以从一个组中远程控制一个用户。此组可以是主组或辅助组。我们将使用 gpasswd -d 选项。在本例中,我们将使用远程用户 ismail 来自组 syslog .

$ sudo gpasswd -d ismail syslog

列出现有组

Linux组信息存储在文件中 /etc/group . 我们可以在下面列出这个文件,它将提供组。

$ cat /etc/group
List Existing Groups
列出现有组

使用getent命令列出现有组

列出现有组的另一个好命令是 getent 通过提供 group 选项。

$ getent group
List Existing Groups with getent Command
使用getent命令列出现有组

创建组

如果在将用户添加到此组之前需要添加新组,则需要创建它。我们将用 groupadd . 在本例中,我们将创建一个名为 test .

$ sudo groupadd test

删除组

我们可以使用 groupdel 命令。在本例中,我们将删除名为 test .

$ sudo groupdel test

创建新用户并使用单个命令分配组

在某些情况下,我们可能需要创建一个用户并将组分配给该用户多个组。我们将使用 useradd 我们将使用 -g 参数和辅助组 -G 参数。

$ sudo useradd -g ismail -G wheel,developers ismail

用id命令显示用户组

我们可以用不同的命令显示现有的用户组。 id 命令是一个基本命令,它将列出用户名、用户主要组、用户次要组和相关id。

$ id
Display User Group with id Command
用id命令显示用户组

用groups命令显示用户组

另一个可以列出当前用户组的命令是 groups 命令。

$ group
Display User Group with groups Command
用groups命令显示用户组
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享