Linux中/etc/passwd文件與/etc/shadow文件解析.


此文章轉載自"慧可",用來學習.

1. /etc/passwd文件

  

  1.1 /etc/passwd文件內容格式

    用戶名: 密碼 : uid  : gid :用戶描述:主目錄:登陸shell

    舉個例子:

    

 


用戶名:
每個用戶的標識字符串

密碼:這里的x表示是暗文顯示。如果是其他什么數字,就代表是密碼明文。

uid:每個用戶必須被分配一個userid,”0”為root保留ID.1-99為系統保留,分配給系統預定義帳號。Linux用戶可以分為3類:超級用戶(root  用戶標識號是0)、管理用戶和普通用戶。

系統中有一類用戶稱為偽用戶(psuedo users),這些用戶在/etc/passwd文件中也占有一條記錄,但是不能登錄,因為它們的登錄Shell為空。
它們的存在主要是方便系統管理,滿足相應的系統進程對文件屬主的要求。

  /etc/passwd文件中常見的偽用戶

偽  用  戶
含     義
bin
擁有可執行的用戶命令文件
sys
擁有系統文件
adm
擁有帳戶文件
uucp
UUCP使用
lp
lp或lpd子系統使用
nobody
NFS使用
  除了上面列出的偽用戶外,還有許多標准的偽用戶,例如:audit, cron, mail, usenet等,它們也都各自為相關的進程和文件所需要。
 
gid :字段記錄的是用戶所屬的用戶組。它對應着/etc/group文件中的一條記錄。

  

用戶描述:字段記錄着用戶的一些個人情況,例如用戶的真實姓名、電話、地址等,這個字段並沒有什么實際的用途。

主目錄:用戶的起始工作目錄,它是用戶在登錄到系統之后所處的目錄。在大多數系統中,各用戶的主目錄都被組織在同一個特定的目錄下,而用戶主目錄的名稱就是該用戶的登錄名。各用戶對自己的主目錄有讀、寫、執行(搜索)權限,其他用戶對此目錄的訪問權限則根據具體情況設置。

登陸shell:用戶登錄后,要啟動一個進程,負責將用戶的操作傳給內核,這個進程是用戶登錄到系統后運行的命令解釋器或某個特定的程序,即Shell。Shell是用戶與Linux系統之間的接口。Linux的Shell有許多種,每種都有不同的特點。常用的有sh(BourneShell),csh(CShell),ksh(KornShell),tcsh(TENEX/TOPS-20typeCShell),bash(BourneAgainShell)等。系統管理員可以根據系統情況和用戶習慣為用戶指定某個Shell。如果不指定Shell,那么系統使用sh為默認的登錄Shell,即這個字段的值為/bin/sh。

若此處shell為:/sbin/nologin,則代表這個用戶不能登錄。這樣做的好處是,ftp用戶只能通過ftp登錄ftp服務器,而不能登錄到shell中。

2. /etc/shadow 文件內容格式

  Linux中 /etc/shadow文件中的記錄行與/etc/passwd中的一一對應,它由 pwconv 命令根據/etc/passwd中的數據自動產生。它的文件格式與/etc/passwd類似,由若干個字段組成,字段之間用“:”隔開,文件的每行是8個冒號分割的9個域,格式如下: 

username: passwd: lastchg: min: max: warn: inactive: expire: flag 

登錄名:加密口令:最后一次修改時間:最小時間間隔:最大時間間隔:警告時間:不活動時間:失效時間:標志

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM