前言
在Linux操作系统中,组的分类有三种:基本组(私有组)、附加组(公有组)、系统组。其中基本组只能容纳一个用户,如果加入其它用户则变成附加组;附加组则可以容纳多个用户,组中的用户都有组所拥有的权利;而系统组则加入一些系统用户。
在Linux中,用户账号、密码、组信息和组密码均以文本形式放在不同的配置文件中,其中组账号文件放在[/etc/group]文件中,组密码文件放置在[/etc/gshadow]文件中。
目录
一、回顾用户组账号文件
二、groupadd命令功能
三、groupadd命令格式与参数详解
四、groupadd练习演示
五、总结
六、补充
一、回顾组账号文件
1、[/etc/group]文件字段的说明,如图1-1.
2、系统中的每个组,在[/etc/group]文件中都有记。
3、用户组的真实密码保存在[/etc/gshadow]配置文件中,如图1-2.
二、groupadd命令功能
1、该命令一般用于创建一个新的组。
2、在新的组被创建后,其相关信息将被添加至[/etc/group]文件中以文本形式保存。
3、可以根据自己的需求,对组的相关信息进行编辑。
三、groupadd命令格式与参数详解
1、命令格式:
groupadd [选项] <组名称>
2、命令参数:
- [ -g ]:GID,指定新用户的组标识号(GID),默认值是已有的最大GID+1;
- [ -r ]:建立一个系统组账号,与-g不同的是使用时,分配一个1~999的GID;
- [ -o ]:添加GID号不唯一的组,需要与-g连用。
- [ -f ]:强制添加,当该组已存在仍以成功的形式退出,即无任何提示消息输出( 当与-g一起使用时,如果该组已存在,则仍以原来的GID为准;如果该组不存在,但是指定的GID重复,则换一个唯一的GID,即-g失效)。
- [ -p ]:指定密码。
如图3-2。
四、groupadd练习演示
1、练习一:
- 要求:在系统中添加一个GID为1005,组名为xiaogege1的新组。
[root@localhost ~]# groupadd -g 1005 xiaogege1 //-g指定GID
[root@localhost ~]# cat /etc/group |grep 1005 //验证结果
xiaogege1:x:1005: //组xiaogege1在文件[/etc/group]中的相关信息
2、练习二:
- 要求:在系统中添加一个GID不唯一,组名为lll的新组。
[root@localhost ~]# groupadd -g 1002 lmm
[root@localhost ~]# cat /etc/group |grep 1002
[root@localhost ~]# groupadd -g 1002 lll
[root@localhost ~]# groupadd -g 1002 -o lll
[root@localhost ~]# cat /etc/group |grep 1002
截图详解如下
3、练习三:
- 要求:
- 在系统中添加一个组aaa(GID=1003)
- 然后强制添加一个组(组名=aaa,GID=1004)
- 最后强制添加一个组(组名=bbb,GID=1003)
- 观察现象
[root@localhost ~]# groupadd -g 1003 aaa
[root@localhost ~]# cat /etc/group |grep 1003
aaa:x:1003:
[root@localhost ~]# groupadd -f -g 1004 aaa
[root@localhost ~]# cat /etc/group |grep aaa
aaa:x:1003:
[root@localhost ~]# groupadd -f -g 1003 bbb
[root@localhost ~]# cat /etc/group |grep bbb
bbb:x:1006:
练习截图已给出
五、总结
- groupadd的主要功能就是新建一个组;
- 新建的组的相关信息将以文本的形式保存在[/etc/group]文件中;
- groupadd命令使用起来比较简单,其中[ -g ]选项是最常用的,[ -f ]选项根据情况不同,命令执行的结果也会发生改变,这是需要重点学习的地方。
六、补充
- 在[ -r ]选项中,我们可以看到创建的系统用户的GID=1~999。补充一下,每个用户都有一个UID,组的GID也不例外,其中,超级用户的属组的GID=0,系统用户组的UID=1~999,普通用户组的UID≥1000。
思维导图
尊重原创