<a href="http://bbs.linuxtone.org/thread-1586-1-1.html">http://bbs.linuxtone.org/thread-1586-1-1.html</a>
通過PXE+NFS方式遠端裝FB,需要一台安裝了TFTP+DHCP-Server+NFS的主機A。被安裝主機B的網卡需要支援PXE方式啟動。
1、對主機A上的TFTP+DHCP-Server+NFS配置:
1)配置TFTP:
TFTP預設安裝在FB中,我們隻用啟用其即可,啟用方法是:将/etc/inetd.conf中“#tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -s /tftpboot ”前的注釋去掉;手工啟動inetd:/etc/rc.d/inetd start或者将 inetd_enable=YES加入到/etc/rc.conf中以便随FB自動啟動。
2)配置NFS Server:
手工啟動nfsd:/etc/rc.d/nfsd start或者将 nfsd_enable=YES加入到/etc/rc.conf中以便随FB自動啟動。
編輯/etc/exports,加入允許NFS輸出的檔案系統:/mnt -ro -alldirs
3)安裝并配置ISC-DHCP Server:
通過ports方式安裝,ISC-DHCP Server在/usr/ports/net下。
編輯 /usr/local/etc/dhcpd.conf ,添加如下内容:
default-lease-time 7200;
max-lease-time 7200;
ddns-update-style none;
subnet 192.168.0.0 netmask 255.255.255.0 { //此位址池要和主機A的位址在一個網段
range 192.168.0.2 192.168.0.254;
server-identifier 192.168.0.1;
next-server 192.168.0.1; //此位址為主機A的IP位址
filename "/pxeboot"; //此為 /tftpboot下的pxeboot檔案,此檔案拷貝于FB的安裝CD光牒
option root-path "/mnt"; //此為加載loader和kernel在nfs的根路徑的位置,就是包含boot的位置。
}
啟動ISC-DHCP:/usr/local/etc/rc.d/isc-dhcpd start。isc-dhcpd_enable=YES加入到/etc/rc.conf中以便随FB自動啟動。
4)FB安裝CD光牒中的pxeboot預設使用NFS擷取啟動檔案、核心等檔案,是以在ISC-DHCP Server中添加 option root-path "/mnt"。
5)禁止主機A的DNS 解析。修改/etc/resolv.conf,将其中所有以nameserver開頭的行注釋掉。否則 mountd(因為 nfsd 依賴這個daemon,是以 mountd 也會随 nfsd 啟動而啟動)會去查DNS,而有可能導緻最終 PXE 啟動連不上 nfs,不能加載 kernel 。
6)拷貝FB8.0安裝檔案到/usr/8.0-RELEASE-i386-disc1.iso,執行如下指令:
mdconfig -atvnode -f 8.0-RELEASE-i386-disc1.iso //ISO 檔案連接配接成為一個 vnode 類型的記憶體盤
mount - t cd9660 /dev/md0 /mnt //挂載上步指令産生的md節點到 /mnt
7)經過上述配置,主機B可通過PXE方式加載loader和kernel。加載了loader後,需要選擇 loader 啟動選項的第6項,進入 loader prompt,輸入如下指令:
set vfs.root.mountfrom="ufs:/dev/md0"
boot
執行boot指令後,系統将加載運作到安裝界面。
8)在安裝程式中,在選擇安裝媒體時選擇 nfs,然後輸入主機A 的 IP 位址和導出的路徑,如192.168.0.1:/mnt。确認後,系統提示要設定網卡,網卡的IP要和主機A的IP在一個網段中。 後繼安裝和CD光牒安裝一緻。
2、主機B開機進入BIOS設定,選擇首選BOOT為PXE即可。下圖為VM6中BOOT設定的截圖: