歡迎您光臨本站 註冊首頁

cabbage liunx學習之路之用戶與用戶組管理篇

←手機掃碼閱讀     火星人 @ 2014-03-09 , reply:0
什麼是用戶?
什麼是組?
用戶基本組,附加組

在Linux中,用戶的相關信息保存在對應的文件中,這些文件分別是:/etc/passwd和/etc/shadow.
/etc/passwd
系統的每一個合法用戶帳號都對應於該文件中的一行記錄.每行記錄定義了一個用戶帳號的屬性.可以用#cat /etc/passwd或者#vim /etc/passwd打開查看.
passwd文件中每行對應一個帳號,每個帳號由7部分組成,各部分之間用「:」分隔.分別代表
用戶名:用戶密碼(用x密碼佔位符表示):UID(用戶標識號):GID(用戶基本組標識號):備註(用戶全名及用戶信息):用戶家目錄:默認使用的shell(命令解釋程序)
/etc/shadow
Linux將用戶的口令(密碼)保存在shadow文件中,該文件不能被普通用戶讀取,只有root用戶才有權利讀取.shadow文件與passwd文件一樣,
每個用戶對應其中的一行,並且用8個冒號分成了9個部分(稱為「域」).如上圖,每段分別表示
1、用戶名:與passwd用戶名相對應.

2、用戶密碼:已被加密如果它的開頭是「$ 1 $」這意味著基於MD5演算法的加密!如果是在密碼欄的第一個字元為*或者是!,表示此賬號並不會被用來登入,
如果是!!表示帳號被鎖定(禁用),如果為空,表示用戶不需要密碼即可登陸.

3、最近更動密碼的日期:這個欄位記錄了更動密碼的那一天的日期.注意:Linux 日期的時間是以1970/01/01作為 1 ,而1971/01/01則為366,所以這
個日期是累加的天數是一個絕對時間!

4、密碼不可被更動的天數:如果是0,表示密碼隨時可以更動.如果在此期間修改系統會提示:You must wait longer to change your password
passwd: Authentication token manipulation error



5、密碼必須在限制的天數內修改的天數:必須要在這個時間之內重新設定的密碼,否則這個賬號將會暫時失效.而99999,表示密碼不需要重新輸入!

6、密碼需要修改期限前的警告期限:當賬號的密碼失效期限快要到的時候,系統會依據這個欄位的設定,發出警告(Warning: your password will
expire in 5 days)給這個賬號,提醒再過n天密碼就要失效了...

7、密碼過期的寬限時間:當密碼失效后,還可以用這個密碼在n天內進行登入. 而在這個天數后還沒有修改密碼,賬號就絕對失效了!

8、賬號失效日期:也是用1970 年以來的總天數設定.賬號在此規定的日期之後,將無法再使用.通常應用在收費服務的系統中,可以規定一個日期讓
該賬號不能再使用!
9、保留:一個欄位是保留的,看以後有沒有新功能加入

用戶組的信息保存在/etc/group和/etc/gshadow文件下

/etc/group
該文件記錄了系統中所有用戶組的信息,分為四段,各段含義如下:

1、 用戶組名稱:就是組的名字

2、 用戶組密碼:通常不需要設置,如果需要不一個用戶臨時加入其他組可能要用到.密碼記錄在/etc/gshadow中.

3、 GID:用戶組標識.

4、 用戶列表:以該組為附加組的所有帳號(如果該組是某用戶的基本組則該用戶不再此段列出),每個用戶用「,」隔開.

/etc/gshadow

與/etc/group類似,也分為四個段,各段含義如下:

1、 用戶組名稱

2、 密碼欄:同樣的,開頭為!表示無法登陸

3、 用戶管理員帳號:

4、 該用戶組的所屬帳號:與/etc/group內容相同.







帳號管理常用命令





1、 新增用戶命令:useradd

語法:useradd[-c][-d][-e][-f][-g][-G group[,...]][-m[-k skeleton_dir]/-M]

[-s][-u[-o][-n][-r] username
選項:-c【comment】新帳號說明欄,對應於/etc/passwd第五欄的內容.
-d【home_dir】設定用戶的家目錄,不設定時使用預設值.
-e【expire_date】帳號終止日期,日期的指定格式為MM/DD/YY.

-f【inactive_days】帳號過期幾日後永久停權.當值為0時帳號則立刻被停權.而當值為-1則關閉此功能.預設值為-1.

-g【initial_group】設置用戶所屬的組.

-G【group,[...]】設置用戶的附加組.

-m

-M 不建立使用者目錄.

-n

-r 建立系統帳號.

-s 【shell】使用者登錄后使用的shell

-u uid用戶ID 值.
2、添加密碼命令:passwd
格式:passwd username
選項:

註釋:使用useradd建立帳號之後,默認情況,該帳號暫時被封鎖,需要給他設置密碼才能啟用.passwd常用的方式用兩種,
一種是root用戶幫其他用戶設置或改密碼,命令格式#passwd otherusername root可以不用知道該用戶的密碼.另一種是
用戶自己改密碼直接passwd 回車即開始更改.
3、修改帳號信息命令:usermod
格式:usermod [-cdegGlsuLu] username
選項:-L 暫時凍結用戶密碼,讓其無法登陸
-U 解凍用戶密碼.
4、刪除用戶命令:userdel

語法:#userdel [-r] username

選項: -r : 連同用戶的家目錄也一起刪了,不加則只刪除帳號,不刪除家目錄.





用戶組的管理:



1、新增用戶組命令:groupadd

語法:#groupadd [-g gid] [-r] groupname

選項:-g :後邊接某個特定的GID,用來指定GID

-r :建立系統用戶組.

2、修改用戶組命令:groupmod

語法:groupmod [-g newgid] [-n newgroup_name] oldgroup_name

選項:-g :修改已有的用戶組GID號.

-n :修改已有的用戶組名稱.

註釋:不要隨意更改GID,否則容易造成系統資源的混亂.

3、刪除用戶組命令:groupdel

語法:groupdel [groupname]

註釋:要刪除一個用戶組必須確認沒有用戶使用該組作為初始用戶組.



4、設置用戶組密碼:gpasswd

語法:#gpasswd [-r] groupname

選項: :如果沒有參數,表示給groupname 設置密碼.

-r :將groupname的密碼刪除.

-R :讓groupname的密碼欄失效,所以newgrp就不能用了.

本文出自 「cabbage」 博客,請務必保留此出處http://cabbage.blog.51cto.com/2128421/550120


[火星人 ] cabbage liunx學習之路之用戶與用戶組管理篇已經有304次圍觀

http://coctec.com/docs/linux/show-post-48816.html