2014年4月10日 星期四

tftp 伺服器建置

2019/11/11 修訂

我們所架設的 PXE 伺服器主要提供同網域 (192.168.10.0/24) 上其它主機能透過網路開機,為了提供網路開機的功能,必須在 PXE 伺服器上安裝 DHCP 伺服器、TFTP 伺服器,底下介紹如何安裝 TFTP 伺服器:

請執行底下指令以安裝 tftp 套件:

# apt-get install tftpd-hpa \Enter

要設定 tftp 伺服器可以提供網路開機的服務必須先下載 X86_64 之 netboot 檔案,下載位置如底下所示:

http://192.168.10.254/debian/dists/buster/main/installer-amd64/current/images/netboot/

ftp://ftp.tw.debian.org/debian/dists/buster/main/installer-amd64/current/images/netboot/

下載完畢後請以 root 權限將 netboot.tar.gz 解開在 /srv/tftp 目錄,指令如下:

# tar xfva netboot.tar.gz -C /srv/tftp \Enter

解完之後在 /srv/tftp 目錄下會有底下檔案:

root@pxe:/srv/tftp# ls -l
total 18908
drwxrwxr-x 3 root root     4096 Mar 30 06:03 debian-installer
lrwxrwxrwx 1 root root       47 Mar 30 06:03 ldlinux.c32 -> debian-installer/amd64/boot-screens/ldlinux.c32
-rw-r--r-- 1 root root 19351686 May  6 10:39 netboot.tar.gz
lrwxrwxrwx 1 root root       33 Mar 30 06:03 pxelinux.0 -> debian-installer/amd64/pxelinux.0
lrwxrwxrwx 1 root root       35 Mar 30 06:03 pxelinux.cfg -> debian-installer/amd64/pxelinux.cfg
-rw-rw-r-- 1 root root       64 Mar 30 06:03 version.info


如果沒有問題的話,接下來就可以準備啟動 tftp 伺服器了。


請執行底下指令來啟動 tftp 伺服器:

# /etc/init.d/tftpd-hpa restart \Enter
[ ok ] Restarting HPA's tftpd: in.tftpd.

這表示目前 tftp 已經啟動成功了,如果希望設定 tftp 伺服器於下次開機後自動執行,請使用 update-rc.d 來進行設定,如底下所示:


# update-rc.d tftpd-hpa defaults \Enter

其輸出如下所示:
update-rc.d: using dependency based boot sequencing
update-rc.d: warning: default stop runlevel arguments (0 1 6) do not match tftpd
-hpa Default-Stop values (1)

啟動完畢後,我們新增一個 buildlinux1.sh 來測試 tftp 伺服器是否已可正常使用,其內容如下:

 # IP=192.168.10.254 pxeserver.example.org

CPU=host
SMP=2
MEMORY=1024
HDA=linux1.img
HDA_SIZE=10G
MAC="DE:AD:BE:CF:EC:B9"
BRIDGE=br10
CDROM=/opt/iso/debian-8.3.0-amd64-CD-1.iso

[ -f $HDA ] && rm $HDA
qemu-img create $HDA $HDA_SIZE -f qcow2

qemu-system-x86_64 -enable-kvm -cpu $CPU -smp $SMP -m $MEMORY \
-drive file=$HDA,format=qcow2 \
-boot n \
-net nic,macaddr=$MAC -net bridge,br=$BRIDGE

新增完畢後,請執行:

~/virtualclassroom$ sh buildlinux1.sh

理論此時可以看到網路開機的畫面,然後可以開始裝機,這是我們第一台 linux 測試機器,其名稱為 linux1.my.com。



沒有留言:

張貼留言