Linux 中有效用戶組和初始用戶組的實(shí)現(xiàn)
先查看一下 /etc/group 文件:
[root@localhost /]# cat /etc/group root:x:0:root bin:x:1:root,bin,daemon daemon:x:2:root,bin,daemon sys:x:3:root,bin,adm adm:x:4:root,adm,daemon tty:x:5: disk:x:6:root lp:x:7:daemon,lp mem:x:8: kmem:x:9: wheel:x:10:root ...
這個(gè)文件的每一行代表一個(gè)用戶組,以冒號(hào)分隔各個(gè)字段。共有4個(gè)字段,分別是:
- ==用戶組名稱==
- ==用戶組密碼==:通常不需要設(shè)置,這個(gè)設(shè)置通常是給“用戶組管理員”是用的。
- ==GID==:用戶組 ID
- ==此用戶組支持的賬號(hào)名稱==:一個(gè)賬號(hào)可以加入多個(gè)用戶組,如果某個(gè)用戶想要加入某個(gè)用戶組,只需將該用戶的用戶名添加進(jìn)這個(gè)字段中。
初始用戶組
在 /etc/passwd 中用戶對(duì)應(yīng)的那一行的第4個(gè)字段(GID),就是初始用戶組。當(dāng)用戶登錄系統(tǒng),立刻就擁有這個(gè)初始用戶組的相關(guān)權(quán)限。
[root@localhost /]# cat /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail:/sbin/nologin ...
有效用戶組
有效用戶組表示用戶此時(shí)此刻所在的用戶組是什么。在切換有效用戶組之前,有效用戶組就是初始用戶組。
想要知道用戶自己當(dāng)前的有效用戶組和支持的用戶組(在 /etc/group 文件中第四字段包含此用戶的用戶組),使用 groups 即可。
[root@localhost /]# groups root bin daemon sys adm disk wheel
在這個(gè)輸出的信息中,第一個(gè)輸出的用戶組就是當(dāng)前的有效用戶組了(但是有些系統(tǒng)并不這么做)。
如果我以 touch 去創(chuàng)建一個(gè)新文件,那么這個(gè)文件的所有者為 root,而且用戶組是 root(有效用戶組)。
切換有效用戶組:newgrp
使用 newgrp 命令可以切換有效用戶組,注意只能切換當(dāng)前賬號(hào)支持的用戶組。
假設(shè)當(dāng)前用戶支持 “test” 和 “foo” 這兩個(gè)用戶組。那么 newgrp test 和 newgrp foo 是有效的。其他的都是無(wú)效的。
這個(gè)轉(zhuǎn)換的背后原理是創(chuàng)建一個(gè)新的 shell,如果要恢復(fù)到前一個(gè)用戶組需要用 exit 或 Ctrl+D 來(lái)注銷當(dāng)前的 shell 。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
在Debian系的Linux中編譯并安裝ixgbe驅(qū)動(dòng)的教程
這篇文章主要介紹了在Linux中編譯并安裝ixgbe驅(qū)動(dòng)的教程,采用bash shell、適用于Debian、Ubuntu等各種基于Debian的Linux系統(tǒng),需要的朋友可以參考下2015-03-03
CentOS6.5 升級(jí) Python 2.7 版本詳細(xì)介紹
這篇文章主要介紹了 CentOS6.5 升級(jí) Python 2.7 版本詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下2017-01-01
linux系統(tǒng)中設(shè)置定時(shí)任務(wù)的實(shí)現(xiàn)方式
在SpringBoot中設(shè)置定時(shí)任務(wù),需要使用@EnableScheduling注解和@Scheduled注解,配合cron表達(dá)式,在Linux系統(tǒng)中,使用crontab工具可設(shè)置系統(tǒng)級(jí)的定時(shí)任務(wù),首先需要?jiǎng)?chuàng)建執(zhí)行腳本,并賦予執(zhí)行權(quán)限,然后通過(guò)crontab?-e進(jìn)入編輯界面2024-10-10
centOS7 下利用iptables配置IP地址白名單的方法
下面小編就為大家?guī)?lái)一篇centOS7 下利用iptables配置IP地址白名單的方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-11-11
linux查看硬盤大小與掛載硬盤的實(shí)現(xiàn)
這篇文章主要介紹了linux查看硬盤大小與掛載硬盤的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09
如何在CentOS8上安裝和配置Postfix郵件服務(wù)器的方法示例
這篇文章主要介紹了如何在CentOS8上安裝和配置Postfix郵件服務(wù)器的方法示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11

