/etc/passwd文件 各個字段詳解

轉載自:https://www.sohu.com/a/320177323_505901

/etc/passwd文件:

系統用戶配置文件,存儲了系統中所有用戶的基本信息,並且所有用戶都可以對此文件執行讀(r)操作。

查看文件內容:

/etc/passwd文件內容非常規律,每行記錄對應一個用戶

每行用戶信息都以":"作爲分隔符,劃分爲7個字段。

如下圖各個字段含義:

下面逐個介紹一下:

01 用戶名

用戶名僅是爲了方便用戶記憶。

Linux系統是通過UID來識別用戶身份,分配用戶權限。

/etc/passwd文件中定義了用戶名和UID之間的對應關係。

關於UID詳解請參考:

Linux中的UID和GID的含義

02 密碼

"x":表示此用戶設有密碼,但不是真正的密碼,真正的密碼保存在/etc/shadow文件。

如下圖:

Linux系統把真正的加密密碼串放置在/etc/shadow文件中,此文件只有root用戶可以瀏覽和操作,最大限度地保證了密碼的安全。

補充:

注意!!!,雖然"x"並不表示真正的密碼,但也不能刪除,如果刪除了 "x",那麼系統會認爲這個用戶沒有密碼,從而導致只輸入用戶名而不用輸入密碼就可以登陸(只能在使用無密碼登錄,遠程是不可以)。

03 UID

UID:用戶ID。

每個用戶都有唯一UID,Linux 系統通過UID來識別不同的用戶。

實際上,UID 就是一個 0~65535 之間的數,不同範圍的數字表示不同的用戶身份。

0:超級用戶。

UID爲0就代表這個賬號是管理員賬號。

1~499:系統用戶。

此範圍的UID保留給系統使用。

500~65535:普通用戶。

例如:我們的odysee用戶UID=1000。

關於UID詳解請參考:

Linux中的UID和GID的含義

04 GID

簡稱"組ID",表示用戶初始組組ID號。

解釋一下初始組和附加組的概念。

(1) 初始組

指用戶登陸時就擁有這個用戶組的相關權限。每個用戶的初始組只能有一個,通常就是將和此用戶的用戶名相同的組名作爲該用戶的初始組。比如說,我們手動創建用戶 odysee,在建立用戶odysee同時,就會建立odysee組作爲odysee用戶的初始組。

(2) 附加組

用戶可以加入多個其他的用戶組,並擁有這些組的權限。

每個用戶只能有一個初始組,除初始組外,用戶再加入其他的用戶組,這些用戶組就是這個用戶的附加組。附加組可以有多個,而且用戶可以有這些附加組的權限。

注意:

這裏的GID字段是指初始組。

05 描述性信息

此字段只是用來解釋這個用戶的意義而已。

06 主目錄

通常稱爲用戶的主(家)目錄。

例如:root主目錄爲/root,普通用戶odysee的主目錄爲/home/odysee。

07 默認Shell

Shell是Linux的命令解釋器,用戶和Linux內核之間溝通的橋樑。

Shell命令解釋器的功能就是將用戶輸入的命令轉換成系統可以識別的機器語言。

通常情況下,Linux系統默認使用的命令解釋器是/bin/bash,當然還有其他命令解釋器。