• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 如何一次添加大量賬戶

    發表于:2007-07-02來源:作者:點擊數: 標簽:
    方法一: 一個系統管理者日常最常處理的工作便是管理使用者帳號了,包含增加和減少使用者、配置硬盤配額、開啟個人首頁等等,而在系統建置的初期面對要增加大量使用者而要回答adduser(useradd)的一些相關使用者信息便常要浪費相當多時間,況且又沒有留下相關

      方法一:
      一個系統管理者日常最常處理的工作便是管理使用者帳號了,包含增加和減少使用者、配置硬盤配額、開啟個人首頁等等,而在系統建置的初期面對要增加大量使用者而要回答adduser(useradd)的一些相關使用者信息便常要浪費相當多時間,況且又沒有留下相關的記錄,常讓系統管理者痛苦不已,更別說后續的管理動作了。
      pdadduser正可以解決這種困擾,不僅可以依需要快速方便建立大量使用者帳號,使用者的密碼可以是采隨機或指定的方式組成,而帳號、UID、家目錄都可由系統管理者自行選擇設定,并可以搭配相關指令使用,深具彈性,并留有相關的記錄,可以大量減輕管理者負擔。筆者在本文中將使用簡單的范例來說明在Linux和FreeBSD這兩套系統下的使用方式,更詳細的說明可以參考。

    安裝
      pdadduser目前最新的版本是1.2,但是經筆者測試,某些系統1.2版并無法執行,此時請改用1.1版〔筆者均mirror于〕,此外由Linux和FreeBSD這兩套系統下建立使用者帳號并不盡相同,所以筆者將分兩部分說明。

    1.1 Linux 安裝
      step 1. tar xvfz pdadduser-1.2.tar.gz ← 解壓縮Pdadduser軟件
      step 2. cd pdadduser-1.2 ← 切換到pdadduser-1.2目錄中
      step 3. make ← 編輯pdadduser
      step 4. gcc pause.c –o pause ← 有時該檔會有問題,所以編輯一下
      當產生pdadduser, pause 這兩個可執行檔即可。

    1.2 FreeBSD 安裝
      step 1. tar xvfz pdadduser-1.1.tar.gz ← 解壓縮Pdadduser軟件
      step 2. cd pdadduser-1.1 ← 切換到pdadduser-1.2目錄中
      step 3. gcc –Wall –I- -I. pdadduser –o pdadduser ← 編輯pdadduser
      step 4. gcc pause.c –o pause ←編輯 pause
      當產生pdadduser, pause 這兩個可執行檔即可。

    2 指令格式
      pdadduser完整的指令格式如下,筆者在本文中僅作簡單的說明,更詳細的使用方式請參考解開的README。
      pdadduser -n [-f ] [-F ] [-o ] [-h home-directory-format>] [-g ] [-r ] [-p ] [-t] [-d] -c COMMAND1 [COMMAND2 ...]
      選項說明:
      -n :使用者清單的文字文件檔案,這是必需的,例如檔案內容如下所示:
      Peter Davis
      Joe Schmoe
      Jane Doe
      -f :使用者名稱的組合格式,格式定義如下:
      $n:第n個字(起始字是 $0),如果不存在則忽略
      %x.n:第n個字中第x個字符,如果不存在則忽略
      例如 %0.0$1 是取第0個字中第0個字符和第1個字組合而成(預設也是如此),所以套用上面范例取得的使用者名稱分別是 `pdavis, `jschmoe, `jdoe;%3.0$1 是取第0個字中第3個字符和第1個字組合而成,所以套用上面范例取得的使用者名稱分別是 edavis, schmoe, edoe。
      -F :使用者全名的組合格式,格式定義和 -f 相同,例如 $0 $1 是取第0個字空格和第1個字組合而成(預設也是如此),所以套用上面范例取得的使用者全名分別是 Peter Davis, "Joe Schmoe, Jane Doe;而%0.0. $1 取得的是 P. Davis, J. Schmoe, J. Doe。
      -o :輸出檔案,包含使用者名稱、密碼和錯誤訊息等,請務必放置安全的地方,當然有此檔案則系統管理者應可玩出一些把戲才是。如果輸出檔名為 - 則僅自屏幕輸出,筆者并不建議使用。此外錯誤訊息如 !2!!235! 等,請見下面范例,可以提醒管理者注意。
      -h :使用者家目錄格式,首先定義ㄧ些特殊字符如下:
      u:使用者名稱
      g:使用者群組
      f:使用者全名
      使用者家目錄格式,格式定義如下:
      $:整個字
      %n:字中第n個字符
      例如 /home/$g/$u 依上例是 /home/users/pdavis;假設使用者名稱是 S9351033,家目錄希望是/home/users/S/93/S9351033,則格式應為 /home/users/%0u/%1u%2u/$u。預設格式是 /home/$u。
      -g :使用者群組。
      -r :UID范圍,預設是500到1000。
      -p :預設是系統隨機數產生,當然也可自訂,如 %xr 為隨機數產生 r 個字符,預設是 6 個字符。
      -t:測試模式,并不真正增加使用者。
      -d:除錯模式,可看到每一指令的執行過程。
      -c COMMAND1 [COMMAND2 ...]:這是pdadduser最重要的部份,也就是pdadduser提供相關的參數給COMMAND執行,詳細的范例在下。其中參數如下:
      $u:使用者名稱
      $p:使用者密碼
      $i:使用者UID
      $g:使用者群組
      $f:使用者全名
      $d:使用者家目錄

    3 執行
      在了解指令的參數之后,我們便可以利用pdadduser來新增使用者了,但由于Linux和FreeBSD稍有不同,筆者分別說明之。

    3.1 Linux
      首先建立使用者清單的文字文件檔案,范例如上,取名 userlists;另外筆者也建立一個shell可執行檔,內容如下,取名 pda4linux。
      ./pdadduser -n $1 -o $2 -g users -d -c \
      /usr/sbin/adduser -c "$f" -u $i -g $g -d $d $u \
      (printf "$p"; ./pause 1; printf "$p") | /usr/bin/passwd $u; \
      mkdir $d/public_html \
      cp index.html.samp $d/public_html/index.html \
      chown -R $u.$g $d/public_html \
      chmod 755 $d \
      edquota -p shie $u
      pda4linux執行檔的意思是,/usr/sbin/adduser -c "$f" -u $i -g $g -d $d $u 增加使用者,(printf "$p"; ./pause 1; printf "$p") | /usr/bin/passwd $u; 變更使用者密碼,mkdir $d/public_html cp index.html.samp $d/public_html/index.html chown -R $u.$g $d/public_html chmod 755 $d,制作個人首頁,edquota -p shie $u 復制shie的Quota樣板。
      當然pda4linux是要修改才可以用到你的系統的,如中的index.html.samp, shie 等等。執行的格式如下:
      ./pda4linux 使用者清單 輸出檔案
      如:
      ./pda4linux userlists accounts
      執行第一次pda4linux觀看輸出檔案 accounts內容如下:
      Peter Davis: name=pdavis passwd=aacuug group=users uid=500 homedir=/home/pdavis
      Joe Schmoe: name=jschmoe passwd=ogyjwm group=users uid=501 homedir=/home/jschmoe
      Jane Doe: name=jdoe passwd=appymj group=users uid=502 homedir=/home/jdoe
      再執行ㄧ次后,再觀察輸出檔 accounts 內容如下:
      Peter Davis: name=pdavis passwd=aacuug group=users uid=500 homedir=/home/pdavis
      Joe Schmoe: name=jschmoe passwd=ogyjwm group=users uid=501 homedir=/home/jschmoe
      Jane Doe: name=jdoe passwd=appymj group=users uid=502 homedir=/home/jdoe
      !1!!256! Peter Davis: name=pdavis passwd=dedrnm group=users uid=503 homedir=/home/pdavis
      !1!!256! Joe Schmoe: name=jschmoe passwd=hfyhoy group=users uid=503 homedir=/home/jschmoe
      !1!!256! Jane Doe: name=jdoe passwd=ueixrd group=users uid=503 homedir=/home/jdoe
      由此可知此時新增使用者是會有問題的,問題當然是重復了,而有時密碼產生的太簡單時也是會有問題的,再次提醒一次請務必該檔放置安全的地方。

    方法二、
      自動建立帳號--中小學網管者的救星來了(一)
      A:使用環境:RedHat Linux+cle
      1.先把檔案抓回去![請按這里](建帳號工具.zip )
      2.以root權限進入linux
      3.將解開的檔案放到一個新建的 /work 目錄
      4. cd /work [進入 work目錄]
      5.chmod 700 * [將所有script文件屬性改為 -rwx------]
      6.更改 /etc/profile里的敘述
       PATH="$PATH:/usr/X11R6/bin" 改為
       PATH="$PATH:/usr/X11R6/bin:/usr/sbin"
       存盤后離開系統再重新以root登入
      7. #./cmenu 執行script檔
      8.選[1]自動建立帳號
      9.選[3]產生全校帳號
      10.您需求的規則: 例如英文字母:stu ,最低年級:1 , 最高年級:6 , 每一年級的班級數目: 9, 每一班學生人數:50, 然后就會以:群組+年級+班級+座號的規則建立帳號,但目前尚無密碼,也無法收發E-mail,請回到主選單繼續.
      11.在主選單中選[4]批次更改使用者密碼(二)
      12.輸入群組名稱:stu , 其它請依說明操作,最后會產生一個pwtemp檔,內容是使用者帳號以及群組+四位數密碼.
      (參考資料:RedHat Linux隨裝即用.賴阿福.高健智著,松崗)

    自動建立帳號--中小學網管者的救星來了(二)
      A:接下來說明如何自動產生帳號通知單.
      1.將產生的pwtemp文件拷貝到Win98或WinNT上
      2.使用Excel或Access的匯入功能匯入到資料表中并分字段如編號、姓名、帳號、密碼.
      3.回到Word里開啟新文件.
      4.使用工具->合并打印
      5.簡單格式如下: >等代表合并之字段
      高雄市和平國小電子郵件帳號分配通知單
      使用者姓名:> 配發日期:1999/9/15
      E-mail:>@mail.hpps.kh.edu.tw
      服務器信息:
      內送郵件→POP3 :mail.hpps.kh.edu.tw
      外寄郵件→SMTP :mail.hpps.kh.edu.tw
      內送郵件服務器帳號:> 密碼:>

    6.合并完會產生一份新文件,您可以檢查結果是否正確.

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>