每一個使用者都由一個惟一的身份來辨別,這個辨別叫做使用者ID.系統中的每一個使用者也至少需要屬于一個"使用者分組".同樣,使用者分組屯是由一個惟一的身份來辨別的,該辨別叫做使用者分組ID(GID).每位使用者的權限可以被定義為普遍使用者或者根使用者,普通使用者隻能通路其擁有的或者有權限執行的檔案.根使用者能夠通路系統全部的檔案和程式,根使用者通常也被稱為"超級使用者"其權限是系統中最大的,可以執行任何操作.
使用者群組檔案
使用者賬号--passwd
/etc/passwd檔案用于使用者登入時校驗使用者登入名.加密的密碼資料項,使用者ID(UID),預設使用者分組ID(GID),使用者資訊,使用者登入子目錄和登入後使用的shell.這個檔案的每一行儲存一個使用者的資料,而使用者資料的每一個資料項采用冒号":"分隔.如下
LOGNAME:PASSWORD:UID:GID:USERINFO:HOME:SHELL
通常UID為0這個特殊值的使用者登入名為"root",從0到99的UID保留用做系統使用者的UID.如果在/etc/passwd檔案中有兩個不同的入口項有相同的UID,則這兩個使用者對檔案具有相同的存取權限.
每一個使用者都需要有地方儲存專屬于自己的配置檔案,這需要讓使用者服務工作在自己定制的操作環境中以免改變其它使用者定制的操作環境,這個地方就叫做使用者登入子目錄,在這個目錄中,使用者不僅可以儲存自己的配置檔案,還可以儲存自己日常工作用到的各種檔案.出于一緻性考慮,大多數站點都從/home開始安排使用者登入子目錄.并把每個使用者的子目錄命名為其上機使用的登入名.
當使用者登入進入系統時,都有一個屬于自己的操作環境,使用者遇到的第一個程式叫做shell.在LINUX系統裡,大多數shell都是基于文本的,LIUNX作業系統帶有好幾種SHELL供使用者選用,使用者可以在/etc/shells檔案中看到它們中的絕大多數.使用者可以根據自己的喜好來選用不同的SHELL進行操作,按照最嚴格定義,在上面的/etc/passwd檔案中,每個使用者的密碼資料項中并沒有定義需要運作某個特定的SHELL,其中列出的是這個使用者上機後第一個運作的程式是哪個.
下面檢視下/etc/passwd檔案.
使用者影子檔案--shadow
LINUX使用不可逆的加密算法如DES來加密密碼,是以黑客從密文是得不到明文的.檔案的每行是8個冒号分割的9個域,如下:
username:passwd:lastchg:min:max:warn:inactive:expire:flag
解釋一下:
username:使用者登入名
passwd:加密的使用者密碼
lastchg:表示從1970年1月1日起到上次修改密碼所經過的天數
min:表示兩次修改密碼之間至少經過的天數
max:表示密碼還會有效的最大天數,如果是99999則表示永不過期
warn:表示密碼失效前多少天内系統向使用者發出警告
inactive:表示禁止登入前使用者名還有效的天數
expire:表示使用者被禁止登入的時間
flag:保留域,暫未使用
下面看其檔案.
下面看使用者組賬号檔案---group
内容如下
使用者分組名:加過密的使用者分組密碼:使用者分組ID号:以逗号分隔的成員使用者清單
組賬号檔案--gshadow
其格式如下:
使用者組名:加密的組密碼:組成員清單
使用pwk和grpck指令驗證使用者群組檔案
pwk用來驗證使用者賬号檔案(/etc/passwd)和影子檔案(/etc/shadow)的一緻性.其驗證檔案中的每一個資料項中每個域的格式和資料的正确性.如果發現錯誤,該指令将會提示使用者對出現錯誤的資料項進行删除.
主要驗證每個資料項是否具有:正确的域數目,惟一的使用者名,合法的使用者群組辨別.合法的主要組群,合法的主目錄,合法的登入SHELL.
顯示使用者原來的使用者賬号檔案
然後進行編輯,在最後一行添加一項并不存在的資料項.再進行儲存退出.
然後驗證出系統并不存在super使用者,提示要不要删除.
對于組賬号同樣如此
檢視原檔案.
增加一項并不存在的TEXT項.
可看見同樣驗證出來了,并删除.
使用指令行方式管理使用者群組
使用useradd指令添加使用者使用指令格式:useradd 選項 使用者名
參數:-c 描述新使用者賬号,通常為使用者全名.
-d: 設定使用者主目錄,預設值為使用者的登入名,并放在/home目錄下.
-D:建立新賬号後儲存為新賬号設定的預設資訊
-e:用YYYY-MM-YY格式設定賬号過期日期.
-f inactivity:設定密碼失效時間.為0時,密碼失效後賬号立即失效;為-1時,使該選項失效.
-g:設定基本組
-k:架構目錄:設定架構目錄,該目錄包含使用者的初始配置檔案,建立使用者時該目錄下的檔案都被複制到使用者主目錄下
-m:自動建立使用者主目錄,并把架構目錄(預設為/etc/skel)下的檔案複制到使用者主目錄下.
-M:不建立使用者主目錄
-r:允許保留的系統賬号使用使用者ID建立一個新賬号.
-s shell類型:設定使用者使用的登入SHELL類型
-u 使用者ID:設定使用者ID.
建立一個使用者名為xiao,描述資訊為ming,使用者組為yang,登入shell為/bin/sh登入主目錄為/home/xiao.
并指定密碼.
這裡并指定使用者ID,賬戶過期日期.
使用usermod指令修改使用者資訊
使用格式:usermod 選項 使用者名
參數與上面的一樣.
将使用者you,的組改為buding,其使用者ID改為5600.
使用userdel指令删除使用者
格式為:userdel 選項 使用者名
-r:删除賬号時,連同賬号主目錄一起删除。
#userdel manager
使用groupadd指令建立使用者組
使用格式:groupadd 選項 使用者組名
-g gid: 組ID值
-o:配合上面的參數選項使用,可以設定不惟一的組ID值。
-r:此參數用來建立系統賬号
-f:新增一個已經存在的組賬号,系統會出現錯誤資訊然後結束該指令執行操作,如果是這樣的情況,不新增這個群組;如果新增的組所使用的GID系統已經存在。
建立一個GID為5425,組名為testbed的使用者組。然後再次建立同樣的組名,建立失敗,可驗證必須惟一。
使用groupmod指令修改使用者組屬性
使用格式:groupmod 選項 使用者組名
參數:-g gid:組ID值。
-o:配合上面的參數使用
-n group_name:更改組名
使用groupdel指令删除使用者組
這個指令比較簡單
下面來看使用使用者管理器管理使用者群組。
打開開始/系統設定/使用者群組群。
建立使用者
點添加使用者
輸入相關資訊,點确定
下面來修改使用者屬性
點使用者右鍵選擇屬性
可看到登入SHELL有好幾種
設定帳号過期時間
設定密碼過期。
設定加入組群。
下面看下建立組群
點添加組群
确定
看建立好的屬性
可修改組名
可加入使用者
本文轉自yangming1052 51CTO部落格,原文連結:http://blog.51cto.com/ming228/106425,如需轉載請自行聯系原作者