Linux下用戶的創建與刪除
我們在Linux下創建用戶主要有兩種方式:adduser和useradd,它們的區別以及主要用法如下:
adduser
adduser的用法很簡單,只需adduser+username即可,如下:
- sudo adduser alvin
這個命令其實是個perl腳本,它的底層還是調用useradd命令。網上很多教程說它會進行人機交互,但現在有些發行版(比如centOS)其實已經改進了,無需繁瑣的交互,只需以上一條命令即可創建用戶。
adduser命令會自動創建用戶家目錄,指定shell版本。但是,有些發行版在創建用戶的同時,會要求你設定用戶密碼,而有些不會,需要手動設置密碼。
為用戶創建密碼方法如下:
- sudo passwd alvin
useradd
useradd是一個相對復雜一些的命令,而且它的自由度更高。如果只是運行useradd+username的話,它會創建一個三無用戶,即:無用戶家目錄,無指定shell版本,無密碼。
為了順利創建一個用戶,我們還需通過一些選項來完善它的參數。useradd命令常用的選項如下:
- -c<備注>:加上備注文字。備注文字會保存在passwd的備注欄位中;
- -d<登入目錄>:指定用戶登入時的啟始目錄;
- -D:變更預設值;
- -e<有效期限>:指定帳號的有效期限;
- -f<緩沖天數>:指定在密碼過期后多少天即關閉該帳號;
- -g<群組>:指定用戶所屬的群組;
- -G<群組>:指定用戶所屬的附加群組;
- -m:自動建立用戶的登入目錄;
- -M:不要自動建立用戶的登入目錄;
- -n:取消建立以用戶名稱為名的群組;
- -r:建立系統帳號;
- -s:指定用戶登入后所使用的shell;
- -u:指定用戶id。
對于我們普通用戶而言,更常用的選項是以上標紅的三個。而對于管理人員而言,則以上所有的選項都需要掌握。我們目前重點介紹以上標紅的三個選項。
-d選項用于指定用戶家目錄,也就是用戶登錄時所進來的目錄。比如:-d /home/alvin,就是指定用戶的家目錄是/home/alvin。通常-d選項與-m選項一起使用,-m選項的作用是,如果指定目錄不存在時,則自動創建。
而-s選項則是指定用戶默認shell版本。如果不設定的話,它的默認版本是/bin/sh。所以,我們使用useradd創建新用戶時的經典用法如下:
- sudo useradd alvin -m -d /home/alvin -s /bin/bash
通過這種方式用戶可以成功創建,但還是沒有密碼。創建密碼的方式依然使用passwd命令,在此不再贅述。
userdel
刪除用戶,“userdel 用戶名”即可。最好將它留在系統上的文件也刪除掉,可以使用“userdel -r 用戶名”來實現。
- sudo userdel -r alvin
本文授權轉載自公眾號「良許Linux」。良許,世界500強外企Linux開發工程師,公眾號里分享大量Linux干貨,歡迎關注!