PXE-preboot execute environment
荣涛 2021年10月13日

文档修改日志

日期 修改内容 修改人 备注
2021年10月13日 创建 荣涛
2021年11月9日 添加 荣涛 PXE如何工作

1. 引言

PXE是Intel在很久以前提出来的一项用于通过网络来引导系统的标准,具体标准说明可以在http://www.pix.net/software/pxeboot/archive/pxespec.pdf中找到。

2. 什么是预引导执行环境 (PXE)?

预引导执行环境 (PXE),发音为 pixie,是一组标准,使计算机能够通过网络连接加载操作系统 (OS)。PXE 可用于快速安装操作系统,通常用于服务器和客户端。它也可以称为PXE 引导、从网络引导、网络引导或局域网引导。

PXE 可以大大简化计算机的大型部署。它取代了使用光盘 (CD) 或通用串行总线 (USB) 驱动器来安装操作系统。单个操作系统映像可以同时快速安装在多台计算机上。

3. PXE 是如何工作的?

PXE 要求客户端和服务器成功引导的几个标准。客户端必须在统一可扩展固件接口 ( UEFI ) 或网络接口卡 ( NIC )固件中支持 PXE 。网络必须具有已配置的动态主机配置协议 ( DHCP ) 服务器和普通文件传输协议 ( TFTP ) 服务器。通常还有另一个成像服务器。

DHCP 服务器使用选项 66 和 67 来通告 PXE 引导服务器Internet 协议 (IP) 地址。然后客户端联系引导服务器并使用 TFTP 下载和引导网络引导程序 (NBP)。NBP 是一个小型操作系统,仅包含内核、基本驱动程序和可以下载其余操作系统组件的基本程序。Windows 预安装环境或小型Linux 操作系统是最常见的由网络引导加载的操作系统。

proxyDHCP 服务器可用于处理 PXE 请求。

以下是 PXE 引导过程中的步骤:

  1. 客户端基本输入/输出系统 ( BIOS ) 启动 PXE 引导。这可以由客户端操作员选择,也可以是其他引导介质出现故障时的后备选项。
  2. 客户端广播 DHCP 请求和 PXE 请求。
  3. DHCP 服务器以 DHCP 响应进行响应,以便客户端可以设置 IP 地址,并以 TFTP 服务器的 IP 地址和 NBP 的文件名进行响应。
  4. 客户端下载并启动 NBP。

许多现代计算机都支持使用IPv4和IPv6 的PXE 启动。存在一些特定于供应商的Wi-Fi网络引导实现,但没有 Wi-Fi PXE 标准。

网络引导是客户端功能。PXE 代码包含在主板 UEFI BIOS 或 NIC 固件只读存储器 ( ROM ) 中。它是企业计算机和服务器上的标准功能,但在某些消费硬件上可能会被省略。在某些计算机上,它需要在计算机的 BIOS 配置中激活。PXE 最常用的实现是使用 Intel 驱动程序。

Apple macOS计算机不支持 PXE。他们使用类似但不兼容的系统,称为引导服务器发现协议 (BSDP)。BSDP 使用 NetBoot 客户端访问 Apple 部署服务器。

4. 如何使用PXE?

PXE 是一个强大的工具,可以大大简化所有信息技术人员的工作。它对客户端、服务器、虚拟机 ( VM ) 和嵌入式物联网( IoT ) 设备很有用。

PXE 的主要用途是在新的或出现故障的计算机上安装全新的操作系统。这可以是客户端操作系统,例如Windows 10或Ubuntu Linux,也可以是服务器操作系统,例如Windows Server 2019或 Arch Linux。PXE 可以代替使用 USB 驱动器或 CD-ROM 作为安装介质。

从 PXE 而不是从物理介质安装操作系统通常有许多优点:

  • PXE 更方便,因为网络访问通常比专用引导设备更可用。
  • 现代网络可以比 CD 或 USB 驱动器更快。
  • 从中央网络位置加载映像可确保使用最新的操作系统映像。

大多数 VM 框架都支持 PXE。通过这种方式,可以生成新的 VM,然后通过网络连接快速映像。

PXE 部署还可用于托管故障排除和维护工具。在 PXE 启动过程中,NBP 可以向操作员显示要加载的操作系统选择。组织可以托管一个简单的Linux 发行版,该发行版可以执行硬件测试,并拥有可以执行高级客户端维护的工具,例如磁盘克隆、磁盘分区、安全磁盘擦除或密码重置。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FcfltRAN-1636806446021)(_v_images/20211109110100974_7184.png =270x)]

5. 网络引导安装过程

您可以从网络接口引导ESXi主机。网络引导过程取决于目标主机使用的是旧版 BIOS 还是 UEFI 固件,以及引导过程是使用 PXE TFTP、iPXE HTTP 还是 UEFI HTTP。

当您启动目标主机时,它会与环境中的不同服务器交互以获取网络适配器、引导加载程序、内核、内核的 IP 地址,最后是安装脚本。当所有组件就位后,安装开始,如下图所示。

PXE 引导安装过程概述

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9v3LNUlk-1636806446023)(_v_images/20211109110233054_18997.png)]

ESXi主机和其他服务器之间的交互过程如下:

  1. 用户引导目标ESXi主机。
  2. 目标ESXi主机发出 DHCP 请求。
  3. DHCP 服务器以 IP 信息、TFTP 或 HTTP 服务器的位置以及初始网络引导加载程序的文件名或 URL 进行响应。
  4. 在ESXi的主机联系TFTP或HTTP服务器并请求DHCP服务器指定的文件名或URL。
  5. TFTP 或 HTTP 服务器发送网络引导加载程序,然后ESXi主机运行它。初始引导加载程序可能会从服务器加载其他引导加载程序组件。
  6. 引导加载程序在 TFTP 或 HTTP 服务器上搜索配置文件,下载配置文件中指定的内核和其他 ESXi 组件,并在ESXi主机上引导内核。
  7. 安装程序以交互方式运行或使用配置文件中指定的 kickstart 脚本运行。

6. 参考链接

  • https://www.techtarget.com/searchnetworking/definition/Preboot-Execution-Environment
  • 网络引导安装过程概述
Copyright (C) CESTC Com.

PXE-preboot execute environment相关推荐

  1. 无人值守自动安装——PXE(Preboot eXecution Environment)

    文章目录 无人值守自动安装--PXE(Preboot eXecution Environment) 前言 一.PXE的原理与概念 前提条件 二.PXE的优点 三.PXE服务的构建过程 四.KickSt ...

  2. PXE(preboot execution environment):【网络】预启动执行环节:引导 live光盘 ubuntu livecd 16.4:成功...

    default menu.c32 label ubuntu menu label ubuntu (version 16.04) kernel ub1604/casper/vmlinuz append ...

  3. linux中实现pxe的自动安装

    linux中实现pxe的自动安装 什么是PXE PXE(preboot execute environment)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站 ...

  4. pxe+kickstart 实现基于网络的无人值守安装操作系统

    基于网络的无人值守安装操作系统 简介: 1.pxe PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的 ...

  5. PXE安装CentOS

    一.PXE 1.pxe概念 PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过 ...

  6. pxe+kickstart无人值守安装

    一.战前理论 什么是PXE? PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术, 工作于Client/Server的网络模式, 只想hi ...

  7. PXE大批量安装Linux系统

    大批量安装linux系统 方案:我们采用pxe方法安装 PXE简介 PXE(preboot execute environment)是由Intel公司开发的最新技术,可以实现无人值守linux系统自动 ...

  8. 利用kickstart实现pxe的自动化安装

    一.kickstart.pxe 是什么? kickstart是一个利用Anconda工具实现服务器自动化安装的方法:通过生成的kickstart配置文件ks.cfg,服务器安装可以实现从裸机到全功能服 ...

  9. PXE网络引导装机原理介绍

    作为计算机专业的学生,上学期间总是被亲戚朋友叫来解决电脑问题,比如装系统,选购电脑,配置路由器,电脑蓝屏等等.特别是帮一些女同学装系统,练就了一身的装系统能力. 大学时候装系统都是利用U盘进行装机(光 ...

最新文章

  1. Ansible之roles(角色)详解
  2. java yml 转 map_如何在Java中将YAML转换为JSON?
  3. ROS 常用命令汇总(不定期更新)
  4. Android开发面试题之Android四大组件
  5. fortify hp 价格_惠普推出“惠普Fortify软件安全中心套件”
  6. Mybatis_接口编程
  7. Linux流量监控工具 - iftop
  8. 图像色彩空间之RGB与HSI
  9. 钢构件建筑材料英国UKCA认证—EN 13381-4
  10. Java的三大基本特征及其特点
  11. Python数据处理039:数据分析之csv文件
  12. html5 sha1,js-sha1加密
  13. 文档服务器 件排名,全国服务器排名
  14. 《C++游戏编程入门 第四版》的例子Blackjack-
  15. 脚本(script)——通俗易懂去理解
  16. java项目-第90期基于ssm的嘟嘟二手书商城系统
  17. 龙蜥LoongArch架构研发全揭秘,龙芯开辟龙腾计划技术合作新范式
  18. 【Proteus仿真】Arduino+uln2003驱动步进电机+单按键启保停正反转控制
  19. [人生故事] -- 美国总统的幽默
  20. 单片机加减法计算器_课程设计--十进制加减法计算器单片机设计.doc

热门文章

  1. delphi 到出execl2010 文件损坏_如何修复Linux中损坏的软件包?
  2. 安川机器人编程加电弧_安川焊接机器人编程
  3. E: Sub-process /usr/bin/dpkg returned an error code (1) Ubuntu安装apt-get命令报错
  4. pycharm新建项目怎么选择框架_必看!心血管疾病怎么选择检查项目?
  5. dpkg: 处理归档 /var/cache/apt/archives/libpng12-0_1.2.54-1ubuntu1.1_amd64.deb (--unpack)时出错: 无法安装 /lib/
  6. Wireshark抓包工具使用
  7. Mac Docker安装MySQL5.7
  8. CentOS7.4到Elasticsearch一路坑(八)(坑没填上)
  9. 有关php链接MySql数据库的总结
  10. USACO section1.3 Barn Repair 修理牛棚(贪心)