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电脑自动部署进行装机,节省了大量的时间。

相关推荐
ltl4 小时前
实时 OS 巡礼:VxWorks、QNX、Zephyr 与 PREEMPT_RT
linux
我是谁??4 小时前
Ubuntu22.04更换清华源
linux·运维·服务器
Shell运维手记4 小时前
Linux 常用基础命令学习笔记
linux·运维·笔记·学习·算法·github
测试运维日常笔记6 小时前
Linux系统安装配置TigerVNC服务器完整指南
linux·运维·服务器
雾时之林7 小时前
Linux----cron定时服务
linux·运维·服务器
wengqidaifeng8 小时前
1.从“会敲命令”到理解 Linux:15 个基础指令、文件树与命令执行的本质
linux·运维·服务器·ubuntu
奔跑的架构师10 小时前
[A-49]ARMv9/v8-PSCI接口规范与工作流程简介
android·linux·arm开发·arm
(╹◡╹)11 小时前
11.RK3588本地大模型内存评估优化
java·linux·前端
码农客栈11 小时前
Linux 设备树
linux
AI视觉网奇11 小时前
cannot import name ‘model_urls‘ from ‘torchvision.models.resnet‘
linux·前端·javascript