PXE无人值守
PXE服务器实现linux安装自动部署
实验环境准备:
1、Centos7:192.168.6.233
2、若干台预安装的Centos虚拟机
Centos7 pxe准备:
1、关闭防火墙
2、关闭selinux
3、配置yum源
实验步骤:
1、安装dhcp、tftp、http、syslinux
yum -y install dhcp tftp-server httpd syslinux
2、配置dhcp服务
# cd /etc/dhcp # cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example ./dhcpd.conf # vim dhcpd.conf subnet 192.168.6.0 netmask 255.255.255.0 { range 192.168.6.10 192.168.6.120; default-lease-time 3600; filename "pxelinux.0"; next-server 192.168.6.233; } # systemctl restart dhcpd # systemctl status dhcpd
3、配置tftp服务器
启用tftp服务
# cd /etc/xinetd.d/ # vim tftp disable = no # systemctl restart tftp.socket # systemctl status tftp.socket
4、拷贝PXE服务器的相关文件------->tftp的根目录(/var/lib/tftpboot)
# cat tftp # cd /var/lib/tftpboot # ls # cp /usr/share/syslinux/pxelinux.0 ./ #引导文件 # cp /usr/share/syslinux/menu.c32 ./ #菜单文件 # mount /dev/cdrom /mnt】 # cp /mnt/isolinux/vmlinuz ./ #安装引导文件1 # cp /mnt/isolinux/initrd.img ./ #安装引导文件2 # ls #共拷贝4个文件
5、制作安装的菜单文件
# mkdir /var/lib/tftpboot/pxelinux.cfg # cd /var/lib/tftpboot/pxelinux.cfg # touch default default menu.c32 timeout 300 prompt 0 label 1 menu label ^1) Install CentOS7 menu default kernel vmlinuz append initrd=initrd.img method=http://192.168.6.233/CentOS7 ks=http://192.168.6.233/ks.cfg
6、配置web服务器
# systemctl restart httpd # cd /var/www/html # mkdir CentOS7 # mount /dev/cdrom /var/www/html/CentOS7/
Win7客户端尝试连接服务器
【http://192.168.6.233/】
【http://192.168.6.233/CentOS7/】
保证用户可以看到安装光盘的内容:http://192.168.6.233/CentOS7/
保证用户可以看到安装脚本文件的信息:http://192.168.6.233/ks.cfg
7、编辑ks.cfg文件
# cd ~ # ls # cp anaconda-ks.cfg /var/www/html/ # ls # mv anaconda-ks.cfg ks.cfg # ls -l # chmod +r ks.cfg # ls -l
Win7客户端尝试连接服务器
【vim ks.cfg】
8、重启所有服务,使配置生效。
# systemctl restart httpd # systemctl restart tftp.socket # systemctl restart dhcpd
9、打开新创建的虚拟机,网络适配器设置为:
运行虚拟机,就可以自动安装了
配置若有遗漏或错误,请评论留言。