/etc/passwd
在Linux(UNIX)系統中有一個對於用戶管理至關重要的系統文件,那就是 /etc/passwd 文件,這個文件也被稱為用戶賬戶數據庫。
/etc/passwd 文件中記錄了所有用戶登錄系統時需要用到的賬戶信息,而其他系統服務和應用程序使用的系統賬戶信息也被存放在這個文件中。在這個文件中,每個用戶都會佔用一行記錄,並且使用冒號分隔出7個字段。
在 /etc/passwd 文件中每一行的第3個字段記錄的是這個用戶的 uid ,其中,root用戶的 uid 一定是0,而 1~499 的 uid 是保留給系統服務或應用程序所使用的系統賬號,我們自己建立的用戶 uid 會從500開始。每個用戶都會有一個唯一的 uid 。
第5個字段記錄的是有關這個用戶的註釋信息,也叫 finger information,如用戶的全名、電話、地址等信息。可以使用 finger 命令來顯示用戶的這一部分及相關的信息。
Linux提供了一個修改 finger information 的命令。這個命令是 chfn (應該是 change finger information 的縮寫)。
在/etc/passwd 文件中最後一個字段(列)記錄的是這個用戶登錄後第1個要執行的進程(Linux默認是 /bin/bash),也就是當用戶登錄Linux系統後,第1個執行的程序就是 shell 。如果這一列中記錄的是 /sbin/nologin ,例如: ftp 用戶的記錄,就表示這個用戶的賬戶只能使用應用程序(ftp)登錄到Linux系統中。
如果第7列中記錄的是 /sbin/false ,就表示不能使用這個用戶的賬戶登錄Linux系統。
要保證Linux系統正常工作,/etc/passwd 這個文件的權限就必須是 rw-r--r-- 。這是因為每個用戶在登錄Linux系統時都必須讀取/etc/passwd 這個文件中有關自己的記錄,所以必須將這個文件的讀權限開放給系統中的每個用戶。
偷偷告訴你:使用chmod 命令修改 /etc/passwd 文件的使用權限,就可以讓普通用戶無法讀取/etc/passwd 文件中的信息而無法正常工作。