【Linux】Linux私有组,主要组和附加组
作者:互联网
私有组概念
任何用户都必须依赖一个用户组才能存在,所以如果我们在创建用户的时候没有指定用户组,那么系统会为该用户创建一个同名的组。 这个组叫做私有组。
私有组: private group
私有组里默认只有一个和该私有组同名的用户。
[root@zmedu-17 ~]# useradd gaosh4[root@zmedu-17 ~]# id gaosh4uid=1004(gaosh4) gid=1004(gaosh4) 组=1004(gaosh4)
可以看到在我创建gaosh4的时候会默认创建了一个组gaosh4
[root@zmedu-17 ~]# grep 1004 /etc/groupgaosh4:x:1004:
那我如果在创建一个用户的时候指定了一个组,还会有私有组吗?
答案是: 不会有
[root@zmedu-17 ~]# groupadd zmedu -g 3000[root@zmedu-17 ~]# useradd gaosh5 -g zmedu[root@zmedu-17 ~]# id gaosh5uid=1005(gaosh5) gid=3000(zmedu) 组=3000(zmedu)[root@zmedu-17 ~]# grep gaosh5 /etc/group[root@zmedu-17 ~]#
可以看到,当我创建一个用户gaosh5,属于zmedu组的时候,他就只有zmedu组,搜gaosh5这个私有组的时候发现不存在,也就是它并没有创建私有组。
主要组概念
在/etc/passwd的第四列GID表示该用户的主要组(primary group),一个 用户可以属于多个组,记录在/etc/passwd 的那个组叫主要组。
[root@zmedu-17 ~]# grep gaosh4 /etc/passwdgaosh4:x:1004:1004::/home/gaosh4:/bin/bash[root@zmedu-17 ~]#
一个用户的主要组,可以是私有组。
但是当你在创建用户的时候,指定了用户组,哪怕指定的用户组和用户名相同,也不算私有组。只有系统给创建的才叫私有组
附加组概念
一个用户只可以属于一个私有组,但是可以同时属于多个附加组(attached group)
比如一个前台,可能同时也兼着财务和销售。
所以这个前台有个主要组是前台。 财务和销售是他的附件组。
[root@zmedu-17 ~]# groupadd cwu[root@zmedu-17 ~]# groupadd xshou[root@zmedu-17 ~]# useradd qtai -G cwu
useradd -g 是创建私有组
[root@zmedu-17 ~]# grep qtai /etc/passwd
qtai❌1006:1006::/home/qtai:/bin/bash
[root@zmedu-17 ~]# grep 1006 /etc/group
qtai❌1006:
有私有组的时候,不会在/etc/passwd里和组里出现附加值。但是从操作上我们也可以执行
[root@zmedu-17 ~]# id qtaiuid=1006(qtai) gid=1006(qtai) 组=1006(qtai),3001(cwu)
总结
私有组: 存在的意义在于你没有指定用户组的时候,系统自动添加一个同名的组,叫私有组
附加组:在现有组的前提下,在添加一个从属组
主要组: 在/etc/passwd的第四列GID表示该用户的主要组
一个组可以是私有组也可以是主要组,但无法根据/etc/passwd去判断一个组是否是私有组。
标签:组和,17,qtai,私有,zmedu,etc,Linux,root 来源: https://blog.51cto.com/xinsz08/2704373