在Ubuntu7.10安裝DRBL

官方網站:http://drbl.nchc.org.tw/

村東論壇:drbl安裝與使用 

驟1 - 安裝您的GNU/Linux套件

建議這台server切割partition的時候,另外切一個partition給/tftpboot使用,
大小視您的GNU/Linux套件版本而定,
越新的版本,需要的空間一般來說越大。
以RedHat 9/Fedora Core 1/2為例,大約是您的學生電腦數目*100MB,
也就是如果你有40台學生電腦的時候,建議切割4GB的空間給/tftpboot,
如果是Fedora Core 3/4/5,建議每個學生電腦給200MB的空間,
這個空間當然可以再放大一些,以免以後安裝的程式越來越多而不夠空間,

建議也許把估算出來的大小然後再加
另外,請設定好所有網路卡的IP,

我們後面用的是eth0對外,其餘的eth1以後的對內部使用

(請務必將這些內部使用的網路卡IP都設成192.168.x.x, 172.16-31.x.x或是10.x.x.x等的private IP,

例如eth1:192.168.101.254, eth2:192.168.102.254, eth3:192.168.103.254...);
請注意一個原則,private IP (192.168.x.x)將會被拿來做DRBL環境的連結用。安裝時也建議關閉防火牆,等DRBL安裝完之後再來設定防火牆。

安裝完之後,如果您的系統沒有開啟對硬碟 DMA 支援,
建議您開啟以增快server硬碟讀取速度。
您可以用"hdparm /dev/hdx"來看using_dma是否on或是off,
如果是off的話,可以執行"hdparm -d1 -c3 -k1 /dev/hdx"而開啟它,
以上請將/dev/hdx改成您的server硬碟裝置檔,一般是/dev/hda。
如果要以後每次開機之後都能啟動dma,
以Fedora/RedHat/Mandrake為例,
您可以在/etc/sysconfig/harddisks中將# USE_DMA=1的註解"#"拿掉變成USE_DMA=1。

步驟2 - server上相關套件的安裝
<步驟2a->-依照不同的套件,有不同的方式下載drbl程式來安裝

Debian或是Ubuntu
如果您不是系統管理者(root),執行指令"su - root" (然後輸入root的密碼),
如果你的套件沒有設定root密碼,可以用"sudo su -" (然後該使用者的密碼)以便切換成root

果您的套件支援APT-KEY金鑰管理(例如Ubuntu 6.06或者之後的版),
請先安裝DRBL的金鑰,有兩個方式可以來安裝。
方法1: "wget http://drbl.nchc.org.tw/GPG-KEY-DRBL; apt-key add GPG-KEY-DRBL" 。
方法2: 或是由key server下載,KeyID是D7E8DF3A,
可以這樣執行"gpg --keyserver subkeys.pgp.net --recv-key D7E8DF3A",
然後再執行"gpg -a --export D7E8DF3A | apt-key add -".

請編寫/etc/apt/sources.list
如 果您的套件是Ubuntu Gutsy (7.10):
----------
deb http://free.nchc.org.tw/ubuntu gutsy main restricted universe multiverse
deb http://free.nchc.org.tw/drbl-core drbl stable

<步驟2b>
場景1: 假如對外網路順暢,你的套件有提供apt, urpmi或是yum的儲藏庫: 
執行"/opt/drbl/sbin/drblsrv -i"。注意"-i"前面有個空格。
原則上,如果您不確定的地方,您可以直接按Enter使用預設值即可。

步驟3 - 在server上建置client的檔案系統

網路交換器與網路卡分流注意事項
在網路交換器(switch)的部分,有一個地方要注意的,
基本上建議您最好用鎖定學生電腦MAC address的方式,以確定每一台都能有固定不變的IP
(也就是在步驟3a中,執行"/opt/drbl/sbin/drblpush -i"的時候,
遇到"現在我們可以收集用戶端電腦網卡卡號(MAC Adrees)!"時,回答的是"Y")。

從DRBL 1.6.3以後的版本,可以有
Full DRBL,
Full Clonezilla,
DRBL SSI (Single System Image)
Clonezilla Box
四種模式,
前兩個Full模式需要多一點的網路流量與硬碟空間,但是用戶端所有的檔案都會回存到伺服器。
而DRBL SSI模式,乃是使用單一的主程式,用戶端開機後動態調整需要的設定。
這個模式的好處是server設定以及所需的空間減少。
但是缺點是每台不能回存各自的系統設定檔(使用者的設定檔與資料仍然可以回存)。
用戶端電腦數目有所增加,只要改dhcpd.conf之後,
執行 "/opt/drbl/sbin/dcs -> others -> gen_3N_conf"或是"/opt/drbl/sbin/drbl-3n-conf generate"
即可以馬上增加用戶端電腦的數目。採用此模式,理論上server一張網卡可以支援253台client。
另外Clonezilla box 模式乃是DRBL SSI的延伸,以用戶端的RAM降低網路流量,
理論上server一張網卡可以支援253台client來clone。
<注意>DRBL SSI模式,最好是在你用戶端電腦的RAM夠大,例如512MB,
以及所有用戶端的硬體(尤其是顯示卡)都一樣才建議使用。

執行步驟<3a>之前,有幾個可以自行定義的地方:

如果DRBL server上有其他特別的目錄你要分享給所有用戶端的話,
例如/work1,那可以用文字編輯器,開啟/opt/drbl/conf/drbl.conf,把設定寫成
diskless_root_dir_ro_user_add="/work1"(如果你的/work1是要讓用戶端只可以讀不能寫的話)或是
diskless_root_dir_rw_user_add="/work1"(如果你的/work1是要讓用戶端可以讀寫的話)。
<注意!!! drbl.conf檔案很重要,請小心編輯>。

如果所有的用戶端本身都有硬碟,而且分割區已經格式化了(例如/dev/hda1,檔案系統是ext3),
你想要用戶端開機後會自動掛載到/localwork目錄中。
那你可以編輯/opt/drbl/conf/client-append-fstab,把資料填進去,
寫法如同/etc/fstab的寫法。以本例,/opt/drbl/conf/client-append-fstab可以這樣寫:
/dev/hda1 /localwork ext3 defaults 0 0
(註:你不需要自行在DRBL server上建立/tftpboot/node_root/localwork目錄,待會drblpush會幫你產生)

如果你有特別的服務(例如apmd與bluetooth等)要在所有的用戶端開機後自動啟動,
你可以編輯/opt/drbl/conf/client-extra-service,
把設定寫成service_extra_added="apmd bluetooth"。

如果你有部份或是全部的用戶端機器不想使用待會程式自動產生的電腦名稱,
而是要自己指定用戶端電腦名稱,可以先編輯/opt/drbl/conf/client-ip-hostname,
把要指定的名稱依據IP address與名稱一行一行對應好。
/opt/drbl/conf/client-ip-hostname中沒有指定到的機器,drblpush會給與一個自動產生的機器名稱。

<步驟3a>
瞭解您的環境以及設定後,執行
/opt/drbl/sbin/drblpush -i
請注意"-i"前面有個空格。

然後程式會自動偵測系統,找到參數,系統沒有設定的參數,程式會要求您輸入。
原則上,如果您不確定的地方,您可以直接按Enter使用預設值即可。

 <注意>往後有新增加的client電腦或是server上新安裝了軟體等,
請再執行一遍"/opt/drbl/sbin/drblpush -i"或是
"/opt/drbl/sbin/drblpush -c /etc/drbl/drblpush.conf"(這個會讀取前一次存下來的設定檔)
以便重新部署檔案給您的client電腦用。

<注意>安裝好DRBL相關這些程式後,不建議您開您的GNU/Linux啟套件自動更新的功能,
因為有可能更新後,伺服器的檔案和用戶端的檔案版本不一致,
如果您要開啟自動更新功能的話,必須再每次更新後,再自動執行一次上述的步驟。
另外,如果要升級DRBL相關的程式,請依照後面的升級方式來進行,
不適宜讓套件自動把DRBL相關程式升級。

步驟4 - 讓client端(也就是學生用的機器)網路開機

 用戶端機器的網卡有PXE網路開機功能
直接將用戶端電腦的BIOS設定成網路開機就可以當DRBL的client了
。2003年(含)以後新購買的電腦,主機板內建的網卡幾乎都有PXE功能,
您可以進BIOS查看看,然後把那個PXE網路開機功能開啟。請參考你的主機板手冊為準。

留言

這個網誌中的熱門文章

自製簡易結構耐震震動台

HC-05藍芽模組設定