前提: centos6.5
PXE是有intel公司开发的网络引导技术,工作在C/S模式,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统。需要满足条件:
服务器IP地址为172.18.49.15,所在网段为172.18.49.0 子网掩码netmask :255.255.255.128记得要关闭防火墙和selinux.
准备系统安装源:
mkdir -pv /var/ftp/centos6
umount /dev/cdrom# mount /dev/cdrom /media/
cp -fr /media/* /var/ftp/centos6/
安装部署ftp服务:
yum -y install vsftpd
service vsftpd start
netstat -anpl | grep vsftpd
安装部署tftp服务:
TFTP服务由tftp-server软件包提供,默认由 xinetd超级服务进程管理。
yum -y install tftp-server# cd /etc/xinetd.d/
cp tftp tftp.bak
vi tftp
编
辑 /etc/xinetd.d/tftp配置文件,将disable=yes改为disable=no 重启xinetd服务即可。
service xinetd start
netstat -anpl | grep xinetd
准备Linux内核和初始化文件:
Linux内核和初始化镜像文件可以从linux镜像中找到,位于文件夹/images/pxeboot中,
将vmlinuz和initrd.img复制到tftp的根目录/var/lib/tftpboot/下
Vmlinuz:linux内核
initrd.img:初始化镜像文件
cd /media/images/pxeboot/# ls
ls
cp vmlinuz initrd.img /var/lib/tftpboot/
准备PXE引导程序,启动菜单文件:
Linux引导程序为pxelinux.0 该文件由syslinux软件包提供,因此我们要安装syslinux软件包,并复制到tftp根目录下。
yum -y install syslinux
cd /usr/share/syslinux/
cp pxelinux.0 /var/lib/tftpboot/
启
动菜单用来指导客户机的引导过程,包括如何调用内核,如何加载初始化镜像,默认的启动菜单为default,该文件应该放置在tftp根目录的pxelinux.cfg目录中,并重命名为default。(也可以手动建立)
cd /media/isolinux/
cp isolinux.cfg /var/lib/tftpboot/
cd /var/lib/tftpboot/# mkdir pxelinux.cfg
cp isolinux.cfg pxelinux.cfg/default
修改
default文件内容如下:
cd /var/lib/tftpboot/pxelinux.cfg/
vi default
Default:是指定默认入口名称,pxe时可以随意,但是kickstart写成auto,否则不行
上图中,label是用来定义并分隔启动项的;Kernel和append是定义了引导参数。引导入口的个数以及内容需要自行定义。
label centos6
kernel vmlinuz
append initrd=initrd.img devfs=nomount ramdisk_size=8192
安装DHCP服务器:
由于PXE客户机是未安装系统的裸机,因此为了与服务器取得联系并正确下载相关引导文件,需要预先配置好DHCP服务来自动分配地址并告知引导文件位置。
yum -y install dhcp.x86_64 # cd /usr/share/doc/dhcp-4.1.1/
cp dhcpd.conf.sample /etc/dhcp/dhcpd.conf
修改dhcp的配置文件:
只需在配置文件里添加网段声明即可;
Filename:指定PXE引导程序文件名。
Next-server:指定TFTP服务器地址
service dhcpd restart
安装部署环境完成!!! 下面开始安装系统:搭建好PXE远程安装服务器以后,就可以使用客户机进行安装测试了。如下提示“boot”,后直接按enter或者auto命令,则会进入默认的图形安装入口;若执行“Linux text”进入文本安装入口;如若执行“Linux rescue”则进入救援模式。一次选择各种安装步骤即可。