歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> SHELL編程

批量建用戶的Shell腳本

群友提供的shell批量創建用戶的小腳本,我把它記下來:

#!/bin/bash

for user in `cat /opt/userlist.txt`

do

     useradd $user

     echo linux | passwd --stdin $user

     echo "$user successfully!!!"

done

cd /opt

chpasswd < /opt/userpasswd.txt

pwconv

#在/opt目錄下新建userlist.txt和userpasswd.txt,userlist.txt的格式是:

user1

user2

userpasswd.txt的格式:

user1:passwd1

user2:passwd2

網上又找到另一種批量建賬號的辦法:

Linux系統提供了創建大量用戶的工具,可以讓您立即創建大量用戶,方法如下:

  (1)先編輯一個文本用戶文件,每一列按照/etc/passwd密碼文件的格式書寫,要注意每個用戶的用戶名、UID、宿主目錄都不可以相同,其中密碼欄可以留做空白或輸入x號。一個范例文件user.txt內容如下:

  user001::600:100:user:/home/user001:/bin/bash

  user002::601:100:user:/home/user002:/bin/bash

  user003::602:100:user:/home/user003:/bin/bash

  user004::603:100:user:/home/user004:/bin/bash

  user005::604:100:user:/home/user005:/bin/bash

  user006::605:100:user:/home/user006:/bin/bash

  (2)以root身份執行命令/usr/sbin/newusers,從剛創建的用戶文件user.txt中導入數據,創建用戶:

  # newusers < user.txt

  然後可以執行命令vipw或vi /etc/passwd檢查/etc/passwd文件是否已經出現這些用戶的數據,並且用戶的宿主目錄是否已經創建。

  3)執行命令/usr/sbin/pwunconv,將/etc/shadow產生的shadow密碼解碼,然後回寫到/etc/passwd中,並將/etc/shadow的shadow密碼欄刪掉。這是為了方便下一步的密碼轉換工作,即先取消shadow password功能。

  # pwunconv

  (4)編輯每個用戶的密碼對照文件,范例文件passwd.txt內容如下:

  user001:密碼

  user002:密碼

  user003:密碼

  user004:密碼

  user005:密碼

  user006:密碼

  (5)以root身份執行命令/usr/sbin/chpasswd,創建用戶密碼,chpasswd會將經過/usr/bin/passwd命令編碼過的密碼寫入/etc/passwd的密碼欄。

  # chpasswd < passwd.txt

  (6)確定密碼經編碼寫入/etc/passwd的密碼欄後,執行命令/usr/sbin/pwconv將密碼編碼為shadow password,並將結果寫入/etc/shadow。

  # pwconv

  這樣就完成了Linux批量用戶的創建了,之後您可以到/home下檢查這些用戶宿主目錄的權限設置是否都正確,並登錄驗證用戶密碼是否正確。

Copyright © Linux教程網 All Rights Reserved