adduser - 添加用戶賬號(hào),與useradd是同一命令。需要root權(quán)限才能執(zhí)行(有root權(quán)限)。 在使用adduser命令時(shí),它會(huì)添加這個(gè)名,并創(chuàng)建和用戶名名稱相同的組名,并把這個(gè)用戶名添加到自己的組里去,并在/home目錄想創(chuàng)建和用戶名同名的目錄,并拷貝/etc/skel目錄下的內(nèi)容到/home/用戶名/的目錄下,并提示輸入密碼,并提示填寫相關(guān)這個(gè)用戶名的信息。
在使用命令useradd時(shí),它會(huì)添加這個(gè)用戶名,并創(chuàng)建和用戶名相同的組名,但它并不在/home目錄下創(chuàng)建基于用戶名的目錄,也不提示創(chuàng)建新的密碼。
root@xxx:/xxx# useradd myadmin # 創(chuàng)建普通用戶myadmin
用useradd命令創(chuàng)建的是一個(gè)普通用戶,不能用這個(gè)用戶名來登陸系統(tǒng)。
adduser與useradd ,這兩個(gè)命令有些不同 。
一.adduser批量添加用戶
使用adduser時(shí),創(chuàng)建用戶的過程更像是一種人機(jī)對話,系統(tǒng)會(huì)提示你輸入各種信息,然后會(huì)根據(jù)這些信息幫你創(chuàng)建新用戶。這樣我們沒有必要知道那么多的參數(shù),一樣可以達(dá)到自定義添加用戶。
步驟如下:
(1)建立用戶名列表文件username.txt
stu1
stu2
stu3
stu4
stu5
stu6
(2)批量添加的腳本文件
###在這里也可以設(shè)置用戶所屬的用戶組
for a
do
echo "/home/student/$a"
adduser --home /home/student/$a $a
done
(3)執(zhí)行該腳本文件,查看執(zhí)行過程
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]
可見,在執(zhí)行的過程中,系統(tǒng)交互式的詢問,每個(gè)用戶的設(shè)置信息。雖然簡化了新建用戶的程序,但是在批量添加用戶的過程中是不可取的。
二.useradd批量添加用戶
使用useradd時(shí),如果后面不添加任何參數(shù)選項(xiàng),例如:#sudo useradd test創(chuàng)建出來的用戶將是默認(rèn)“三無”用戶:一無Home Directory,二無密碼,三無系統(tǒng)Shell。
步驟如下:
(1)建立用戶名列表文件username.txt (同上)
(2)創(chuàng)建用戶密碼對應(yīng)文件serc.txt,格式為username:password (注意文件的格式)
stu1:tt1
stu2:tt2
stu3:tt3
stu4:tt4
stu5:tt5
stu6:tt6
(3)批量添加的腳本文件
##添加用戶,并且在/home/ 下為用戶生成用戶目錄。
cat < username.txt | xargs -n 1 useradd -m
##批處理模式下更新密碼
chpasswd < serc.txt
##將上述的密碼轉(zhuǎn)換到密碼文件和組文件
pwconv
##結(jié)束驗(yàn)證信息
echo "OK 新建完成"
(4)執(zhí)行該腳本文件,查看執(zhí)行過程
root@liu:/home/liu/Desktop/Dos# sh aa.sh
新建完成
useradd命令,在執(zhí)行沒有出錯(cuò)的情況下,不會(huì)輸出任何的信息,不會(huì)與用戶交互。但是用戶必須要記住那些設(shè)置項(xiàng)目,否則添加的用戶可能出現(xiàn)一些預(yù)想不到的結(jié)果。
總結(jié)上來講,在Ubuntu中,adduser更適合初級使用者,因?yàn)椴挥萌ビ浤切┓爆嵉膮?shù)選項(xiàng),只要跟著系統(tǒng)的提示一步一步進(jìn)行下去就行,缺點(diǎn)就是整 個(gè)創(chuàng)建過程比較復(fù)雜而漫長;而useradd比較適合有些高階經(jīng)驗(yàn)的使用者,往往一行命令加參數(shù)就能解決很多問題,所以創(chuàng)建起來十分方便。