2025年7月16日 星期三

[shell script] linux 主機上的passwd的格式為何?

 Linux 系統中的 /etc/passwd 檔案格式如下:
每一行代表一個使用者帳號,欄位之間用冒號(:)分隔,共有 7 個欄位:

username:password:UID:GID:GECOS:home_directory:shell

各欄位說明:

  1. username:使用者名稱
  2. password:密碼欄位,現代系統通常顯示為 x*,實際密碼存放在 /etc/shadow 檔案中
  3. UID:使用者 ID,數字形式的使用者識別碼
  4. GID:群組 ID,使用者主要群組的識別碼
  5. GECOS:使用者資訊欄位,通常包含全名、辦公室、電話等資訊
  6. home_directory:使用者的家目錄路徑
  7. shell:使用者的預設 shell

範例:

root:x:0:0:root:/root:/bin/bash
john:x:1001:1001:John Doe,Room 101,555-1234:/home/john:/bin/bash
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin

  • root 是系統管理員,UID 和 GID 都是 0
  • john 是一般使用者,UID 1001,家目錄在 /home/john
  • nobody 是系統使用者,通常用於系統服務,不允許登入

注意現代 Linux 系統為了安全考量,實際的密碼雜湊值都存放在 /etc/shadow 檔案中,該檔案只有 root 可以讀取。

沒有留言:

熱門文章