這兩個目錄在Linux中的重要性不言而喻,和你的登陸有關。
先看看/etc/passwd,示例代碼以下:shell
‘/etc/passwd’ 由 ‘:’ 分割成7個字段,每一個字段的具體含義是:ui
(1)用戶名(如第一行中的root就是用戶名),表明用戶帳號的字符串。用戶名字符能夠是大小寫字母、數字、減號(不能出如今首位)、點以及下劃線,其餘字符不合法。加密
(2)存放的就是該帳號的口令。spa
(3)這個數字表明用戶標識號,也叫作uid。系統識別用戶身份就是經過這個數字來的,0就是root。一般uid的取值範圍是0~65535,0是超級用戶(root)的標識號,1~499由系統保留,做爲管理帳號,普通用戶的標識號從500開始。生命週期
(4)表示組標識號,也叫作gid。這個字段對應着/etc/group 中的一條記錄,其實/etc/group和/etc/passwd基本上相似。進程
(5)註釋說明,該字段沒有實際意義,一般記錄該用戶的一些屬性。圖片
(6)用戶的家目錄,當用戶登陸時就處在這個目錄下。root的家目錄是/root,普通用戶的家目錄則爲/home/username,這個字段是能夠自定義的。字符串
(7)shell,用戶登陸後要啓動一個進程,用來將用戶下達的指令傳給內核,這就是shell。入門
而後是/etc/shadow這個文件,和/etc/passwd相似,用 ‘:’ 分割成9個字段。class
(1)用戶名,跟/etc/passwd對應。
(2)用戶密碼,這個纔是該帳號的真正的密碼,已經加密過。
(3)上次更改密碼的日期,計算得來的,距離1970年1月1日到上次更改密碼的日期。
(4)要過多少天才能夠更改密碼,默認是0,即不限制。
(5)密碼多少天后到期。即在多少天內必須更改密碼,默認是99999,能夠理解爲永遠不須要改。
(6)密碼到期前的警告期限。
(7)帳號失效期限。
(8)帳號的生命週期,跟第三段同樣,是按距離1970年1月1日多少天算的。它表示的含義是,帳號在這個日期前可使用,到期後帳號做廢。
(9)做爲保留用的,沒有什麼意義。
語法 : groupadd [-g GID] groupname
不加 「-g」 選項則按照系統默認的gid建立組,跟用戶同樣,gid也是從500開始的。
「-g」 選項能夠自定義gid.
命令 : groupdel
有一種狀況不能刪除組,這是由於miraclewong組中包含miraclewong帳戶,只有刪除miraclewong帳戶後才能夠刪除該組。
語法 : useradd [-u UID] [-g GID] [-d HOME] [-M] [-s]
‘-u’ 自定義UID
‘-g’ 使其屬於已經存在的某個組,後面能夠跟組id, 也能夠跟組名
‘-d’ 自定義用戶的家目錄
‘-M’ 不創建家目錄
‘-s’ 自定義shell
‘useradd’ 不加任何選項直接跟用戶名,則會建立一個跟用戶名一樣名字的組。
‘-g’ 選項後面跟一個不存在的gid會報錯,提示該組不存在。剛剛上面說過 ‘-M’ 選項加上後則不創建用戶家目錄,可是在/etc/passwd文件中仍然有這個字段。可是您使用 ls /home/user11 查看一下會提示該目錄不存在。因此 ‘-M’ 選項的做用只是不建立那個目錄。
語法 : userdel [-r] username
‘-r’ 選項的做用只有一個,就是刪除帳戶的時候連帶帳戶的家目錄一塊兒刪除。
passwd:修改密碼
mkpasswd:生成密碼
chfn:更改用戶的finger
su:用於切換用戶,切換到root用戶。
參考資料: 1.李世明《跟阿銘學Linux》 2.《Ubuntu Linux從入門到精通》