民工心事 发表于 2024-5-20 16:30:07

PXE+Kickstart无人值守安装安装Centos7.9

目录

[*]一、什么是PXE

[*]1、简介
[*]2、工作模式
[*]3、工作流程

[*]二、什么是Kickstart

[*]1、简介
[*]2、触发方式

[*]三、无人值守安装系统工作流程
[*]四、实验摆设

[*]1、环境准备
[*]2、服务端:关闭防火墙和selinux
[*]3、添加一张仅主机的网卡
[*]4、配置仅主机的网卡

[*]4.1、修改网络连接名
[*]4.2、配IP地点
[*]4.3、重启网卡

[*]5、配置DHCP服务

[*]5.1、关闭仅主机网卡的本地DHCP服务
[*]5.2、配置服务端DHCP服务器

[*]6、安装tftp
[*]7、安装syslinux

[*]7.1、将pxelinux.0配置文件以及光盘镜像中的文件复制到tftp目录中
[*]7.2、配置syslinux服务程序

[*]8、安装vsftpd服务
[*]9、创建Kickstart应答文件

[*]五、自动摆设客户端主机

一、什么是PXE

1、简介

PXE(Preboot Execution Environment,预启动执行环境)是一种由Intel公司设计的网络引导技术协议。它使计算机能够在没有本地操作系统、硬盘或引导媒体的情况下,通过网络接口卡(NIC)从远程服务器下载引导程序和其他操作系统安装文件,进而实现远程安装操作系统或其他软件。
2、工作模式

基于Client/Server架构


[*]PXE客户端:通常内置在支持PXE的网络适配器的只读存储器(ROM)中,当计算机启动时,BIOS将控制权交给PXE客户端软件,该软件通过网络发出启动请求。
[*]PXE服务器:接收到客户端的请求后,会分配IP地点给客户端(通常通过DHCP服务器),并提供引导文件(如Linux内核、初始化RAM磁盘等)供客户端下载。这些文件常常通过TFTP(Trivial File Transfer Protocol)协议传输。
3、工作流程

https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232545224-873813713.png
1、启动过程:计算机在启动时通过BIOS或UEFI发出PXE启动请求,并广播该请求到网络中的所有设备。

2、DHCP提供IP地址:PXE客户端接收到广播请求后,会通过DHCP(Dynamic Host Configuration Protocol)协议向DHCP服务器发送请求,以获取IP地址和其他网络配置信息。

3、DHCP回应:DHCP服务器接收到PXE客户端的请求后,会分配一个可用的IP地址,并将其作为回应发送给PXE客户端。

4、TFTP加载启动文件:PXE客户端通过TFTP(Trivial File Transfer Protocol)从网络中的TFTP服务器下载启动文件(通常称为pxelinux.0)。

5、启动文件执行:PXE客户端执行下载的启动文件,该文件包含了操作系统镜像的位置和其他配置信息。

6、操作系统镜像下载:根据启动文件中指定的位置,PXE客户端通过TFTP从网络中的TFTP服务器下载操作系统镜像文件。

7、操作系统加载和安装:一旦操作系统镜像文件下载完成,PXE客户端会将其加载到计算机的内存中,并开始执行操作系统的安装过程。二、什么是Kickstart

1、简介

Kickstart是一种无人值守的安装方式。它的工作原理是在安装过程中记录典范的需要人工干预填写的各种参数,并生成一个名为 ks.cfg的文件。
如果在安装过程中(不只范围于生成Kickstart安装文件的呆板)出现要填写参数的情况,安装程序首先会去查找 Kickstart生成的文件,如果找到合适的参数,就采用所找到的参数;如果没有找到合适的参数,便需要安装者手工干预了。
所以,如果Kickstart文件涵盖了安装过程中大概出现的所有需要填写的参数,那么安装者完全可以只告诉安装程序从何处取ks.cfg文件。等安装完毕,安装程序会根据ks.cfg中的设置重启系统,并竣事安装
2、触发方式


[*]通过网络使用 PXE(预启动执行环境)引导时引用 Kickstart 文件位置。
[*]使用光盘、USB等可移动介质上的引导菜单选项指定 Kickstart 文件路径。
[*]在假造化平台中,通过ISO映像或配置管理工具转达Kickstart配置。
三、无人值守安装系统工作流程

https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232544805-2087847761.jpg
四、实验摆设

1、环境准备

实验环境:VMware Workstation 16 Pro
系统平台:Centos7.9(最小化安装)
2、服务端:关闭防火墙和selinux

systemctl stop firewalld
systemctl disable firewalld
setenforce 0https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232544450-597487752.png
3、添加一张仅主机的网卡

https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232544080-1052122107.png
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232543620-449329608.png
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232543214-1982752093.png
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232542852-2127320671.png
4、配置仅主机的网卡

4.1、修改网络连接名

默认的以太网连接会被定名为"有线连接 1"
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232542502-286830139.png
nmcli connection modify '有线连接 1' con-name ens364.2、配IP地点

按照自己的ip地点网段和网络连接名修改
nmcli connection modify ens36 ipv4.addresses 192.168.80.10/24 autoconnect yes ipv4.method manualhttps://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232542163-2035136658.png
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232541833-545163163.png
4.3、重启网卡

nmcli connection down ens36
nmcli connection up ens36https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232541439-1893229910.png
5、配置DHCP服务

5.1、关闭仅主机网卡的本地DHCP服务

编辑-->假造网络编辑器
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232541012-1486848853.png
5.2、配置服务端DHCP服务器

yum -y install dhcp -y
vim /etc/dhcp/dhcpd.conf
subnet 192.168.80.0 netmask 255.255.255.0 {
range 192.168.80.100 192.168.80.199;
option subnet-mask 255.255.255.0;
default-lease-time 21600;
max-lease-time 43200;
next-server 192.168.80.10;
filename "/pxelinux.0";
}https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232540610-1809481373.png

[*]subnet 192.168.80.0 netmask 255.255.255.0 { ... }:这部分定义了一个DHCP服务将管理的子网。192.168.80.0是子网的网络地点,netmask 255.255.255.0(或简写为/24)指定了子网掩码
[*]range 192.168.80.100 192.168.80.199;:定义了DHCP服务器动态分配给客户端的IP地点池。这意味着当客户端请求IP地点时,DHCP服务器将从这个范围内随机选择一个未分配的IP地点分配给客户端。(注意不要将服务器端的ip地点包罗在地点池内)
[*]option subnet-mask 255.255.255.0;:设置客户端的子网掩码为255.255.255.0。
[*]default-lease-time 21600;:设置客户端默认的IP地点租约时间为21600秒,即6小时。
[*]max-lease-time 43200;:设置客户端最大IP地点租约时间为43200秒,即12小时。
[*]next-server 192.168.80.10;:指定下一个启动服务器(Next Server)的IP地点为192.168.80.10。这是用于PXE引导的重要设置,指明了应该从哪个服务器获取启动文件。
[*]filename "/pxelinux.0";:指定了PXE引导过程中客户端应请求的启动文件名。在这个例子中,客户端将尝试从TFTP服务器(通常与DHCP服务器是同一台呆板)下载/pxelinux.0文件来继续启动过程。
重启DHCP服务并开机自启
systemctl restart dhcpd
systemctl enable dhcpdhttps://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232540232-1667387151.png
6、安装tftp



[*]PXE客户端在启动过程中,通过网络向PXE服务器请求引导信息。TFTP服务器负责提供这些初始引导文件
[*]在PXE引导过程中,客户端还需要获取安装过程中的其他必要文件,如Linux内核(vmlinuz)、初始化RAM磁盘(initrd.img)等,这些都是通过TFTP协议从服务器下载的。
yum install -y tftp-server
systemctl start tftp
systemctl enable tftphttps://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232539895-192786087.png
7、安装syslinux

7.1、将pxelinux.0配置文件以及光盘镜像中的文件复制到tftp目录中

安装syslinux的目的是简化初次安装或其他特殊用途的启动盘
yum install syslinux -y
cd /var/lib/tftpboot/
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
mkdir -p /media/cdrom
mount /dev/cdrom /media/cdrom/
cp /media/cdrom/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/
cp /media/cdrom/isolinux/{vesamenu.c32,boot.msg} /var/lib/tftpboot/https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232539567-1275539812.png


[*]cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/:复制Syslinux安装目录下的pxelinux.0文件到TFTP根目录。这个文件是PXE引导加载程序,允许客户端通过网络启动并加载菜单或直接加载内核。
[*]cp /media/cdrom/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/:从光盘的images/pxeboot/目录中复制vmlinuz(Linux内核映像)和initrd.img(初始化RAM磁盘映像)到TFTP根目录。这两个文件是PXE引导后,客户端现实使用的操作系统核心和早期用户空间环境
[*]cp /media/cdrom/isolinux/{vesamenu.c32,boot.msg} /var/lib/tftpboot/:从光盘的isolinux/目录中复制vesamenu.c32(一个用于提供图形化菜单的库文件)和boot.msg(大概包罗启动时显示的消息或欢迎信息的文本文件)到TFTP根目录。这通常用于增强PXE引导时的用户体验,比如显示一个图形化的启动菜单供用户选择差别的安装或引导选项。
7.2、配置syslinux服务程序

mkdir -p /var/lib/tftpboot/pxelinux.cfg
cp /media/cdrom/isolinux/isolinux.cfg pxelinux.cfg/default
vim /var/lib/tftpboot/pxelinux.cfg/default

1 default linux
64   append initrd=initrd.img inst.stage2=ftp://192.168.80.10 ks=ftp://192.168.80.10/pub    /ks.cfg quiethttps://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232539236-1444568264.png


[*]initrd=initrd.img: 指定使用名为initrd.img的初始化RAM磁盘作为临时根文件系统。
[*]inst.stage2=ftp://192.168.80.10: 设置第二阶段安装源为FTP服务器,地点为192.168.80.10。这意味着操作系统安装文件将从该FTP服务器上获取。
[*]ks=ftp://192.168.80.10/pub/ks.cfg: 指定了Kickstart配置文件的路径,同样通过FTP从192.168.80.10服务器的pub/ks.cfg位置获取。Kickstart文件自动执行安装过程,定义了安装时的各种配置选项。
[*]quiet: 这个参数告诉安装程序在安装过程中保持安静模式,即只管减少屏幕输出信息,仅显示错误和重要状态更新。
8、安装vsftpd服务

光盘镜像时通过ftp协议传输的,因此要用到vsftpd服务程序
yum install -y vsftpd
systemctl restart vsftpd
systemctl enable vsftpd
cp -r /media/cdrom/* /var/ftp/https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232538833-78624884.png
9、创建Kickstart应答文件

Kickstart应答文件中包罗了系统安装过程中需要使用的选项和参数信息。
系统可以自动调取这个应答文件的内容,从而彻底实现无人值守安装系统。
cp ~/anaconda-ks.cfg /var/ftp/pub/ks.cfg
chmod +r /var/ftp/pub/ks.cfg
vim /var/ftp/pub/ks.cfg

5 url --url=ftp://192.168.80.10      # 删除原本的cdrom
30 clearpart --all --initlabel         # 意思是清空所有磁盘内容并初始化磁盘五、自动摆设客户端主机



[*]创建假造机
[*]自定义
[*]下一步
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232538511-1270609215.png
下一步
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232538191-1122393855.png
稍后安装操作系统--> 下一步
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232537814-618989619.png
下一步
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232537477-2113261842.png
管理好假造机名称和位置,下一步
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232537127-609064014.png
下一步
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232536779-2005316990.png
下一步
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232536438-1773897509.png
网络类型选仅主机
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232536136-1876517903.png
下一步
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232535813-756436453.png
下一步
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232535491-1647436248.png
下一步
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232535176-1465989202.png
下一步
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232534744-1648433975.png
下一步
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232534387-1542139340.png
完成
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232533993-248057204.png
开启测试
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232533600-1582671487.png
不影响无人值守
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232533294-1724479185.png
开始设置安装源
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232532630-1420470445.png
自动设置root密码,在anaconda-ks.cfg中
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232532220-1320070618.png
成功安装
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232531800-1376843820.png
登录密码与服务端假造机的登录密码同等
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232531426-247027673.png
ip地点也在地点池中
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232531118-1273698556.png
anaconda-ks.cfg就是original-ks.cfg
https://img2023.cnblogs.com/blog/3332572/202405/3332572-20240513232530581-943991367.png


[*]anaconda-ks.cfg:安装程序自动生成的
[*]original-ks.cfg:模板的Kickstart配置文件
至此PXE+Kickstart无人值守安装centos7.9操作系统完成

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: PXE+Kickstart无人值守安装安装Centos7.9