Linux中如何創建、管理及查詢用戶和組
與用戶相關的配置文件有兩個,分別是 /etc/passwd 和 /etc/shadow 。前者用於保存用戶名稱,宿主目錄、登錄shell等基本信息,後者用於保存用戶密碼、賬號有效期等信息。
/etc/passwd文件的每一行內容中包含了七個用 :分隔的配置字段,從左到右各配置字段的含義分別如下:
- 第一個字段:用戶賬號的名稱,也是登錄系統時使用的識別名稱;
- 第二個字段:經過加密的用戶密碼字串,或者密碼占位符 “x”;
- 第三個字段:用戶賬號的UID;
- 第四個字段:所屬基本組賬號的GID;
- 第五個字段:用戶全名,可填寫與用戶相關的說明信息;
- 第六個字段:宿主目錄;
- 第七個字段:登錄shell等信息,用戶完成登錄後使用的shell;
/etc/shadow文件中保存了各用戶賬號的密碼等信息,共九個字段,從左到右各配置字段的含義分別如下:
- 第一個字段:用戶賬號名稱;
- 第二個字段:被加密 過的密碼,若顯示為 “!!”或星號,則表示為此用戶不能登錄到系統 ,若為空,則表示該字段不需要密碼即可登錄到系統。
- 第三個字段:上次修改密碼的時間;
- 第四個字段:密碼的最短有效天數,就是自本次修改密碼後,必須經過該天數才可再次修改密碼,默認為0,表示不進行限制;
- 第五個字段:密碼的最長有效天數,就是自本次修改密碼後,經過該天數後必須再次修改密碼,默認為99999,表示不進行限制;
- 第六個字段:提前多少天警告用戶密碼將過期,默認值為7;
- 第七個字段:在密碼過期多少天內禁用此用戶;
- 第八個字段:賬號失效時間,默認為空,表示賬號永久可用;
- 第九個字段:保留字段,目前沒有特定用途;
useradd命令——添加用戶賬號;
useradd的基本命令格式為:useradd 【選項】 用戶名
useradd命令中用於設置賬號屬性的幾個常見選項如下:
-u:指定用戶的UID,要求該UID號碼未被其他用戶使用;
-d:指定用戶的宿主目錄位置,(當和-M一起使用時,不生效);
-e:指定用戶賬號的失效時間,可使用 yyyy-mm-dd 的日期格式;
-g:指定用具的基本組名(或使用GID號);
-G:指定用戶的附加組名(或使用GID號);
-M:不建立宿主目錄,即使 etc/login.defs系統配置中已設定要建立宿主目錄;
用戶賬號具有可用的登錄密碼後,就可以從字符終端進行登錄了
root用戶可以使用passwd命令指定所有用戶名為其設置密碼 ,但普通用戶只能單獨執行passwd命令為自己更改密碼;
使用passwd命令除了可以修改賬號的密碼以外,還能夠對用戶賬號進行鎖定、解鎖,也可以將用戶的密碼設置為空(無須密碼即可登錄)。常用的選項如下:
-d:清空用戶的密碼,僅使用用戶名即可登錄系統;
-l:鎖定用戶賬戶;
-S:查看用戶賬戶的狀態(是否被鎖定);
-u:解鎖用戶賬號;
usermod命令——修改用戶賬號屬性
- -u:修改用戶的GID號;
- -d:修改用戶的宿主目錄位置;
- -e:修改用戶賬號的失效時間,可使用YYYY-MM-DD的日期格式;
- -g:修改用戶的基本組名;
- -G:修改用戶的附加組名;
- -s:指定用戶的登錄shell;
- -l:更改用戶賬號的登錄名稱;
- -L:鎖定用戶賬號;
- -U:解鎖用戶賬號;
userdel命令——刪除用戶賬號
groupadd命令——添加組賬號
gpassd命令——添加、設置、刪除組成員
-a:添加組成員用戶;
-d:刪除組成員用戶;
-M:一次性添加多個組成員用戶;
groupdel——刪除組賬號
groups命令——查詢用戶賬號所屬的組
id——查詢用戶賬號的身份標識
finger命令——查詢用戶賬號的登錄屬性
w命令——查詢當前主機的用戶登錄情況
Linux中如何創建、管理及查詢用戶和組