1. 程式人生 > >usermod命令、用戶密碼管理以及mkpasswd命令

usermod命令、用戶密碼管理以及mkpasswd命令

三周第二次課

usermod命令

usermod:更改用戶屬性的命令。

usermod -u UID 用戶名:更改一個用戶的UID。

usermod -g GID(或組名) 用戶名:更改一個用戶的GID。(組一定要存在,否則會報錯)

usermod -d 家目錄 用戶名:更改一個用戶的家目錄。(若這個家目錄不存在,則這條命令不會去自動創建這個家目錄,只是在/etc/passwd裏面可以看到家目錄已經變更,這時用戶無法正常登陸)

usermod -s shell環境 用戶名:更改一個用戶的登陸shell。

技術分享圖片


usermod -G 組名(或GID) 用戶名:更改一個用戶的擴展組。

usermod -aG 組名(或GID) 用戶名:把這個用戶添加到某個擴展組裏。(-a代表附加,若這個用戶已經有了一個擴展組,不加-a的話,會重新指定其擴展組而不是添加一個擴展組)

每個用戶至少是一個組(主組,用戶創建時生成)的成員,並且可能是其他多個擴展組的成員。主組(GID)只能有一個,而擴展組可以有多個。

技術分享圖片


用戶密碼管理

passwd -l 用戶名:鎖定一個用戶。

passwd -u 用戶名:解鎖用戶。

技術分享圖片

技術分享圖片


usermod -L 用戶名:鎖定一個用戶。

usermod -U 用戶名:解鎖用戶。

技術分享圖片


使用上述兩種方法鎖定用戶的效果都是一樣的。root用戶還是可以切換到被鎖定的用戶,因為root的權限很高,不需要密碼驗證就可以直接切過去。但是如果直接使用被鎖定的用戶登陸系統,或者從其他用戶切到這個用戶時,就會提示無法登陸。(使用passwd命令鎖定用戶時,/etc/shadow裏面用戶密碼前會多兩個感嘆號;使用usermod命令鎖定用戶時,/etc/shadow裏面用戶密碼前會多一個感嘆號)


passwd 用戶名:更改用戶密碼。(要輸入兩次)

echo "新密碼" |passwd 用戶名 --stdin :更改用戶密碼。(因為使用passwd命令需要輸兩遍密碼,所以需要加上--stdin選項,否則會報錯,修改不成功)

echo -e "新密碼\n新密碼" |passwd 用戶名:更改用戶密碼。(echo -e代表處理後面“”中的特殊字符,\n代表換行)

技術分享圖片

技術分享圖片


mkpasswd命令

mkpasswd:隨機生成密碼的工具。包括大小寫字母、數字和特殊符號。

要使用這個命令,需要先安裝一個包,yum -y install expect。

技術分享圖片


一般生成的密碼默認是9位。

mkpasswd -l 位數:指定生成密碼的位數。

mkpasswd -s 個數:指定生成的密碼中特殊符號的個數。

技術分享圖片


usermod命令、用戶密碼管理以及mkpasswd命令