新聞中心
初始組(有時也稱
主組)和
附加組。

《linux etc/passwd》一節(jié)中,已經(jīng)對用戶所屬初始組和附加組的概念進行了簡單介紹,本節(jié)對初始組和附加組做更詳細的介紹。
/etc/passwd 文件中每個用戶信息分為 7 個字段,其中第 4 字段(GID)指的就是每個用戶所屬的初始組,也就是說,當用戶一登陸系統(tǒng),立刻就會擁有這個群組的相關(guān)權(quán)限。
舉個例子,我們新建一個用戶 lamp,并將其加入 users 群組中,執(zhí)行命令如下:
[root@localhost ~]# useradd lamp <--添加新用戶
[root@localhost ~]# groupadd users <--添加新群組
[root@localhost ~]# usermod -G users lamp <--將用戶lamp加入 users群組
[root@localhost ~]# grep "lamp" /etc/passwd /etc/group /etc/gshadow
/etc/passwd:lamp:x:501:501::/home/lamp:/bin/bash
/etc/group:users:x:100:lamp
/etc/group:lamp:x:501:
/etc/gshadow:users:::lamp
/etc/gshadow:lamp:!::
useradd 和 groupadd 分別是添加用戶和群組的命令,后續(xù)章節(jié)會做詳細講解。
可以看到,在 etc/passwd 文件中,lamp 用戶所屬的 GID(群組 ID)為 501,通過搜索 /etc/group 文件得知,對應(yīng)此 GID 的是 lamp 群組,也就是說,lamp 群組是 lamp 用戶的初始組。
lamp 群組是添加 lamp 用戶時默認創(chuàng)建的群組,在 root 管理員使用 useradd 命令創(chuàng)建新用戶時,若未明確指定該命令所屬的初始組,useradd 命令會默認創(chuàng)建一個同用戶名相同的群組,作為該用戶的初始組。
正因為 lamp 群組是 lamp 用戶的初始組,該用戶一登陸就會自動獲取相應(yīng)權(quán)限,因此不需要在 /etc/group 的第 4 個字段額外標注。
但是,附加組就不一樣了,從例子中可以看到,我們將 lamp 用戶加入 users 群組中,由于 users 這個群組并不是 lamp 的初始組,因此必須要在 /etc/group 這個文件中找到 users 那一行,將 lamp 這個用戶加入第 4 段中(群組包含的所有用戶),這樣 lamp 用戶才算是真正加入到 users 這個群組中。
在這個例子中,因為 lamp 用戶同時屬于 lamp 和users 兩個群組,所在,在讀取\寫入\運行文件時,只要是 user 和 lamp 群組擁有的功能,lamp 用戶都擁有。
一個用戶可以所屬多個附加組,但只能有一個初始組。那么,如何知道某用戶所屬哪些群組呢?使用 groups 命令即可。
例如,我們現(xiàn)在以 lamp 用戶的身份登錄系統(tǒng),通過執(zhí)行如下命令即可知曉當前用戶所屬的全部群組:
[root@localhost ~]# groups
lamp users
通過以上輸出信息可以得知,lamp 用戶同時屬于 lamp 群組和 users 群組,而且,第一個出現(xiàn)的為用戶的初始組,后面的都是附加組,所以 lamp 用戶的初始組為 lamp 群組,附加組為 users 群組。
本文名稱:Linux初始組和附加組
當前鏈接:http://m.5511xx.com/article/dpohjep.html


咨詢
建站咨詢
