2008-03-10

newusers - 新增 n 筆帳號

這幾天一直沒啥空寫 blog,不是要鎖IP,就是要在某學生的練習機上面新增 300 筆帳號,這一筆一筆敲指令可是很累人的,好在網路上已有不少教學。

開始前先複習一下 /etc/passwd 的各項參數。
[ jonny@gutsy ~ ]
$ cat /etc/password | grep jonny [Enter]
jonny:$1$eb30c0TU$r4ZosogN/Aev83kMS/erq5:1000:1000:Chu-Siang,,,:/home/jonny:/bin/bash
  • jonny: 使用者名稱 (Login name)。
  • $1$eb30c0TU$r4ZosogN/Aev83kMS/erq5: 加密後的密碼 (Password)。
  • 1000: 使用者識別碼 (User Identifier)。
  • 1000: 所屬群組識別碼 (Group Identifier)。
  • Chu-Siang,,,: 註解。
  • /home/jonny: 使用者家目錄 (Home directory)。
  • /bin/bash: Shell 路徑。

1. 使用 OpenOffice.org Spreadsheet 建立帳號檔 (newuser_list) 並儲存成 csv 格式,其內容需依照以下格式輸入。
stu001::600:600:stu:/home/stu001:/bin/bash
stu002::601:601:stu:/home/stu002:/bin/bash
stu003::602:602:stu:/home/stu003:/bin/bash
stu004::603:603:stu:/home/stu004:/bin/bash

# uid 建議使用大於 1100 的數字,不然會發生練習帳號具有 admin, ssh ... 之權限權限問題。


在 Spreadsheet 裡遇到需要累加的部分可以獨立出來讓他累加,如上圖。

2. 使用 gedit 將分隔的符號取代掉 (分隔符號可能為 ", 空格)。
開啟 gedit 後按 Ctrl + H 開啟取代視窗,注意!縮排的代號為 \t

3. 建立帳號
[ jonny@gutsy ~ ]
$ sudo newusers < newuser_list.csv [Enter]

4. 將 /etc/shadow 內的密碼欄資料寫回 /etc/passwd 當中, 並刪除 /etc/shadow 檔案
[ jonny@gutsy ~ ]
$ sudo pwunconv [Enter]


站內連結:
chpasswd - 修改多筆密碼

相關連結:
鳥哥 - pwunconv
OLS3 - 大量建帳號工具程式 cmpwd 1.0.0 RHS (教育版)

資料來源:
OLS3 - RedHat 6.0 大量建帳號的方法