文章目录
- 13.1 创建用户组
- 13.1.1 groupadd命令
- 13.1.2 用户组信息文件
- 13.1.3 创建用户组实例
- 13.2 修改用户组
- 13.2.1 修改GID
- 13.2.2 修改用户组名
- 13.3 删除用户组
- 13.4 将用户加入用户组或从用户组中移除
- 13.5 切换用户组
在Linux中,每个普通用户都有一个账户,包括用户名、密码和主目录等信息。除此之外,还有一些系统本身创建的特殊用户,它们具有特殊的意义,其中最重要的是管理员账户,默认用户名是root。同时Linux也提供了用户组,使每一个用户至少属于一个组,从而便于权限管理。
用户和用户组管理是系统安全管理的重要组成部分,本节主要介绍openEuler提供的用户组管理命令,以及为普通用户分配特权的方法。
13.1 创建用户组
13.1.1 groupadd命令
在root权限下,通过groupadd命令可以为系统添加新用户组信息,其中 options 为相关参数, groupname 为用户组名称。
# groupadd [options] groupname
13.1.2 用户组信息文件
与用户组信息有关的文件如下:
- /etc/gshadow:用户组信息加密文件。
- /etc/group:组信息文件。
- /etc/login.defs:系统广义设置文件。
13.1.3 创建用户组实例
例如新建一个用户组名为grouptest的用户,在root权限下执行如下命令:
[root@superman-21 ~]# groupadd grouptest
[root@superman-21 ~]#
[root@superman-21 ~]# grep grouptest /etc/group
grouptest:x:1002:
[root@superman-21 ~]#
13.2 修改用户组
13.2.1 修改GID
修改用户组ID,在root权限下执行如下命令,其中 GID 代表目标用户组ID, groupname 代表用户组,请根据实际情况修改:
# groupmod -g GID groupname
例如示例命令及输出信息如下:
[root@superman-21 ~]# grep grouptest /etc/group
grouptest:x:1002:
[root@superman-21 ~]#
[root@superman-21 ~]# groupmod -g 1003 grouptest
[root@superman-21 ~]#
[root@superman-21 ~]# grep grouptest /etc/group
grouptest:x:1003:
[root@superman-21 ~]#
13.2.2 修改用户组名
修改用户组名,在root权限下执行如下命令,其中 newgroupname 代表新用户组名, oldgroupname 代表已经存在的待修改的用户组名,请根据实际情况修改:
# groupmod -n newgroupname oldgroupname
例如示例命令及输出信息如下:
[root@superman-21 ~]# groupmod -n grouptest1 grouptest
[root@superman-21 ~]#
13.3 删除用户组
在root权限下,使用groupdel命令可删除用户组。
例如,删除用户组grouptest,命令如下:
[root@superman-21 ~]# groupdel grouptest1
[root@superman-21 ~]#
说明:
groupdel不能直接删除用户的主组,如果需要强制删除用户主组,请使用 groupdel -f Test 命令。
13.4 将用户加入用户组或从用户组中移除
在root权限下,使用gpasswd命令将用户加入用户组或从用户组中移除。
例如,将用户 test4 加入用户组 grouptest1 ,命令如下:
[root@superman-21 ~]# useradd test4
[root@superman-21 ~]#
[root@superman-21 ~]# id test4
用户id=1003(test4) 组id=1004(test4) 组=1004(test4)
[root@superman-21 ~]#
[root@superman-21 ~]# gpasswd -a test4 grouptest1
正在将用户“test4”加入到“grouptest1”组中
[root@superman-21 ~]#
[root@superman-21 ~]# id test4
用户id=1003(test4) 组id=1004(test4) 组=1004(test4),1003(grouptest1)
[root@superman-21 ~]#
例如,将用户 test4 从 grouptest1 用户组中移除,命令如下:
[root@superman-21 ~]# gpasswd -d test4 grouptest1
正在将用户“test4”从“grouptest1”组中删除
[root@superman-21 ~]#
[root@superman-21 ~]# id test4
用户id=1003(test4) 组id=1004(test4) 组=1004(test4)
[root@superman-21 ~]#
13.5 切换用户组
一个用户同时属于多个用户组时,则在用户登录后,使用newgrp命令可以切换到其他用户组,以便具有其他用户组的权限。
例如,将用户root增加grouptest1 用户组,命令如下:
[root@superman-21 ~]# newgrp grouptest1
Welcome to 5.10.0-60.18.0.50.oe2203.x86_64
System information as of time: 2022年 12月 07日 星期三 17:30:41 CST
System load: 0.00
Processes: 149
Memory used: 7.9%
Swap used: 0%
Usage On: 7%
IP address: 192.168.0.21
IP address: 192.168.122.1
Users online: 1
[root@superman-21 ~]#
[root@superman-21 ~]# id
用户id=0(root) 组id=1003(grouptest1) 组=1003(grouptest1),0(root) 上下文=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[root@superman-21 ~]#