Linux 帳號、群組與相關檔案
Linux 帳號、群組與相關檔案
帳號與群組
雖然我們登入 Linux 主機的時候,輸入的是我們的帳號,但是其實 Linux 主機並不會直接認識你的『帳號名稱』的,他僅認識 ID 啊 (ID 就是一組號碼),而你的 ID 與帳號的對應就在 /etc/passwd 當中哩。
每個登入的使用者至少都會取得兩個 ID ,一個是使用者 ID (User ID ,簡稱 UID)、一個是群組 ID (Group ID ,簡稱 GID)。
那麼你輸入帳號密碼後,系統幫你處理了什麼呢?
- 先找尋 /etc/passwd 裡面是否有你輸入的帳號?如果沒有則跳出,如果有的話則將該帳號對應的 UID 與 GID (在 /etc/group 中) 讀出來,另外,該帳號的家目錄與 shell 設定也一併讀出。
- 再來則是核對密碼表啦!這時 Linux 會進入 /etc/shadow 裡面找出對應的帳號與 UID,然後核對一下你剛剛輸入的密碼與裡頭的密碼是否相符?
- 如果一切都 OK 的話,就進入 Shell 控管的階段囉!
帳號與群組-相關檔案
/etc/passwd : 帳號檔案
檔案儲存了所有 Linux 帳號的登入資訊,例如 User ID, Group ID, 家目錄, shell 等。每一個帳號一行 資料,每個欄位以冒號 “:” 分隔。一般帳號對 passwd 有可讀權限,而只有 root 有可寫入的權限。
查詢帳號
- #cat /etc/passwd //列出所有帳號
- #tail -3 /etc/passwd //列出後3個帳號
- #grep temp /etc/passwd //搜尋出temp帳號
檢驗帳號是否存在
- #cat /etc/passwd |grep userName //檢驗帳號userName是否存在,若不存在,出現#,若存在會出現帳號資料
/etc/shadow : 儲存真實密碼的地方
系統帳號已加密的密碼並不會儲存在 /etc/passwd, 而是儲存在 /etc/shadow, 在 /etc/passwd 的密碼欄位只會儲存 (*) 代替。這是由於 /etc/passwd 的權限是 rw-r–r (644), 普通帳號也可以讀取加密了的密碼。而 /etc/shadow 則是 -w—– (400) 權限, 只有 root 可以讀寫。
- $cat /etc/shadow //在正常的狀況下,/etc/shadow 這個檔案應該是只有 root 可以讀取。
/etc/group : 定義了群組名稱
定義了群組名稱、GID、以及用戶的對應。Linux 系統中,每一個用戶都一定隸屬於至少一個群組,而每一個群組都有一個群組標識符(gid)
/etc/gshadow : 儲存真實群組密碼
參考資料
特色、摘要,Feature、Summary:
關鍵字、標籤,Keyword、Tag:
- Ubuntu,Linux,Account-Manage,
留言
張貼留言
Aron阿龍,謝謝您的留言互動!