PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端(客户端)基本软件设置,从而引导预先安装在服务器中的终端操作系统。所以可以通过pxe安装linux系统,那如何去配置呢?
关于PXE的自认为写的比较好的博客(可以借鉴):
(1)https://blog.csdn.net/MYS_Sunshine/article/details/78795065
(2)https://blog.csdn.net/sr_1114/article/details/78785681
步骤:
(1)安装
yum install httpd dhcp tftp-server syslinux -y
httpd ##共享安装资源
dhcp ##分配ip以及让客户主机获取pxelinux.0文件
pxelinux.0 ##预安装环境头文件,用来指定读取后续文件的程序
tftp-server ##提供tftp协议,令客户主机可以读取到预安装环境
syslinux ##提供pxelinux.0文件
(2)启用服务
systemctl stop firewalld
systemctl disable firewalld
systemctl start httpd
systemctl enable httpd
##启用tftp服务
vim /etc/xinetd.d/tftp
14 disable = no
systemctl restart xinetd
chkconfig --list
xinetd based services:
chargen-dgram: off
chargen-stream: off
daytime-dgram: off
daytime-stream: off
discard-dgram: off
discard-stream: off
echo-dgram: off
echo-stream: off
tcpmux-server: off
tftp: on ##tftp服务开启
time-dgram: off
time-stream: off
##启用dhcp服务
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf
option domain-name "example.com"; ##客户主机域名
option domain-name-servers 172.25.254.254; ##客户主机获得到的dns
default-lease-time 600; ##默认租约期
max-lease-time 7200; ##最长租约期
log-facility local7; ##日志级别
subnet 172.25.254.0 netmask 255.255.255.0 { ##网段,子网掩码
range 172.25.254.60 172.25.254.70; ##ip地址池
option routers 172.25.254.250; ##客户主机获得到的网关
filename "pxelinux.0"; ##客户主机获得到的预安装环境头文件
next-server 172.25.254.100; ##指定头文件所在主机的ip
}
systemctl start dhcpd
systemctl enable dhcpd
(3)设定共享文件
##制作安装源
mkdir /var/www/html/rhel7.0
mkdir /iso
mv /root/rhel-server-7.0-x86_64-dvd.iso /iso/
mount /iso/rhel-server-7.0-x86_64-dvd.iso /var/www/html/rhel7.0/
vim /etc/rc.d/rc.local
mount /iso/rhel-server-7.0-x86_64-dvd.iso /var/www/html/rhel7.0/
chmod +x /etc/rc.d/rc.local
##制作预安装环境
cp /var/www/html/rhel7.0/isolinux/* /var/lib/tftpboot/
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
mkdir /var/lib/tftpboot/pxelinux.cfg
cp /var/lib/tftpboot/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
systemctl restart xinetd
##设定自动化部署
yum install system-conifig-kickstart
system-config-kickstart ---->/var/www/html/rhel7.0.cfg
vim /var/lib/tftpboot/pxelinux.cfg/default
label autoinstall ##选项标签
menu label ^Autoinstall RHEL7.0 ##标题
kernel vmlinuz ##启动的内核文件
append initrd=initrd.img repo=http://172.25.254.100/rhel7.0 ks=http://172.25.254.100/rhel7.0.cfg
##初始化镜像 ##安装资源 ##自动安装脚本