作為一個系統管理者,可能要經常的為機器添加使用者,可能是在一台機器上添加很多使用者,也有可能是在很多機器上要添加同一個使用者。
基本上,批量添加使用者有兩種方式,一是用useradd + passwd指令配合腳本來添加,二是用newusers+chpasswd來添加。
第一個方法合适用來在不同的機器上添加不同的使用者,或者在同一台機器上添加大量的規則命名的使用者。第二個方法可用于在同一台機器上添加大量的使用者名單,如将A機上的使用者全部添加到B機上。
方法一:useradd + passwd指令配合腳本來添加
腳本的基本思想是:利用循環+判斷,從一個使用者名清單檔案中一條一條讀取使用者名,然後調用useradd指令一個使用者一個使用者進行添加。
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsISPrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdsAjMfd3bkFGazxCMx8VesATMfhHLlN3XnxCMwEzX0xiRGZkRGZ0Xy9GbvNGLpZTY1EmMZVDUSFTU4VFRR9Fd4VGdsQTMfVmepNHLrJXYtJXZ0F2dvwVZnFWbp1zczV2YvJHctM3cv1Ce-cGcq5yMwUWO5QmNycTOzIDZlhTOhNGN5kTMlljYkJTYwAzYj9CX5AzLchDMxIDMy8CXn9Gbi9CXzV2Zh1WavwVbvNmLvR3YxUjL1M3Lc9CX6MHc0RHaiojIsJye.jpg)
其中users.list檔案内容如下:
johnson lily kelly
執行結果如下圖所示:
由腳本知,使用者的初始密碼被設為使用者名+123,大家可以按需修改使用。
方法二、newusers+chpasswd批量添加使用者
1、首先我們建立使用者檔案userfile.txt和密碼檔案userpwdfile.txt;
我們要建立包含新使用者的檔案userfile.txt ;另一個是為新添加的使用者設定密碼的userpwdfile.txt;
[root@localhost ~]# touch userfile.txt [root@localhost ~]# touch userpwdfile.txt
然後用文本編輯器打開檔案userfile.txt,添加如下内容;
win00:x:520:520::/home/win00:/sbin/nologin
win01:x:521:521::/home/win01:/sbin/nologin
win02:x:522:522::/home/win02:/sbin/nologin
win03:x:523:523::/home/win03:/sbin/nologin
win04:x:524:524::/home/win04:/sbin/nologin
win05:x:525:525::/home/win05:/sbin/nologin
win06:x:526:526::/home/win06:/sbin/nologin
win07:x:527:527::/home/win07:/sbin/nologin
win08:x:528:528::/home/win08:/sbin/nologin
win09:x:529:529::/home/win09:/sbin/nologin
userfile.txt 檔案内容格式和 /etc/passwd 的格式是一樣的,必須嚴格按照/etc/passwd 的格式來書寫;上面所添加的使用者都不能登入系統,但完全能用于ftp登入,但您得在相應ftp伺服器的配置檔案中打開讓本地使用者有讀寫權限;如果您想讓上 面的部份使用者可以登入系統,可以把SHELL類似改一改,比如改成/bin/bash ;
我們再來書寫新增使用者的密碼檔案userpwdfile.txt内容;這個檔案的内容中的使用者名要與 userfile.txt使用者名相同且嚴格按照“使用者名:密碼”的格式來寫,一個使用者一行;也就是說我們先是添加了win00到win09的使用者,現在要為這些使用者更新密碼;比如下面的;
win00:123456
win01:654321
win02:123321
win03:qweewq
win04:google
win05:adadwc
win06:wsscee
win07:xxec32
win08:543wew
win09:3ce3wf
2、用newusers批量添加使用者,此時使用者是沒有密碼的
[root@localhost ~]# newusers userfile.txt
2、執行指令/usr/sbin/pwunconv,将/etc/shadow産生的shadow密碼解碼,然後回寫到/etc/passwd中, 并将/etc/shadow的shadow密碼欄删掉。這是為了友善下一步的密碼轉換工作,即先取消shadow password功能,關閉影子檔案。
[root@localhost ~]
#
pwunconv
3、用chpasswd批量修改密碼 [root@localhost ~]# chpasswd < userpwdfile.txt
作者:木木
部落格裡的文章,來自筆者在讀書與工作過程中的論文閱讀筆記、實驗筆記、讀書筆記、工作技術筆記,還有一些來自網文收藏。也許不定期還會寫一些傷春悲秋的無用之文。關于技術方面寫的一些随筆,僅供各位讀者參考,寫下來是對當時的自己有益,再過一段時間,或再過幾年,不一定對其他人還有用。文章版權方面的:躺在這裡的無用之文,未經授權不要轉載。