1、概述
PXE(Pre-boot Execution Environment)預啓動執行環境,在操作系統之前運行,可用於遠程安裝
服務端:①運行FTP或HTTP服務,提供網絡安裝源
②運行DHCP服務,用來分配地址、定位引導程序
③運行TFTP服務,提供引導程序下載
客戶端:網卡支持PXE協議、主板支持網絡啓動
2、搭建PXE網絡服務器
1)構建vsftpd服務,準備安裝源
rpm -ivh /mnt/iso/Packages/vsftpd-2.2.2-6.el6_0.1.i686.rpm
vi /etc/vsftpd/vsftpd.conf
anon_root=/mnt
service vsftpd start
chkconfig vsftpd on
vi /etc/yum.repos.d/rhel6.repo
[rhel6]
name=rhel6
baseurl=ftp://192.168.4.254/iso
enabled=1
gpgcheck=0
2)構建TFTP服務,準備內核、初始化鏡像、引導程序、啓動菜單
yum -y install tftp-server
vi /etc/xinetd.d/tftp
disable = no
service xinetd start
cd /mnt/iso/images/pxeboot/
cp vmlinuz initrd.img /var/lib/tftpboot/
yum -y install syslinux
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
mkdir /var/lib/tftpboot/pxelinux.cfg
vi /var/lib/tftpboot/pxelinux.cfg/default
default auto
prompt 1
label auto
kernel vmlinuz
append initrd=initrd.img devfs=nomount ramdisk_size=8192
label linux text
kernel vmlinuz
append text initrd=initrd.img devfs=nomount ramdisk_size=8192
label linux rescue
kernel vmlinuz
append rescue initrd=initrd.img devfs=nomount ramdisk_size=8192
注:TFTP服務默認由xinetd超級服務進行管理,使用udp 69端口
3)構建DHCP服務,自動分配地址並設置TFTP參數,告知引導文件位置
yum -y install dhcp
vi /etc/dhcp/dhcpd.conf
subnet 192.168.4.0 netmask 255.255.255.0 {
range 192.168.4.100 192.168.4.200;
next-server 192.168.4.254;
filename "pxelinux.0";
}
service dhcpd start
3、kickstart無人值守安裝
創建應答文件,預先定義好各種安裝設置,從而實現全自動化安裝
yum -y install system-config-kickstart
system-config-kickstart
cp /root/ks.cfg /mnt/ks.cfg
vi /var/lib/tftpboot/pxelinux.cfg/default
append ks=ftp://192.168.4.254/ks.cfg initrd=initrd.img devfs=nomount ramdisk_size=8092
注:①關閉Vmware自帶的dhcp服務,避免dhcp服務相互干擾
②真實環境中通過PXE網絡裝機時,在檢測硬件的時候時間會比較長,需要多等會
③vsftpd報錯“226 Transfer done(but failed to open directory)”,解決:禁用SELINUX並重啓