PXE无人值守网络安装CentOS7
什么是PXE可以自行百度,结合ks文件可以通过PXE引导服务器从网络安装,实现无人值守自动化安装操作系统。具体原理可参考下面这张图,自动化安装的定制可参考我的上一篇文章《CentOS7 定制ISO镜像》。
一、安装必要的软件
首先我们需要一台服务器部署dhcp、tftp、web服务,我使用的操作系统是:CentOS7.8,IP是:192.168.100.103,root用户下执行以下命令。
yum -yinstalldhcp xinetd syslinux tftp-serverhttpd
二、配置DHCP
vi/etc/dhcp/dhcpd.conf增加下以配置
subnet192.168.100.0netmask255.255.255.0{ip地址范围range192.168.100.2192.168.100.254;网关地址optionrouters192.168.100.1;tftp服务器地址next-server192.168.100.103;tftp根目录的pxe boot文件filename"pxelinux.0";}
启动dhcp服务
systemctlstart dhcpd
验证DCHP服务可以确认是否有监听67端口(udp),如下图:
另外可以使用dhclient命令测试,观察获取ip地址的过程,DHCP地址分配过程:DISCOVERY–>OFFER–>REQUEST–>ACK,如下:
dhclient-deth0DHCPDISCOVERoneth0to255.255.255.255port67interval4(xid=0x61525f6d)DHCPREQUESToneth0to255.255.255.255port67(xid=0x61525f6d)DHCPOFFERfrom192.168.100.103DHCPACKfrom192.168.100.103(xid=0x61525f6d)boundto192.168.100.9--renewalin18003seconds.
三、配置WEB服务
挂载iso文件,将系统文件拷坝到/var/www/html目录下
mount -oloopCentOS7-v1-x86_64.iso/media/mkdir -p/var/www/html/centos7 ; cp -ra /media/* /var/www/html/centos7
启动httpd服务,能正常访问即可
systemctlstart httpd
四、配置TFTP
vi/etc/xinetd.d/tftp
servicetftp{socket_type=dgramprotocol=udpwait=yesuser=rootserver=/usr/sbin/in.tftpdtftp根目录server_args=-s /home/data/tftpboot -c开启tftpdisable=noper_source=11cps=100 2flags=IPv4}
拷坝引导文件和内核文件
cd/home/data/tftpbootcp/usr/share/syslinux/pxelinux.0 .cp/var/www/html/centos7/isolinux/boot.msg .cp/var/www/html/centos7/isolinux/initrd.img .cp/var/www/html/centos7/isolinux/splash.png .cp/var/www/html/centos7/isolinux/vesamenu.c32 .cp/var/www/html/centos7/isolinux/vmlinuz .
创建菜单引导文件
mkdir -p /home/data/tftpboot/pxelinux.cfg
cp /var/www/html/centos7/isolinux/isolinux.cfg /home/data/tftpboot/pxelinux.cfg/default
修改文件pxelinux.cfg/default的以下内容
labellinuxmenulabel ^Install CentOS 7menudefaultkernelvmlinuzappendinitrd=initrd.img repo=http://192.168.100.103/centos7 ks=http://192.168.100.103/centos7/isolinux/ks.cfg net.ifnames=0 biosdevname=0
启动tftp
systemctlstart xinetdsystemctlstart tftp
五、修改ks文件
Use CDROM installation mediacdrom
改为:installation mediaurl --url=http://192.168.100.103/centos7
ks文件可参考我上一篇文章《CentOS7 定制ISO镜像》
六、验证PXE自动化安装
我这里使用Esxi创建虚拟机验证,启动虚拟机就会进入到PXE引导安装,如下图:
引导过程
系统安装菜单
从网络下载操作系统
按ks文件配置安装
我告诉你msdn版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!