组管理
当我们为用户授权的时候,如果多个用户拥有相同的权限,如果我们给用户一个一个的授权,那样很浪费时间,我们可以将这些拥有相同权限的用户加入到一个组,从而简化授权。
和用户一样,每个组都有一个 ID Group ID(GID) 来作为组的唯一标识;
root 组: 0
普通用户组:
- 系统用户组 1 ~ 999 ( CentOS 6 以及之前是 1~499 )
- 登录用户组 1000+ ( CentOS 6 以及之前是 500+ )
用户组的分类
-
主要组(主组): 一个账号必须并且只能属于一个主组,在创建用户账户时,会自动创建一个同名的组,并且这个组就是该账户的主组;
-
附加组(附属组): 额外的组,一个用户可以属于多个附加组;
组 user1 是用户 user1 的主组,g1 是 user1 的附加组
root@testsvra:~# id user1
uid=1001(user1) gid=1001(user1) groups=1001(user1),1002(g1)
组配置文件:
- /etc/group:组及其属性信息,如,组名,GID,以及组成员(组成员,只显示附加组成员,不显示主组的成员)等
- /etc/gshadow:组密码及其属性信息
group 文件格式:
root@testsvra:~# cat /etc/group | grep user1
user1:x:1001:
g1:x:1002:user1,it
在 group 文件中,每一行表示一个组,其被划分为 4 列:
- 第一列:表示组的名称;
- 第二列:表示组的密码,现在组的密码已经被保存到 /etc/gshadow 文件中了;
- 第三列:表示组的 ID;
- 第四列:表示组的成员(不包含主组成员)
gshadow 文件格式:
root@testsvra:~# cat /etc/gshadow | grep user1
user1:!::
g1:!::user1,it
在 gshadow 文件中,每一行表示一个组,其被划分为 4 列:
- 第一列:表示组的名称
- 第二列:表示组的密码(一般很少使用,所以这里的状态为 !,如果你想为该组指定管理,那么你就需要配置组的密码.);
- 第三列:表示组的管理员列表
- 第四列:表示组的成员(不包含主组成员)
创建组
我们可以通过 groupadd 命令来创建组
格式:
groupadd