一、PXE概述
- PXE批量部署的优点
规模化:同时装配多台服务器
自动化:安装系统、配置各种服务
远程实现:不需要光盘、U盘等安装介质
- PXE(preboot excution environment)
预启动执行环境,在操作系统之前运行
PXE(预启动执行环境,在操作系统之前运行)是由Intel公司开发的网络引导技术,工作在Client/Server模式,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统
- 服务端
运行DHCP服务,用来分配地址、定位引导程序
运行TFTP服务,提供引导程序下载
- 客户端
网卡支持PXE协议
主板支持网络引导
二、搭建 PXE 远程安装服务器
- 1)安装 tftp-server xinetd dhcp vsftpd syslinux 软件包
tftp-server xinetd 用于传输系统内核和系统初始化镜像文件 vmlinuz initrd.img
dhcp 用于自动分配地址、指定PXE引导文件位置 next-server filename
vsftpd 用于提供系统软件包安装源
syslinux 用于提供PXE引导程序文件 pxelinux.0
初始化操作
- 2)复制 vmlinuz initrd.img pxelinux.0 到 /var/lib/tftpboot/ 目录
cd /mnt/images/pxeboot
cp initrd.img /var/lib/tftpboot/ #复制 初始化镜像文件(linux引导加载模块)到TFTP根目录下
cp vmlinuz /var/lib/tftpboot/ #复制 Linux系统的内核文件 到TFTP根目录下
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ #复制 PXE引导程序 到TFTP根目录下
- 3)在 /var/lib/tftpboot/ 目录里准备 PXE 启动菜单配置文件 pxelinux.cfg/default
mkdir /var/lib/tftpboot/pxelinux.cfg
vim /var/lib/tftpboot/pxelinux.cfg/default
- 4)修改服务配置文件,启动 tftp-server xinetd dhcpd vsftpd 服务
vim /etc/xinetd.d/tftp
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf
查找引导程序文件
mkdir /var/ftp/centos7
cp -rf /mnt/* /var/ftp/centos7/
或者mount /dev/sr0 /var/ftp/centos7/
systemctl start vsftpd
systemctl enable vsftpd
使用 VMware创建的虚拟机进行测试
新建虚拟机(其余选项均可默认,内存至少需要 2GB)后开机
在提示字符串“boot:”后直接按Enter键,将会自动通过网络下载安装文件,并进入默认的图形安装入口;
后续安装步骤可见Linux系统部署-优快云博客
- 5)安装 system-config-kickstart ,准备 kickstart 自动应答文件,修改 PXE 启动菜单配置文件
其他选项保持默认设置即可
最小化安装
%packages
@^minimal
%end
vim ks.cfg
将上述软件包安装脚本复制黏贴
cp /root/ks.cfg /var/ftp/ks.cfg
vim /var/lib/tftpboot/pxelinux.cfg/default
- 6)客户机要求至少内存2G,并设置成网络引导开机