PXE批量装机

目录

前言

一、交互式

(一)、搭建环境

(二)、配置dhcp服务

(三)、FTP服务

(四)、配置TFTP服务

(五)、准备pxelinx.0文件、引导文件、内核文件

(六)、测试

二、非交互式

(一)、配置pxe无人值守安装

(二)、修改ks.cfg文件

(三)、修改default文件

(四)测试

总结



前言

PXE(Pre-boot Execution Environment,预启动执行环境)是由Inter公司开发的网络引导技术,工作在Client/Server模式,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统。

PXE是什么?

批量装机系统,网络安装linux操作系统。需要客户端的网卡支持pxe网络启动。
RHEL 8无此服务包,此实验在RHEL 7上完成!

|-------------------------|-------------------------------------------|
| dhcp | 动态主机配置协议 |
| xinted | 可以监视一些网络请求的守护进程,其根据网络请求来调用相应的服务进程来 处理连接请求 |
| tftp-server | 简单文件传输协议 |
| vsftpd | 为客户端提供系统安装时所需的文件 |
| syslinux | 产生pxelinux.0文件 |
| system-config-kickstart | 生成kickstart配置文件 |

一、交互式

(一)、搭建环境

防火墙设置,宽容模式

添加网络,将分配取消

配置网卡和本地yum源,后挂载mount /dev/sr0 /mnt

安装服务,dhcp,vsftp,tftp,syslinux

复制代码
yum install -y dhcp xinetd tftp-server vsftpd syslinux 

(二)、配置dhcp服务

复制代码
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf

启动服务

复制代码
systemctl start dhcpd

(三)、FTP服务

将/dev/sr0挂载到ftp服务目录上或者将内容全部复制到ftp服务目录里

这里选用的后者

复制代码
mkdir -p /vat/ftp/centos7
cp /mnt/* /vat/ftp/centos7/

启动服务

复制代码
systemctl start vsftpd

(四)、配置TFTP服务

复制代码
vim /etc/xinetd.d/tftp

启动服务

复制代码
systemctl start tftp

(五)、准备pxelinx.0文件、引导文件、内核文件

复制代码
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot
cd /mnt/images/pxeboot
cp initrd.img vmlinuz /var/lib/tftpboot
mkdir -p /var/lib/tftpboot/pxelinux.cfg
vim /var/lib/tftpboot/pxelinux.cfg/default

(六)、测试

新开虚拟机网络适配器为vmnet2

显示OK后enter

后续操作与新安装虚拟机操作一样。

二、非交互式

接着上面继续操作

(一)、配置pxe无人值守安装

Kickstart :是一种无人值守的安装方式,提前定义好Linux安装过程的配置文件,名为
ks.cfg,这个文件预先定义了安装要求从而进行自动化安装。

复制代码
yum install -y system-config-kickstart.noarch

system-config-kickstart

自行添加网络设备,防火墙默认SElinux为激活,其余可不管

切记要保持再退出,否则要重新配置

(二)、修改ks.cfg文件

查看家目录能看到文件ks.cfg

从/root/anaconda-ks.cfg文件中拷贝软件安装字段到ks.cfg

vim ks.cfg

复制代码
%packages
@^graphical-server-environment
@base
@core
@desktop-debugging
@development
@dial-up
@fonts
@gnome-desktop
@guest-agents
@guest-desktop-agents
@hardware-monitoring
@input-methods
@internet-browser
@multimedia
@print-client
@x11
chrony
kexec-tools

%end

(三)、修改default文件

复制代码
vim /var/lib//tftpboot/pxelinux.cfg/default

将修改后的ks.cfg文件复制到/var/ftp

复制代码
cp /root/ks.cfg  /var/ftp

(四)测试

新开虚拟机网络适配器为vmnet2等待自动安装(时间稍微长点),登录root用户即可


总结

pxe配置非常适用批量的装机,利用dhcp自动分配IP将同网段IP电脑自动部署进行装机,节省了大量的时间。

相关推荐
jimy17 小时前
安卓里运行Linux
linux·运维·服务器
爱凤的小光8 小时前
Linux清理磁盘技巧---个人笔记
linux·运维
耗同学一米八9 小时前
2026年河北省职业院校技能大赛中职组“网络建设与运维”赛项答案解析 1.系统安装
linux·服务器·centos
知星小度S10 小时前
系统核心解析:深入文件系统底层机制——Ext系列探秘:从磁盘结构到挂载链接的全链路解析
linux
2401_8904430210 小时前
Linux 基础IO
linux·c语言
智慧地球(AI·Earth)11 小时前
在Linux上使用Claude Code 并使用本地VS Code SSH远程访问的完整指南
linux·ssh·ai编程
老王熬夜敲代码12 小时前
解决IP不够用的问题
linux·网络·笔记
zly350012 小时前
linux查看正在运行的nginx的当前工作目录(webroot)
linux·运维·nginx
QT 小鲜肉12 小时前
【Linux命令大全】001.文件管理之file命令(实操篇)
linux·运维·前端·网络·chrome·笔记
问道飞鱼13 小时前
【Linux知识】Linux 虚拟机磁盘扩缩容操作指南(按文件系统分类)
linux·运维·服务器·磁盘扩缩容