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

相关推荐
belldeep2 小时前
WSL 安装 Debian 12 后,Linux 如何安装 curl , quickjs ?
linux·运维·debian·curl·quickjs
%#RulER#%4 小时前
哈工大计算机系统2024大作业——Hello的程序人生
linux·笔记·程序人生
y1x2y34 小时前
【HITCSAPP 哈工大计算机系统期末大作业】 程序人生-Hello’s P2P
linux·程序人生·ubuntu
God_archer4 小时前
程序人生-hello’s P2P
linux·c语言·汇编·程序人生
西域曼波王4 小时前
哈尔滨工业大学计算机系统大作业程序人生-Hello’s P2P
linux·c语言·编辑器·vim
无效的名字5 小时前
如何安装并使用RustDesk
linux·运维·服务器
Amo Xiang7 小时前
Python 解释器安装全攻略(适用于 Linux / Windows / macOS)
linux·windows·python·环境安装
电鱼智能的电小鱼8 小时前
虚拟现实教育终端技术方案——基于EFISH-SCB-RK3588的全场景国产化替代
linux·网络·人工智能·分类·数据挖掘·vr
Aaron.Ma9 小时前
ubuntu自定义服务自动启动
linux·服务器·ubuntu
梓䈑10 小时前
【Linux系统】命令行参数 和 环境变量(含内建命令介绍)
linux·运维·chrome