環境:
系統—CentOS 6.5;
tftp和ftp服務地址:192.168.0.11;
原理簡述:
1. 使用pxe協議向網路中的dhcp伺服器發送請求,擷取ip地址,以及tftp的地址。
2. 向tftp 伺服器擷取啟動載入器。
3. 啟動載入器載入default檔案擷取啟動菜單。
4. 最後根據選擇載入核心以及安裝程式。
步驟:
1. 配置/etc/dhcp/dhcp.conf
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.100192.168.0.150; #可以動態擷取的位址範圍
next-server 192.168.0.11; # tftp伺服器的地址
filename="pxelinux.0" #網路引導程式,此檔案在syslinux包中
}
2. 配置tftp
chkconfig tftp on #用來開啟tftp服務
3. 向tftp伺服器的家目錄/var/lib/tftpboot拷貝啟動和引導程式
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot
cp /media/isolinux/{boot.msg,splash.jpg,vesamenu.c32} /var/lib/tftpboot #boot.msg:是用來顯示“[ENTER]”啟動提示資訊的;splash.jpg:是背景圖片;vesamenu.c32是用來顯示圖形化的菜單的。
cp /media/images/{vmlinuz,initrd.img} /var/lib/tftpboot
mkdir /var/lib/tftpboot/pxelinux.cfg #網路引導程式pexelinux.0引導是會進入這個目錄來載入設定檔。
cp /media/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default #default即使引導程式的設定檔。
4. 使用ftp、nfs、http或cdrom等匯出安裝檔案,此處使用ftp,檔案目錄為:
/var/ftp/pub/centos6.5
5. 使用system-config-kickstart製作自動安裝設定檔.
可以使用/root目錄下的anaconda-ks.cfg作為模板來配置。並將產生的檔案儲存到/var/ftp/pub/kickstart/ks.cfg
6. 將ks.cfg的路徑追加到/var/lib/tftpboot/pxelinux.cfg/default的append後面即可,如下:
label linux
menu label ^Install or upgrade an existing system #圖形菜單顯示的字串
menu default # 此功能表項目為預設要安裝的
kernel vmlinuz
append initrd=initrd.img ks=ftp://192.168.0.11/pub/kickstart/ks.cfg