本文最后更新于 257 天前,其中的信息可能已经过时,如有错误请发送邮件到wuxianglongblog@163.com
一、组类型
管理员组:root, 0
普通组:
系统组:1-499, 1-999(CENTOS7)
普通组:500+, 1000+(CENTOS7)
Linux组的类别
用户的主要组(primary group)
用户必须属于一个且只有一个主组
组名同用户名,且仅包含一个用户,是私有组
用户的附加组(supplementary group)
一个用户可以属于零个或多个辅助组
二、创建组
groupadd [OPTION]... group_name
-g GID: 指明GID号;[GID_MIN, GID_MAX]
-r: 创建系统组
CentOS 6: ID<500
CentOS 7: ID<1000
三、修改组
groupmod[OPTION]... group
-n group_name: 新名字
-g GID: 新的GID
四、删除组
groupdel GROUP
五、更改组密码gpasswd
gpasswd [OPTION] GROUP
-a user 将user添加至指定组中
-d user 从指定组中移除用户user
-A user1,user2,... 设置有管理权限的用户列表
newgrp命令:临时切换主组
如果用户本不属于此组,则需要组密码
六、更改和查看组成员groupmems
groupmems [options] [action]
options:
-g, --group groupname更改为指定组(只有root)
Actions:
-a, --add username 指定用户加入组
-d, --delete username 从组中删除用户
-p, --purge 从组中清除所有成员
-l, --list 显示组成员列表
groups [OPTION].[USERNAME]... 查看用户所属组列表
1.添加用户到dev组
这里提前创建了一个dev组以及张三和李四两个用户,相当于是给用户添加了附加组。
[root@localhost ~]# groupadd dev
[root@localhost ~]# useradd zhangsan
[root@localhost ~]# useradd lisi
[root@localhost ~]# groupmems -a lisi -g dev
[root@localhost ~]# id zhangsan
uid=1001(zhangsan) gid=1003(zhangsan) 组=1003(zhangsan),1002(dev)
[root@localhost ~]# id lisi
uid=1002(lisi) gid=1004(lisi) 组=1004(lisi),1002(dev)
2.查看有哪些成员属于dev组
可以使用-l参数来查看dev组的组成员信息
[root@localhost ~]# groupmems -g dev -l
zhangsan lisi
3.删除dev组的单个成员
这里我们删除这个组里的李四用户,将他移除到组外,执行命令后,在使用-l查看这个组成员只剩下了张三。
[root@localhost ~]# groupmems -d lisi -g dev
[root@localhost ~]# groupmems -g dev -l
zhangsan
4.清空组的所有成员
前面删除得只剩下了一个组成员,让测试的效果更加明显,我们重新增加几个成员到dev组中。
[root@localhost ~]# useradd -g wangwu wangwu
[root@localhost ~]# groupmems -a wangwu -g dev
[root@localhost ~]# groupmems -a lisi -g dev
[root@localhost ~]# groupmems -g dev -l
zhangsan wangwu lisi
清空所有的组成员
[root@localhost ~]# groupmems -p -g dev
[root@localhost ~]# groupmems -g dev -l