PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端(客户端)基本软件设置,从而引导预先安装在服务器中的终端操作系统。
PXE启动原理
当计算机引导时,BIOS把 PXE Client 调入内存中执行,然后由 PXE Client 将放置在远端的文件通过网络下载到本地运行。
一、实验准备:
yum install dhcpd syslinux tftp-server httpd -y ----------------------安装实验的主要准备服务
yum install system-config-kickstart -----------------------安装kickstart文件生成服务
yum install ImageMagick.x86_64 ------------------------安装图形处理服务。
实验之前 systemctl stop firewalld.service ---------------关闭防火墙。
目前这个是实验是在虚拟机中做的,所以我们先通过lftp去172.25.254.50的主机上去拿到挂载在呢个主机上的/rhel7.0这个目录下的isolinux目录内的所有文件。
拿到后放在/var/lib/tftpboot/这个目录下。
此时我们通过man可以查看到pxelinux.0的配置文件用法:找到/mybootdir/pxelinux.cfg/default
所以新建目录:
/var/lib/tftpboot/pxelinux.cfg/default这个文件中是控制装机时候的面板显示内容,所以我们把isolinux文将中的isolinux.cfg复制到这个目录下。
将/usr/share/syslinux/pxelinux.0文件 复制到/var/lib/tftpboot/目录下。然后tftp-server服务配置结束。
接下来做dhcp配置服务:
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf ---------------------复制到dhcp的主配置文件。
修改dns的ip(本机ip)
subnet 172.25.254.0 netmask 255.255.255.0 {
range 172.25.254.180 172.25.254.200;
option routers 172.25.254.220;
next-server 172.25.254.220; -----------------存放pxelinux.0文件的 主机ip
filename "pxelinux.0"; ----------------前边复制的pxelinux.0文件,
}
/etc/xinetd.d/tftp 这个文件
disable no -------------------tftp守护进程改为no
systemctr restart xinetd.service 重新启动服务。
查看69端口是否开放
convert -resize 640X480! LBJ.png haha.png 强制修改图片尺寸
这个文件是 /var/lib/tftpboot/pxelinux.cfg/defalut,负责安装管理页面。自己可以研究研究。现在我们只改变背景图片。
通过system-config-kickstart制作好文件ks.cfg后保存在本机的httpd服务的默认发布目录,此时一定要检验是否能取到。
并且检查172.25。254.50/rhel7.0目录的内容是否能取得到。
append initrd=initrd.img repo=http://172.25.254.50/rhel.7.0 ks=http://172.25.254.220/ks.cfg 指定系统安装包和ks.cfg文件在那。
调整要装机的主机从网卡启动。
成功。
正在装机。。。。。。
本文转自技术小白JDY51CTO博客,原文链接:http://blog.51cto.com/13355576/2050077 ,如需转载请自行联系原作者