方法一
一個系統管理者日常最常處理的工作便是管理使用者帳號了
包含增加和減少使用者
配置硬盤配額
開啟個人首頁等等
而在系統建置的初期面對要增加大量使用者而要回答adduser(useradd)的一些相關使用者信息便常要浪費相當多時間
況且又沒有留下相關的記錄
常讓系統管理者痛苦不已
更別說後續的管理動作了
pdadduser正可以解決這種困擾
不僅可以依需要快速方便建立大量使用者帳號
使用者的密碼可以是采隨機或指定的方式組成
而帳號
UID
家目錄都可由系統管理者自行選擇設定
並可以搭配相關指令使用
深具彈性
並留有相關的記錄
可以大量減輕管理者負擔
筆者在本文中將使用簡單的范例來說明在Linux和FreeBSD這兩套系統下的使用方式
更詳細的說明可以參考~pdavis/
安裝
pdadduser目前最新的版本是
但是經筆者測試
某些系統
版並無法執行
此時請改用
版〔筆者均mirror於〕
此外由Linux和FreeBSD這兩套系統下建立使用者帳號並不盡相同
所以筆者將分兩部分說明
Linux 安裝
step
tar xvfz pdadduser
tar
gz ← 解壓縮Pdadduser軟件
step
cd pdadduser
← 切換到pdadduser
目錄中
step
make ← 編輯pdadduser
step
gcc pause
c –o pause ← 有時該檔會有問題
所以編輯一下
當產生pdadduser
pause 這兩個可執行檔即可
FreeBSD 安裝
step
tar xvfz pdadduser
tar
gz ← 解壓縮Pdadduser軟件
step
cd pdadduser
← 切換到pdadduser
目錄中
step
gcc –Wall –I
I
pdadduser –o pdadduser ← 編輯pdadduser
step
gcc pause
c –o pause ←編輯 pause
當產生pdadduser
pause 這兩個可執行檔即可
指令格式
pdadduser完整的指令格式如下
筆者在本文中僅作簡單的說明
更詳細的使用方式請參考解開的README
pdadduser
n [
f ] [
F ] [
o ] [
h home
directory
format>] [
g ] [
r ] [
p ] [
t] [
d]
c COMMAND
[COMMAND
]
選項說明
n
使用者清單的文字文件檔案
這是必需的
例如檔案內容如下所示
Peter Davis
Joe Schmoe
Jane Doe
f
使用者名稱的組合格式
格式定義如下
$n
第n個字(起始字是 $
)
如果不存在則忽略
%x
n
第n個字中第x個字符
如果不存在則忽略
例如 %
$
是取第
個字中第
個字符和第
個字組合而成(預設也是如此)
所以套用上面范例取得的使用者名稱分別是 `pdavis
`jschmoe
`jdoe
%
$
是取第
個字中第
個字符和第
個字組合而成
所以套用上面范例取得的使用者名稱分別是 edavis
schmoe
edoe
F
使用者全名的組合格式
格式定義和
f 相同
例如 $
$
是取第
個字空格和第
個字組合而成(預設也是如此)
所以套用上面范例取得的使用者全名分別是 Peter Davis
Joe Schmoe
Jane Doe
而%
$
取得的是 P
Davis
J
Schmoe
J
Doe
o
輸出檔案
包含使用者名稱
密碼和錯誤訊息等
請務必放置安全的地方
當然有此檔案則系統管理者應可玩出一些把戲才是
如果輸出檔名為
則僅自屏幕輸出
筆者並不建議使用
此外錯誤訊息如 !
!!
! 等
請見下面范例
可以提醒管理者注意
h
使用者家目錄格式
首先定義ㄧ些特殊字符如下
u
使用者名稱
g
使用者群組
f
使用者全名
使用者家目錄格式
格式定義如下
$
整個字
%n
字中第n個字符
例如 /home/$g/$u 依上例是 /home/users/pdavis
假設使用者名稱是 S
家目錄希望是/home/users/S/
/S
則格式應為 /home/users/%
u/%
u%
u/$u
預設格式是 /home/$u
g
使用者群組
r
UID范圍
預設是
到
p
預設是系統隨機數產生
當然也可自訂
如 %xr 為隨機數產生 r 個字符
預設是
個字符
t
測試模式
並不真正增加使用者
d
除錯模式
可看到每一指令的執行過程
c COMMAND
[COMMAND
]
這是pdadduser最重要的部份
也就是pdadduser提供相關的參數給COMMAND執行
詳細的范例在下
其中參數如下
$u
使用者名稱
$p
使用者密碼
$i
使用者UID
$g
使用者群組
$f
使用者全名
$d
使用者家目錄
執行
在了解指令的參數之後
我們便可以利用pdadduser來新增使用者了
但由於Linux和FreeBSD稍有不同
筆者分別說明之
Linux
首先建立使用者清單的文字文件檔案
范例如上
取名 userlists
另外筆者也建立一個shell可執行檔
內容如下
取名 pda
linux
/pdadduser
n $
o $
g users
d
c \
/usr/sbin/adduser
c
$f
u $i
g $g
d $d $u \
(printf
$p
;
/pause
; printf
$p
) | /usr/bin/passwd $u; \
mkdir $d/public_html \
cp l
samp $d/public_html/l \
chown
R $u
$g $d/public_html \
chmod
$d \
edquota
p shie $u
pda
linux執行檔的意思是
/usr/sbin/adduser
c
$f
u $i
g $g
d $d $u 增加使用者
(printf
$p
;
/pause
; printf
$p
) | /usr/bin/passwd $u; 變更使用者密碼
mkdir $d/public_html cp l
samp $d/public_html/l chown
R $u
$g $d/public_html chmod
$d
制作個人首頁
edquota
p shie $u 復制shie的Quota樣板
當然pda
linux是要修改才可以用到你的系統的
如中的l
samp
shie 等等
執行的格式如下
/pda
linux 使用者清單 輸出檔案
如
/pda
linux userlists accounts
執行第一次pda
linux觀看輸出檔案 accounts內容如下
Peter Davis: name=pdavis passwd=aacuug group=users uid=
homedir=/home/pdavis
Joe Schmoe: name=jschmoe passwd=ogyjwm group=users uid=
homedir=/home/jschmoe
Jane Doe: name=jdoe passwd=appymj group=users uid=
homedir=/home/jdoe
再執行ㄧ次後
再觀察輸出檔 accounts 內容如下
Peter Davis: name=pdavis passwd=aacuug group=users uid=
homedir=/home/pdavis
Joe Schmoe: name=jschmoe passwd=ogyjwm group=users uid=
homedir=/home/jschmoe
Jane Doe: name=jdoe passwd=appymj group=users uid=
homedir=/home/jdoe
!
!!
! Peter Davis: name=pdavis passwd=dedrnm group=users uid=
homedir=/home/pdavis
!
!!
! Joe Schmoe: name=jschmoe passwd=hfyhoy group=users uid=
homedir=/home/jschmoe
!
!!
! Jane Doe: name=jdoe passwd=ueixrd group=users uid=
homedir=/home/jdoe
由此可知此時新增使用者是會有問題的
問題當然是重復了
而有時密碼產生的太簡單時也是會有問題的
再次提醒一次請務必該檔放置安全的地方
方法二
自動建立帳號
中小學網管者的救星來了(一)
A:使用環境:RedHat Linux+cle
先把檔案抓回去![請按這裡](建帳號工具
zip )
以root權限進入linux
將解開的檔案放到一個新建的 /work 目錄
cd /work [進入 work目錄]
chmod
* [將所有script文件屬性改為
rwx
]
更改 /etc/profile裡的敘述
PATH=
$PATH:/usr/X
R
/bin
改為
PATH=
$PATH:/usr/X
R
/bin:/usr/sbin
存盤後離開系統再重新以root登入
#
/cmenu 執行script檔
選[
]自動建立帳號
選[
]產生全校帳號
您需求的規則: 例如英文字母:stu
最低年級:
最高年級:
每一年級的班級數目:
每一班學生人數:
然後就會以:群組+年級+班級+座號的規則建立帳號
但目前尚無密碼
也無法收發E
mail
請回到主選單繼續
在主選單中選[
]批次更改使用者密碼(二)
輸入群組名稱:stu
其它請依說明操作
最後會產生一個pwtemp檔
內容是使用者帳號以及群組+四位數密碼
(參考資料:RedHat Linux隨裝即用
賴阿福
高健智著
松崗)
自動建立帳號
中小學網管者的救星來了(二)
A:接下來說明如何自動產生帳號通知單
將產生的pwtemp文件拷貝到Win
或WinNT上
使用Excel或Access的匯入功能匯入到資料表中並分字段如編號
姓名
帳號
密碼
回到Word裡開啟新文件
使用工具
>合並打印
簡單格式如下: >等代表合並之字段
高雄市和平國小電子郵件帳號分配通知單
使用者姓名
> 配發日期
/
/
E
mail
>@mail
hpps
kh
edu
tw
服務器信息
From:http://tw.wingwit.com/Article/program/Oracle/201311/17489.html