副标题[/!--empirenews.page--]
Linux 组是用于管理 Linux 中用户帐户的组织单位。对于 Linux 系统中的每一个用户和组,它都有惟一的数字标识号。它被称为 用户 ID(UID)和组 ID(GID)。组的主要目的是为组的成员定义一组特权。它们都可以执行特定的操作,但不能执行其他操作。
Linux 中有两种类型的默认组。每个用户应该只有一个 主要组 和任意数量的 次要组。
- 主要组: 创建用户帐户时,已将主要组添加到用户。它通常是用户的名称。在执行诸如创建新文件(或目录)、修改文件或执行命令等任何操作时,主要组将应用于用户。用户的主要组信息存储在
/etc/passwd 文件中。
- 次要组: 它被称为次要组。它允许用户组在同一组成员文件中执行特定操作。例如,如果你希望允许少数用户运行 Apache(httpd)服务命令,那么它将非常适合。
你可能对以下与用户管理相关的文章感兴趣。
- 在 Linux 中创建用户帐户的三种方法?
- 如何在 Linux 中创建批量用户?
- 如何在 Linux 中使用不同的方法更新/更改用户密码?
可以使用以下四种方法实现。
usermod :修改系统帐户文件,以反映在命令行中指定的更改。
gpasswd :用于管理 /etc/group 和 /etc/gshadow 。每个组都可以有管理员、成员和密码。
- Shell 脚本:可以让管理员自动执行所需的任务。
- 手动方式:我们可以通过编辑
/etc/group 文件手动将用户添加到任何组中。
我假设你已经拥有此操作所需的组和用户。在本例中,我们将使用以下用户和组:user1 、user2 、user3 ,另外的组是 mygroup 和 mygroup1 。
在进行更改之前,我希望检查一下用户和组信息。详见下文。
我可以看到下面的用户与他们自己的组关联,而不是与其他组关联。
# id user1 uid=1008(user1) gid=1008(user1) groups=1008(user1) -
# id user2 uid=1009(user2) gid=1009(user2) groups=1009(user2) -
# id user3 uid=1010(user3) gid=1010(user3) groups=1010(user3)
我可以看到这个组中没有关联的用户。
# getent group mygroup mygroup:x:1012: -
# getent group mygroup1 mygroup1:x:1013:
方法 1:使用 usermod 命令
usermod 命令修改系统帐户文件,以反映命令行上指定的更改。
如何使用 usermod 命令将现有的用户添加到次要组或附加组?
要将现有用户添加到辅助组,请使用带有 -g 选项和组名称的 usermod 命令。
语法:
# usermod [-G] [GroupName] [UserName]
如果系统中不存在给定的用户或组,你将收到一条错误消息。如果没有得到任何错误,那么用户已经被添加到相应的组中。
# usermod -a -G mygroup user1
让我使用 id 命令查看输出。是的,添加成功。
# id user1 uid=1008(user1) gid=1008(user1) groups=1008(user1),1012(mygroup)
如何使用 usermod 命令将现有的用户添加到多个次要组或附加组?
要将现有用户添加到多个次要组中,请使用带有 -G 选项的 usermod 命令和带有逗号分隔的组名称。
语法:
# usermod [-G] [GroupName1,GroupName2] [UserName]
在本例中,我们将把 user2 添加到 mygroup 和 mygroup1 中。
# usermod -a -G mygroup,mygroup1 user2
让我使用 id 命令查看输出。是的,user2 已成功添加到 myGroup 和 myGroup1 中。
# id user2 uid=1009(user2) gid=1009(user2) groups=1009(user2),1012(mygroup),1013(mygroup1)
如何改变用户的主要组?
要更改用户的主要组,请使用带有 -g 选项和组名称的 usermod 命令。
语法:
# usermod [-g] [GroupName] [UserName]
(编辑:宜春站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|