环境准备:
linux服务器2台,1台做pxe服务器,1台做客户端测试
ip地址:server 192.168.5.2
工作过程:
1.pxe客户端发送地址请求广播,dhcp服务器响应,为pxe客户端分配IP地址,并告诉pxe客户端tftp-server的地址,和文件名pxelinux.0
2.pxe客户端访问tftp服务器下载到pxelinux.0文件,并执行安装生成pxeos
3.pxeos -->tftp://server/pxelinux.cfg/default 加载到菜单
4.如果选择了菜单中的某个选项,就会去tftp加载对应的vmlinux+initrd.img
5.启动了临时系统 ,(加载ks.cfg文件开始安装系统)开始安装系统
server服务器上的操作
安装相应软件包
yum -y dhcp tftp-server vsftpd bind syslinux
配置DHCP
# vi /etc/dhcp/dhcpd.conf
option domain-name "aaa.com";
option domain-name-servers 192.168.5.2, 8.8.8.8;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet 192.168.5.0 netmask 255.255.255.0 {
range 192.168.5.100 192.168.5.200;
option routers 192.168.5.254;
next-server 192.168.5.2;
filename "pxelinux.0";
}
配置tftp,不需要修改什么。启动就OK了
#chkconfig tftp on
#server xinetd restart
#cd /media/cdrom/isolinux
#cp vmlinuz initrd.img isolinux.cfg splash.jpg vesamenu.c32 /var/lib/tftpboot/
#cd /var/lib/tftpboot
#cp /usr/share/syslinux/pxelinux.0 ./
#mkdir centos6.4#mkdir pxelinux.cfg
# mv vmlinuz initrd.img ./centos6.4/# mv isolinux.cfg ./pxelinux.cfg/default
# vi ./pxelinux.cfg/default 将文件中的启动菜单修改成下面
label manul
menu label ^manul Install centos 6.4 x86_64
menu default
kernel centos6.4/vmlinuz
append initrd=centos6.4/initrd.img
label auto
menu label ^auto instll centos 6.4 x86_64
kernel centos6.4/vmlinuz
append initrd=centos6.4/initrd.img ks=/var/ftp/pub/scripts/ks.cfg
label local
menu label Boot from ^local drive
localboot 0xffff
配置tftp将光盘和ks.cfg文件共享出去 ks.cfg文件可以使用工具生成,也可以拷贝安装系统后产生的修改
#mkdir /var/ftp/pub/centos6.4_dvd
#mkdir /var/ftp/pub/scripts
#mount /dev/cdrom /var/ftp/pub/centos6.4_dvd
# cp /root/anaconda-ks.cfg /var/ftp/pub/scripts/ks.cfg
客户端:设置BIOS从网卡启动