当前位置: 首页 > Linux

Linux中的有效用户组和初始用户组

时间:2023-04-06 11:19:35 Linux

首先查看/etc/group文件:[root@localhost/]#cat/etc/grouproot:x:0:rootbin:x:1:root,bin,daemondaemon:x:2:root,bin,daemonsys:x:3:root,bin,admadm:x:4:root,adm,daemontty:x:5:disk:x:6:rootlp:x:7:daemon,lpmem:x:8:kmem:x:9:wheel:x:10:root...这个文件的每一行代表一个用户组,每个字段用冒号分隔。总共有4个字段,分别是:==用户组名称====用户组密码==:一般不用设置,这个设置一般用于“用户组管理员”。==GID==:用户组ID==该用户组支持的账户名==:一个账户可以加入多个用户组,如果一个用户要加入一个用户组,只需要使用添加的用户的用户名即可到这个领域。初始用户组为/etc/passwd中用户对应行的第四个字段(GID)中的初始用户组。用户登录系统后,立即拥有初始用户组的相关权限。[root@localhost/]#cat/etc/passwdroot:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologinsync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdownhalt:x:7:0:halt:/sbin:/sbin/haltmail:x:8:12:mail:/var/spool/mail:/sbin/nologin...有效用户组有效用户组表示此时用户所在的用户组。在切换有效用户组之前,有效用户组为初始用户组。如果想知道用户当前有效的用户组和支持的用户组(/etc/group文件中第四个字段就是该用户的用户组),使用groups即可。[root@localhost/]#groupsrootbindaemonsysadmdiskwheel在这个输出信息中,最先输出的用户组是当前有效的用户组(但有的系统不这样做)。如果我用touch新建一个文件,那么这个文件的属主是root,用户组是root(有效用户组)。切换有效用户组:newgrp使用newgrp命令切换有效用户组。注意只能切换当前账号支持的用户组。假设当前用户支持“test”和“foo”这两个用户组。那么newgrptest和newgrpfoo是有效的。其他一切都是无效的。这种转换背后的原理是创建一个新的shell。如果要恢复到之前的用户组,需要使用exit或者Ctrl+D退出当前shell。