Linux:PXE无人值守自动安装

目录

一、PXE概述

1、PXE是什么?

2、PXE的优点

3、KickStart 概述

4、PXE服务的构建过程

二、搭建PXE远程安装服务器

1、关闭防火墙

2、环境准备

2.1 添加一个网卡

2.2 查看虚拟网络编辑器

2.3 修改网卡配置文件

2.4 重启网卡

3、配置DHCP

3.1 安装并启用DHCP服务

3.2 复制配置文件

3.3 修改配置文件

3.4 启动dhcp服务

4、配置TFTP服务

4.1 安装

4.2 修改配置文件

4.3 准备ftp需要共享的文件

4.4 开启服务,设置开机自启动

5、准备PXE引导镜像文件pxelinux.0

6、手工配置启动菜单文件

7、安装ftp服务,准备CentOS7安装源

8、配置kickstart无人值守安装

8.1 安装system-config-kickstart工具

8.2 打开kickstart开始配置

9、验证是否成功


一、PXE概述

1、PXE是什么?

开机启动流程

PXE 是由 Intel 公司开发的网络引导技术,工作在 Client/Server 模式,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统。

PXE 严格来说并不是一种安装方式,而是一种引导的方式。进行 PXE 安装的必要条件是要安装的计算机中包含一个 PXE 支持的网卡(NIC),即网卡中必须要有 PXE Client。PXE (Pre-boot Execution Environment)协议使计算机可以通过网络启动。
协议分为 client 和 server 端,PXE client 在网卡的 ROM 中,当计算机引导时,BIOS 把 PXE
client 调入内存执行,由 PXE client 将放置在远端的文件通过网络下载到本地运行。
运行 PXE 协议需要设置 DHCP 服务器 和 TFTP 服务器。DHCP 服务器用来给 PXE client(将
要安装系统的主机)分配一个 IP 地址,由于是给 PXE client 分配 IP 地址,所以在配置 DHCP 服务器时需要增加相应的 PXE 设置。

此外,在 PXE client 的 ROM 中,已经存在了 TFTP Client。PXE Client 通过 TFTP 协议到 TFTP Server 上下载所需的文件。

2、PXE的优点

规模化:同时装配多台服务器
自动化:安装系统、配置各种服务
远程实现:不需要光盘、U盘等安装介质。

前提条件:
客户机的网卡支持 PXE 协议(集成 BOOTROM 芯片),且主板支持网络引导。
网络中有一台 DHCP 服务器以便为客户机自动分配地址、指定引导文件位置。
服务器通过 TFTP(Trivial File Transfer Protocol,简单文件传输协议)提供引导镜像文件的下载。
其中,第一个条件实际上是硬件要求,目前绝大多数服务器和大多数 PC 都能够提供此支持,只需在 BIOS 设置中允许从 Network 或 LAN 启动即可。

3、KickStart 概述

        KickStart 是一种无人职守安装方式。KickStart 的工作原理是通过记录典型的安装过程中所需人工干预填写的各种参数,并生成一个名为 ks.cfg 的文件;在其后的安装过程中(不只局限于生成 KickStart 安装文件的机器)当出现要求填写参数的情况时,安装程序会首先去查找 KickStart 生成的文件,当找到合适的参数时,就采用找到的参数,当没有找到合适的参数时,才需要安装者手工干预。这样,如果 KickStart 文件涵盖了安装过程中出现的所有需要填写的参数时,安装者完全可以只告诉安装程序从何处取 ks.cfg 文件,然后去忙自己的事情。等安装完毕,安装程序会根据 ks.cfg 中设置的重启选项来重启系统,并结束安装。

4、PXE服务的构建过程

  1. PXE客户机发出DHCP请求,向DHCP服务器申请IP地址。
  2. DHCP服务器响应PXE客户机的请求,自动从IP地址池中分配一个IP地址给PXE客户机,并且告知PXE客户机:TFTP服务器的IP地址和PXE引导程序文件pxelinux.0,默认在TFTP共享目录/var/lib/tftpboot/下
  3. PXE客户机向TFTP服务器发起获取pxelinux.0引导程序文件的请求。
  4. TFTP服务器响应PXE客户机的请求,将其共享的pxelinux.0文件传输给PXE客户机。
  5. PXE客户机通过网络来启动到系统安装主界面。
  6. PXE客户机向文件共享服务器(“ftp”、http、nfs等)发起获取centos或windows系统安装文件的请求。
  7. (vsftp)文件共享服务响应PXE客户机的请求,将共享的系统安装文件传输给PXE客户机。
  8. PXE客户机进入到安装提示向导界面,用户需要手动来完成系统安装的操作

二、搭建PXE远程安装服务器

1、关闭防火墙

systemctl stop firewalld
临时关闭防火墙

systemctl disable firewalld
下次开机不自启

setenforce 0
关闭核心防护

2、环境准备

2.1 添加一个网卡

需要配置双网卡一个作用是dhcp,一个使用网络源安装环境包

dhcp自动分配IP的网卡得是net1仅主机模式

2.2 查看虚拟网络编辑器

2.3 修改网卡配置文件

cd /etc/sysconfig/network-scripts 
进入网卡配置目录

cp ifcfg-ens33 ifcfg-ens37
复制网卡配置文件

vim ifcfg-ens37
修改网卡配置文件

PS:UUID要删除,否则相同的UUID会冲突

2.4 重启网卡

systemctl restart network 
重启网卡服务

3、配置DHCP

3.1 安装并启用DHCP服务

yum -y install dhcp

3.2 复制配置文件

cp -rfp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf 
-p连带文件属性一起复制

3.3 修改配置文件

vim /etc/dhcp/dhcpd.conf 
修改配置文件

 

3.4 启动dhcp服务

systemctl start dhcpd
开启dhcp服务

systemctl enable dhcpd
开机自启动的dhcp服务

 

4、配置TFTP服务

        配置前先简单说一下什么是tftp,tftp(Trivial File Transfer Protocol)是一个小并且易于实现的文件传输协议,tftp是基于UDP数据报,需要有自己的差错改正措施。tftp只支持文件传输,不支持交互,没有庞大的命令集。安全性低,不支持身份验证。

4.1 安装

yum -y install tftp-server
下载tftp

yum -y install xinetd
下载辅助管理tftp的软件xinetd

 

4.2 修改配置文件

vim /etc/xinetd.d/tftp
tftp被xinet所托管,xinetd默认没有安装配置文件

xinetd即extended internet daemon,xinetd是新一代的网络守护进程服务程序,又叫超级Internet服务器。经常用来管理多种轻量级Internet服务。xinetd提供类似于inetd+tcp_wrapper的功能,但是更加强大和安全

4.3 准备ftp需要共享的文件

mount /dev/cdrom /mnt
挂载

cd /mnt/images/pxeboot/
内核文件 内核初始化镜像文件    

cp initrd.img vmlinuz /var/lib/tftpboot/
复制内核初始化文件

PS:  vmlinuz:是可引导的、压缩的内核
     initrd.img:系统初始化文件

 

4.4 开启服务,设置开机自启动

systemctl start xinetd
systemctl enable  xinetd
systemctl start tftp
systemctl enable tftp

        以上就是为了将镜像中的内核文件+系统的初始化文件,丢到tftp的默认共享目录中,以便客户端来下载使用。 

5、准备PXE引导镜像文件pxelinux.0

pxelinux.0是个二进制文件,主要作用相当于一个系统安装步骤的指引,引导客户端如何安装系统

yum provides */pxelinux.0 
查找这个文件是由哪个软件包安装的,当不是一个路径和一个软件包时用*/

yum -y install syslinux
安装

rpm -ql syslinux | grep pxelinux
查找pxe引导程序的位置

cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
拷贝到tftp的根目录下,系统引导文件

PS:只有安装了 system-config-kickstart 软件包,才会有/usr/share/syslinux/目录及目录中的文件

 

6、手工配置启动菜单文件

       启动菜单用来指导客户机的引导过程,包括如何调用内核,如何加载驱动。默认的启动菜单文件为 default,应放置在 tftp 根目录的 pxelinux.cfg 子目录下,典型的启动菜单配置可参考以下操作自动或手动建立。
       至于为什么要是/var/lib/tftpboot/pxelinux.cfg/default文件,因为是由pxelinux.0这个文件决定好的。

mkdir /var/lib/tftpboot/pxelinux.cfg
默认pxelinux.cfg是没有的需要手动创建,注意它是一个目录而非文件虽然是以.cfg结尾

vim /var/lib/tftpboot/pxelinux.cfg/default 
配置default菜单文件

7、安装ftp服务,准备CentOS7安装源

yum -y install vsftpd

mount /dev/cdrom /mnt  [已挂载不需要重复操作]

mkdir /var/ftp/centos7

cp -rf /mnt/* /var/ftp/centos7
将镜像复制其中

systemctl start vsftpd  
启动vsftpd服务

8、配置kickstart无人值守安装

8.1 安装system-config-kickstart工具

yum install -y system-config-kickstart

8.2 打开kickstart开始配置

 

 

 

 查看是否保存

 

cd /root
进入家目录

vim anaconda-ks.cfg

  将里面的下图内容,复制到var/ftp/ks.cfg中

vim /var/ftp/ks.cfg

 

vim /var/lib/tftpboot/pxelinux.cfg/default 
进入菜单文件进行优化,将ks引导参数至引导菜单文件

至此配置PXE无人值守自动安装完成。

9、验证是否成功

创建一台新的虚拟机,断开镜像文件连接然后重启

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PXE(Preboot Execution Environment)是一种远程引导技术,可以在没有本地存储设备的情况下,通过网络将操作系统安装到客户端计算机上。无人值守安装是指在安装过程中不需要人工干预,所有的操作都可以自动完成。 要进行PXE无人值守安装Linux,首先需要搭建一个PXE远程安装服务器。这个服务器上需要安装一些必要的服务和软件包。具体步骤如下: 1. 安装PXE服务器需要的服务和软件包: - 安装vsftpd软件包,用来放置安装镜像,通过FTP访问镜像进行安装。 - 安装dhcp服务,用来给客户机分配IP地址。 - 安装syslinux软件包,提供pxe的引导程序。 - 安装tftp-server软件包,提供引导镜像文件的下载。 - 安装xinetd软件包,用来托管tftp服务。 - 安装system-config-kickstart软件包,用来实现无人值守安装。 2. 配置PXE服务器: - 配置vsftpd服务,设置安装镜像的存放路径。 - 配置dhcp服务,设置PXE客户端的IP地址分配范围和引导文件的位置。 - 配置tftp服务,设置引导文件的位置和相关权限。 3. 准备引导文件pxelinux.0: - 查询pxelinux.0文件是由哪个软件包安装的,可使用命令`yum provides */pxelinux.0`。 - 安装syslinux软件包,使用命令`yum -y install syslinux`。 - 查找pxe引导程序的位置,使用命令`rpm -ql syslinux | grep pxelinux`。 - 将pxelinux.0文件拷贝到tftp的根目录下,使用命令`cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/`。 4. 配置无人值守安装: - 使用system-config-kickstart工具创建一个Kickstart文件,该文件包含安装过程中所有的配置选项和安装脚本。 - 将Kickstart文件放置到PXE服务器的指定位置,客户端可以通过网络访问该文件进行无人值守安装。 通过DHCP服务完成PXE客户机和服务器之间的连接,将FTP服务器地址发送到客户端。客户端向FTP服务器请求引导文件和系统安装文件,并通过引导文件加载到安装系统的安装向导界面。在无人值守安装过程中,安装程序将根据预先配置的Kickstart文件中的参数自动完成安装过程。 请注意,以上步骤是一个简单的概述,具体的配置和操作可能会因为操作系统版本和网络环境的不同而有所差异。建议参考操作系统的官方文档或相关教程进行详细配置和操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值