用戶賬戶管理
理論
?/etc/passwd 該目錄用于保存用戶名,宿主目錄,登錄shel等基本信息
/etc/shadow ?該目錄用于保存 用戶密碼,賬戶有效期等信息
圖上每一行中都有用“:”隔斷的字段
字段含義:
第1字段:用戶賬號的名稱,也是登錄系統時使用的識別名稱
第2字段:經過加密的用戶密碼字符串,或者密碼占位符“x”
第3字段:用戶賬號的 UID。
第4字段:所屬基本組賬號的 GID,
第5字段:用戶全名,可填寫與用戶相關的說明信息,
第6字段:宿主目錄,即該用戶登錄后所在的默認工作目錄
第7字段:登錄 Shell等信息,用戶完成登錄后使用的Shell。
Shadow 文件中的配置行格式
Shadow 文件的每一行包含9個“:”隔離字段
字段含義
第1個字段:用戶賬戶名稱
第2個字段:使用(SHA-512)加密的密碼字符串信息
第3個字段:上次修改密碼的時間,表示從1970年1月1日算起到最近一次修改密碼時間間隔天數
第4字段:密碼的最短有效天數。自本次修改密碼后,必須在該天數后才能再次修改密碼默認值為 0,表示不進行限制。
第5字段:密碼的最長有效天數。自本次修改密碼后,經過該天數以后必須再次修改密碼否則密碼將失效。默認值為 99999,表示不進行限制,
第6字段:提前多少天警告用戶密碼將過期,默認值為7.
第7字段:在密碼過期之后多少天內禁用此用戶
第8字段:賬號失效時間。此字段指定了用戶賬號作廢的天數(從1970年01月 01日起計算)默認值為空,表示賬號永久可用。
第9字段:保留字段,目前沒有特定用途
添加,修改,刪除用戶賬戶
格式:useradd [選項] 用戶名 (添加用戶賬號)
選項:
- -u:指定用戶的UID,要求該UID未被其他用戶使用
- -d:指定用戶的宿主目錄位置(當與-M選項一起使用時,不生效)
- -e:指定用戶的賬戶失效時間,可使用YYYY-MM-DD的日期格式
- -g:指定用戶的基本組名(或使用GID)
- -G:指定用戶的附加組名(或使用GID)
- -M:不建立宿主目錄,即使/etc/ogin.defs系統配置中已設定要建立宿主目錄
- -s:指定用戶的登錄Shell
格式:userdel [用戶名]:刪除用戶賬號
-r:同時刪除宿主目錄
創建用戶示例
創建用戶指定組示例
圖上是創建一個新用戶名為li并將li 添加到wheel組并附加到root組
?Passwd 命令為用戶添加密碼?
在root下修改其他用戶密碼示例
普通用戶更改密碼示例
普通用戶更改密碼需要輸入舊密碼驗證
用戶賬號設置密碼、鎖定、解鎖
格式:passwd [選項] [用戶名]
選項:
- 空為設置密碼
- -d:清空指定用戶的密碼,僅使用用戶名即可登錄系統
- -1:鎖定用戶賬號
- -S:查看用戶賬號的狀態(是否被鎖定)
- -u:解鎖用戶賬號
示例
Usermod 命令修改賬戶屬性
格式:usermod [選項] [用戶名]
選項:
- -u:修改用戶的UID
- -d:修改用戶的宿主目錄位置
- -e:修改用戶的賬戶失效時間,可使用YYYY-MM-DD的日期格式
- -g:修改用戶的基本組名(或使用GID)
- -G:修改用戶的附加組名(或使用GID)
- -s:指定用戶的登錄Shell
- -l:更改用戶賬號的登錄名稱(Login Name)
- -L:鎖定用戶賬戶
- -U:解鎖用戶賬號
用戶賬號的初始配置文件
配置文件都來自于賬號模版目錄/etc/skel/,基本上都是隱藏文件
- .bash_logout:文件中的命令將在用戶每次退出登錄時被執行
- .bash_profile:文件中的命令將在用戶每次登錄時被執行
- .bashrc:文件中的命令會在每次加載‘/bin/Bash’程序(包括登錄系統)時被執行
如果希望為所有用戶添加登錄后自動運行的命令程序,修改/etc目錄下的相似文件即可
組賬戶管理
組賬號文件
配置文件
- /etc/group:保存組賬號名稱、GID、組成員等信息
- /etc/gshadow:保存組賬號的加密密碼字符串等信息
添加,管理,刪除組賬戶、
格式:groupadd [組賬號名稱]
示例
創建lishi 組
gpasswd 命令添加,設置,刪除成員
選項 -a 添加 -d 刪除
示例 向lishi組添加用戶并刪除用戶
示例同時添加多用戶到組
groupdel 命令刪除組
刪除組后已經查看不到組了
管理目錄和文件屬性
權限字符在文件和目錄中的含義
詢文件信息
查詢出來文件信息開頭部分有11個字符
第1個字符 :表示文件類型
第2~4個字符:表示屬主用戶對該文件的訪問權限
第5~7個字符:表示屬組里的所有用戶該文件訪問權限
第8~10個字符:表示其他用戶對文件夾的訪問權限
第11個字符:表示擴展屬性
權限 | 文件 | 目錄 |
r(4) | 查看文件內容 | 查看目錄內容(顯示子目錄、文件列表) |
w(2) | 修改文件內容 | 修改目錄內容(在目錄中新建、移動、刪除文件或子目錄) |
x(1) | 執行該文件(程序或腳本) | 執行cd命令進入或退出該目錄 |
設置目錄和文件的權限
chmod 命令更改文件權限
格式 chmod ?[ugoa...][+ - =][rwx] 文件或目錄