Ubuntu是基於linux的免費開源操作系統,同時也是真正意義上的“多任務多用戶”操作系統,既然是多用戶系統,自然就涉及到創建多個用戶的問題。同時由於Ubuntu系統中的root用戶具有最高權限,無節制地使用root用戶容易發生誤操作破壞系統,因此在Ubuntu中創建多個用戶也是很有必要的。本經驗要教大家如何使用Ubuntu命令行批量創建用戶並設置隨機密碼。首先需要明白在Ubuntu中創建一個新用戶的命令是 useradd username,如圖命令是創建了一個名為“duanzhang666”的用戶。雖然創建多個用戶可以采用重復執行useradd命令的方法實現,但是這種操作很繁瑣,如果在實驗環境中要創建100個用戶豈不是要重復輸入100遍?因此不建議采用這種方法批量創建用戶。
方法/步驟
-
Ubuntu中創建新用戶需要先獲取root管理員權限,因此先使用sudo su命令獲取最高權限。注意獲取root權限需要輸入你自己的用戶密碼。
-
批量創建20個以“duanzhang”為用戶名前綴的用戶,命令為:seq -w 20|sed -r "s#(.*)#useradd duanzhang\1#g"|bash 。在這條命令中“duanzhang”表示新建用戶的用戶名前綴,你可以修改為你需要的其他字符串;“20”表示創建20個用戶,也表示這20個用戶的用戶名后綴分別為1到20。明白這兩個字符串表達的意思后你就可以根據你自己的需要修改命令行了。
-
查看新用戶是否創建成功,命令為:tail -20 /etc/passwd 。這條命令的意思是輸出passwd文件的后20行。這里為什么是后20行呢?因為我們剛剛創建了20個新用戶,系統會將用戶名寫入到passwd文件的末尾,每一個用戶占據一行,因此后20行就是剛剛生成的20個用戶的信息。從圖中可以看到已經成功創建了用戶名為“duanzhang01”、“duanzhang01”到“duanzhang20”的20個新用戶。
-
將要修改的用戶名和密碼寫入pass.log文件中,命令為:echo duanzhang{01..20}:$((RANDOM))|tr " " "\n" >pass.log 。命令里的RANDOM表示生成隨機數,以作為隨機密碼。
-
查看生成的pass.log文件的內容,以確認是否成功寫入文件。從圖中可以看到生成了20行數據,每一行使用冒號隔開用戶名及其對應的密碼,可以看到這20個密碼並無規則,是隨機的。
-
執行chpasswd命令:chpasswd<pass.log 。其中chpasswd命令在Ubuntu中用於批量更改用戶密碼,它需要先讀取我們前一步生成的密碼文件pass.log,然后根據該文件內容修改密碼。
-
根據pass.log文件里記錄的這20個用戶的密碼逐個查看對應的隨機密碼是否有效。使用su命令切換到新用戶並輸入pass.log里記錄的對應的密碼,成功登錄,可見用戶創建成功。到此“如何在Ubuntu中批量建立用戶並設置隨機密碼”問題成功解決。