用戶名文件
先來看看 /etc/passwd文件的內容。
[[email protected] ~]# cat /etc/passwd | head
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
擴展:
head命令用來查看文件內容的前多少行或多少字節的內容。
命令用法
-c 用來獲取前多少字節的內容,還可加上單位,默認是字節。1(byte) 、1k(1KB)、1m(1MB)
-n用於獲取前多少行
-q 獲取多個文件的時候不顯示文件頭部
-v 獲取多個文件的內容是顯示頭部,也是默認選項
http://blog.sina.com.cn/s/blog_167f23bf50102x8ql.html (詳細鏈接)
head前面的“|”叫做管道符,它的作用是把前面命令的輸出再輸入給後面的命令。
/etc/passwd解說
/etc/passwd由“:”分割成 7 個字段,每個字段的具體含義是:
(1)用戶名(如第一行中的root就是用戶名),代表用戶賬號的字符串。用戶名字符可以是大小寫字母、數字、減號(不能出現在首位)、點以及下劃線,其他字符不合法。雖然用戶名中可以出現點,但不建議使用,尤其是首位為點時,另外減號也不建議使用,因為容易造成混淆。
(2)第二個字段存放的是該賬號的口令,這是為什麽顯示是“x”呢?早期的Unix系統口令確實是存放在這裏,但基於安全因素,後來就將其存放到“/etc/shadow”中了,在這裏只用一個“x”代替。
(3)這個數代表用戶標識號,也叫作uid。系統識別用戶身份就是通過這個數字來的,0就是root,也就是說我們可以修改test用戶的uid為0,那麽系統會認為test和root為同一個賬戶。uid的取值範圍是0~65535(但實際上已經可以支持到4294967294),0是超級用戶root的標識號,1~499由系統保留,作為管理賬號,普通用戶的標識號從500開始,如果我們自定義建立一個普通用戶,你會看到該賬號的標識號是大於或等於500的。
(4)表示組標識號,也叫作gid。這個字段對應著/etc/group中的一條記錄,其實/etc/group和/etc/passwd基本上類似。
(5)註釋說明,該字段沒有實際意義。通常記錄該用戶的一些屬性,例如姓名、電話、地址等等。不過,當你使用finger(finger用來顯示用戶名、用戶全名、終端設備號和登錄時間等信息)的功能時就會顯示這些信息的。
(6)用戶的家目錄,當用戶登錄時就處在這個目錄下。root的家目錄是/root,普通用戶的家目錄則為/home/username,用戶家目錄是可以自定義的。比如,建立一個普通用戶test1,要想讓test1的家目錄在/data目錄下,只要修改/etc/passwd文件中對應該用戶那行中的文本字段為/data即可。
(7)用戶的shell。用戶登錄後要啟動一個進程,用來將用戶下達的指令傳給內核,這就是shell。Linux的shell有很多種sh、csh、ksh、tcsh、bash等。而Redhat/ContOS的shell就是bash.查看/etc/passwd文件,該字段除了/bin/bash外還有/sbin/nologin比較多,他表示不允許該賬號登錄,那麽就可以把該字段改成/sbin/nologin
默認是/bin/bash。
本文出自 “12350027” 博客,謝絕轉載!
用戶名文件