Linux 用戶組
前面小節(jié)介紹了 Linux 用戶相關(guān)的增刪改查,本小節(jié)介紹 Linux 用戶組,Linux 系統(tǒng)中采取了一種安全機制(即用戶組),用戶組可以允許多個 Linux 用戶共享同一種權(quán)限。
1. 用戶組介紹
Linux 是多任務(wù)多用戶的操作系統(tǒng),可以理解為在 Linux 系統(tǒng)中支持多個用戶在同一時間內(nèi)在不同的終端登陸,并且不同用戶可以調(diào)用不同的任務(wù),它們之間互不影響。
不同的 Linux 用戶權(quán)限不同,毎個用戶可以執(zhí)行指定權(quán)限范圍內(nèi)的任務(wù),Linux 系統(tǒng)通過這種權(quán)限的管理劃分,實現(xiàn)了多用戶多任務(wù)的運行機制。因此,如果要使用 Linux 系統(tǒng)的資源,就需要向系統(tǒng)管理員申請一個用戶。
通過建立不同權(quán)限的用戶,可以合理地利用和控制系統(tǒng)資源,還能幫助用戶組織文件,提供對用戶文件的安全性保護。用戶組是具有相同特征用戶的邏輯集合,簡單的理解,有時我們需要讓多個用戶具有相同的權(quán)限,例如新建、刪除、修改、查看文件的權(quán)限,可以分別對多個用戶進行文件訪問授權(quán),但如果用戶多了,挨個的給用戶授權(quán)這種方式就不太合理。
最好的方式是建立一個組,讓這個組具有新建、刪除、修改、查看文件的權(quán)限,然后將所有需要訪問此文件的用戶放入這個組中,每個組都會有唯一的 GID,這樣所有組中用戶就具有了和組一樣的權(quán)限。
2. 查看 Linux 用戶組
Linux 系統(tǒng)中 /etc/group
文件保存的就是系統(tǒng)中所有的用戶組的主要信息,和用戶文件 /etc/passwd
類似,這些信息以 :
分隔,可以使用 cat
命令查看其中的信息,命令如下:
cat /etc/group
執(zhí)行結(jié)果如下圖:
Tips:如上圖所示,每行代表一個用戶組。
/etc/group
文件中每行用戶包含的信息如下:
- 組名;
- 組密碼(以
x
表示); - 組 ID(GID);
- 屬于該組的用戶列表。
Tips:組密碼允許非組內(nèi)的成員通過它臨時使用該組的權(quán)限。
3. 查看 Linux 用戶組信息
Linux 中 /etc/gshadow
文件上保存了每個用戶組的信息,該文件和 /etc/shadow
類似,只有 root
用戶才能訪問,這個文件中包含每個用戶組的一條記錄信息,使用 cat
命令查看:
cat /etc/gshadow
執(zhí)行結(jié)果如下圖:
這些信息以 :
分隔,/etc/gshadow
文件中每行用戶包含的信息如下:
- 組名;
- 加密密碼;
- 組管理員;
- 組附加用戶列表。
4. 查看用戶的 ID 信息
若想要查看某一個 Linux 用戶的 組ID(GID)
和 用戶ID(UID)
,可以使用 id
命令,命令如下:
id root
id user_name01
id user_name02
執(zhí)行結(jié)果如下圖:
Tips:最后的字段
組=gid
表示的是用戶所在組,這里既可以看到初始組,如果有附加組,則也能看到附加組。
5. 小結(jié)
本小節(jié)介紹了用戶組的作用,用戶組在系統(tǒng)中可以方便管理不同權(quán)限組的用戶,需要注意的是同一個用戶可以加入到不同的組中,擁有不同的組分配的權(quán)限,非組內(nèi)用戶可以通過組密碼臨時使用組的權(quán)限。還介紹了用戶組相關(guān)的兩個文件 /etc/group
和 /etc/gshadow
,最后介紹了如何使用 id
命令查看用戶的 UID
和 GID
信息。