假设你是一个大项目的系统管理员,你经常收到 QA 团队的投诉,说开发团队搞砸了代码库,反之亦然。 仔细检查后,您会发现两个团队属于同一组,共享相同的代码库。 所以你请你的前辈帮忙解决这个问题,他建议你为开发和 QA 团队的所有用户创建两个组。 但是,您不知道如何在 Linux 中将用户添加到组中。 好吧,我们是来帮助解决这个问题的。 在本文中,我们解释了如何在 Linux 中创建新组、创建新用户,然后将用户添加到组中。
在 Linux 中将用户添加到组 (2023)
在我们演示如何创建组、创建用户以及将新用户或现有用户添加到这些组之前,我们首先需要了解什么是 Linux 中的用户组。 那么让我们看看什么是用户组,然后继续将用户添加到组中。
什么是 Linux 中的用户组
通常,一个组织被分成多个团队,每个团队都有不同的职能,组织中的每个成员都是团队的一部分。 类似地,在多用户系统中,每个用户都是一个组的一部分,该组具有一组不同的权限,例如对组内共享资源的读取、写入或执行权限。 Linux 中有两种类型的组:
小学组
每当您登录会话时,您就是主要组的一部分。 通常,主要组与 Linux 中的用户名同名。 您创建的任何文件或进程都是该组的一部分,默认情况下不能被其他组的用户访问。 关于主要组的用户 ID、组 ID 等信息存储在文件 /etc/passwd 中。
中学组
当您需要与特定用户组共享对任何文件或进程的访问时,辅助组或补充组非常有用。 只有 root 用户或具有 sudo 权限的用户才能分配新权限或将新用户添加到辅助组。
一个用户只能是一个主要组的一部分,但可以是多个次要组的一部分。 现在您了解了 Linux 中用户组的基础知识,现在让我们看看如何创建新用户并将他们添加到组中。
如何在 Linux 中添加新用户
要创建新用户,请按照以下语法使用 useradd 命令:
sudo useradd <选项> 用户名
与命令配对的一些选项是:
选项描述-d创建新用户时将使用新的目录名作为用户登录目录的值-e这用于指定用户帐户将被停用的日期-u这将创建一个具有特定用户标识的新用户
您创建的新用户最初只会是主要组的一部分。 创建新用户后,使用 passwd 命令为他们分配新密码,如下所示:
sudo passwd <用户名>
在这里,系统会提示您输入新密码,然后要求您重新输入密码进行确认。 此时,用户现在可以使用刚刚创建的新用户名和密码登录系统。
如何在 Linux 中创建用户组
现在您已经创建了一个新用户,您可以开始创建组并向其中添加用户。 要创建新组,请使用 groupadd 命令。 请务必为新组名指定一个唯一的名称,否则它会与其他现有组名冲突。 语法如下所示:
sudo groupadd <组名>
如何将用户添加到组
创建组后,您现在可以开始向其中添加用户。 只有 root 用户或具有 sudo 访问权限的用户才能将用户添加到不同的组。
将现有用户添加到现有组
要将现有用户添加到组,请使用我们在下面突出显示其语法的 usermod 命令:
sudo usermod -a <用户名> -G <组名>
在这里,-a 选项代表附加(在末尾添加)并将用户添加到现有组,-G 标志用于指定用户要附加到的组的名称。 此命令没有用于详细输出的选项,除非它在用户或组不存在时发出警告。
将用户添加到多个组
Linux 中的 usermod 命令也可用于将用户添加到多个组,其选项与单个组基本相同,如下所示。 请务必指定不带任何空格的组名。
sudo usermod -a
创建新用户并分配组
您可以在 Linux 中使用单个命令将新用户添加到组中。 useradd 命令允许您创建一个新用户,然后将一个用户添加到指定的组中。 使用 useradd 命令添加新用户的语法是:
sudo useradd <用户名> -G
查看用户组
要查看与用户关联的所有组,您可以使用 groups 命令或 id 命令。 检查如下所示的语法:
组<用户名>
id <用户名>
如果
如何从组中删除用户
要从 Linux 发行版中的组中删除用户,您可以使用 gpasswd 命令,按照下面给出的语法:
sudo gpasswd -d <用户名> <组名>
除了从组中删除用户外,gpasswd 命令还用于各种管理任务,例如定义组管理员或设置组密码等。
在 Linux 中删除一个组
要在 Linux 中删除任何辅助组,可以使用 groupdel 命令:
sudo groupdel <组名>
如何更改用户的主要组
到目前为止,我们讨论的所有命令都适用于辅助组及其用户。 要在 Linux 中更改用户的主要组,请使用以下语法:
sudo usermod –g
您一定想知道 -g 和 -G 标志之间有什么区别。 -g 标志用于主要组,而 -G 标志用于辅助组。
如何在 Linux 中列出所有用户组
在安装时创建的用户称为系统用户,是 Linux 中许多默认组的一部分。 系统中每个组的信息都存储在文件 – /etc/group 中。 要列出系统中的所有组,请使用以下语法:
sudo 猫 /etc/组
在 Linux 终端中管理用户和组
管理组是一项有用的任务,可以在各种操作中派上用场,尤其是当您是系统管理员时。 在这里,我们向您展示了一些简单的 Linux 终端命令,用于创建新用户、创建新组、将新用户添加到组等等。 所以,我们希望本文能解决您的问题。 如果没有,请在下面的评论中告诉我们,我们会帮助您。