linux下使用adduser與useradd命令批量添加用戶


在linux下添加用戶的命令有 adduser與useradd ,這兩個命令有些不同 。下面結合批量添加用戶來說明。

一.adduser批量添加用戶

       使用adduser時,創建用戶的過程更像是一種人機對話,系統會提示你輸入各種信息,然后會根據這些信息幫你創建新用戶。這樣我們沒有必要知道那么多的參數,一樣可以達到自定義添加用戶

  步驟如下:

  (1)建立用戶名列表文件username.txt  

 stu1
 stu2
 stu3
 stu4
stu5
stu6

  (2)批量添加的腳本文件  

###在這里也可以設置用戶所屬的用戶組
for
a do echo "/home/student/$a" adduser --home /home/student/$a $a done

      (3)執行該腳本文件,查看執行過程

root@liu:/home/liu/Desktop/Dos# sh t.sh `cat < username.txt` /home/student/stu1
Adding user `stu1' ...
Adding new group `stu1' (1002) ...
Adding new user `stu1' (1001) with group `stu1' ...
Creating home directory `/home/student/stu1' ...
Copying files from `/etc/skel' ...
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully
Changing the user information for stu1
Enter the new value, or press ENTER for the default
    Full Name []: 
    Room Number []: 
    Work Phone []: 
    Home Phone []: 
    Other []: 
Is the information correct? [Y/n] 

可見,在執行的過程中,系統交互式的詢問,每個用戶的設置信息。雖然簡化了新建用戶的程序,但是在批量添加用戶的過程中是不可取的。

二.useradd批量添加用戶

   使用useradd時,如果后面不添加任何參數選項,例如:#sudo useradd test創建出來的用戶將是默認“三無”用戶:一無Home Directory,二無密碼,三無系統Shell。

  步驟如下:

  (1)建立用戶名列表文件username.txt (同上)

  (2)創建用戶密碼對應文件serc.txt,格式為username:password (注意文件的格式)   

stu1:tt1
stu2:tt2
stu3:tt3
stu4:tt4
stu5:tt5
stu6:tt6

   (3)批量添加的腳本文件aa.sh

##添加用戶,並且在/home/ 下為用戶生成用戶目錄
cat < username.txt | xargs -n 1 useradd -m
##批處理模式下更新密碼 chpasswd
< serc.txt
##將上述的密碼轉換到密碼文件和組文件 pwconv
##結束驗證信息 echo
"OK 新建完成"

(4)執行該腳本文件,查看執行過程

root@liu:/home/liu/Desktop/Dos# sh aa.sh 
新建完成

         useradd命令,在執行沒有出錯的情況下,不會輸出任何的信息,不會與用戶交互。但是用戶必須要記住那些設置項目,否則添加的用戶可能出現一些預想不到的結果。

         總結上來講,在Ubuntu中,adduser更適合初級使用者,因為不用去記那些繁瑣的參數選項,只要跟着系統的提示一步一步進行下去就行,缺點就是整 個創建過程比較復雜而漫長;而useradd比較適合有些高階經驗的使用者,往往一行命令加參數就能解決很多問題,所以創建起來十分方便。

 

參考:

http://www.5dlinux.com/article/1/2009/linux_33277.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM