Linux-PXE批量安装

news2024/11/28 16:51:36

一、部署 PXE 远程安装服务

    在大规模的 Linux 应用环境中,如 Web 群集、分布式计算等,服务器往往并不配备光驱设备,在这种情况下,如何为数十乃至上百台服务器裸机快速安装系统呢?传统的 USB光驱、移动硬盘等安装方法显然已经难以满足需求。

    本章将学习基于 PXE(Preboot eXecution Environment,预启动执行环境)技术的网络装机方法,并结合 Kickstart 配置实现无人值守自动安装。

   上述服务器的批量部署方法,具备以下三个优点:

       ①规模化:同时装配多台服务器;

       ②自动化:安装系统、配置各种服务;

       ③远程实现:不需要光盘、U 盘等安装介质。

    PXE 是由 Intel 公司开发的网络引导技术,工作在 Client/Server 模式,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统。若要搭建 PXE 网络体系,必须满足以下几个前提条件

   ① 客户机的网卡支持 PXE 协议(集成 BOOTROM 芯片),且主板支持网络引导。

   ② 网络中有一台 DHCP 服务器以便为客户机自动分配地址、指定引导文件位置。

   ③ 服务器通过 TFTP(Trivial File Transfer Protocol,简单文件传输协议)提供引导镜像文件的下载。

   其中,第一个条件实际上是硬件要求,目前绝大多数服务器和大多数 PC 都能够提供此支持,只需在 BIOS 设置中允许从 Network 或 LAN 启动即可。下面将介绍 PXE 远程安装服务的基本部署过程。


   Linux开机过程:

   ① 按下电源

   ② 自检(post)

   ③ 读取bios中谁是引导设备(光驱、硬盘、优盘、网卡)

             以上是硬件方面的启动过程,以下是软件方面的:

   ④ 加载引导程序:使用tftp(简单文件传输协议)从服务器拉取到本地

   ⑤ 加载初始化镜像:使用tftp(简单文件传输协议)从服务器拉取到本地

   ⑥ 加载内核:使用tftp(简单文件传输协议)从服务器拉取到本地

   ⑦ 装系统(要有系统文件):使用ftp从服务器拉取到本地

   ⑧ 安装进程接管其它的进程,把操作系统安装到硬盘上,加载到内存中


二、PXE有人值守配置操作

1、修改仓库配置文件

2、关闭防火墙、内核机制
3、安装ftp服务
4、拷贝

   将光盘上的所有数据拷贝到ftp目录下的一个文件

    因为拷贝的有目录必须有r选项

5、启动vsftpd服务
6、安装TFTP
7、vi编辑器修改tftp配置文件

8、启动tftp服务
9、将初始化镜像文件和内核文件拷贝到TFTP目录下

10、拷贝引导程序到tftp

   拷贝引导程序需要我们安装一个软件包

11、查看tftp目录下的文件
12、编辑主配置文件

13、安装DHCP服务(需要指定一些TFTP的数据)
14、修改DHCP参数(告诉用户tftp里的文件在哪里;并为用户分配一个IP地址)

15、验证(重新安装一个虚拟机)

    在VMware新建一个虚拟机进行测试     根据提示往下操作,内存选4G,安装后启动虚拟机,出现以下界面:

    在以下界面注意安装源,其余的与我们平时安装操作时是一样的:


三、PXE无人值守配置操作

     安装过程中需要我们手动选择语言、分区等参数,我们将这些参数写入到一个文件里边来实现一个无人值守的安装过程,我们称这个文件为应答文件。

   以下实验我们在上述实验的基础上进行:

1、安装应答程序并启动
2、操作界面中的设置(以下设置只是进行一个过程演示,在实际工作中需要根据实际需求来配置)

 

 

 三、测试

  新建一个虚拟机用来测试,建好后开机,之后不再执行任何操作,实现无人值守(建的时候硬盘和分区大小要设置的大一点)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1851341.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用Mixamo极简绑骨,导入unity中使用

如果你只想专注于角色建模,对于动画设计没有过多精力;如果你想白嫖别人的角色动画,用到自己的模型上;那么,这个网站很适合你:https://www.mixamo.com/ 操作步骤: 首先将自己的模型上传到这个网…

EOS black灵魂回响黑色无法联机/联机报错/联机失败怎么办

灵魂回响黑色EOS black中的职业系统,自由度非常高。从人物属性的精细调整,到装备属性的独特搭配,再到技能的个性化组合,每一步都充满了无限可能。更为惊喜的是,游戏中的角色职业不是一成不变的,而是随着手中…

公共网络IP地址不正确?别担心,这里有解决方案

在数字化时代,公共网络IP地址的正确性对于我们的在线体验至关重要。它不仅是网络连接的标识,更是确保我们正常访问互联网资源、享受网络服务的基础。然而,有时我们可能会遇到公共网络IP地址不正确的情况,这不仅会影响我们的网络速…

为什么五笔没人用了?

五笔输入法现在较少人使用的原因主要有以下几点: 学习门槛高:五笔输入法的学习难度相对较大,需要掌握所有的字根,全面了解编码的规律,并学习每个字的拆字原则,这要求用户有相当高的耐心和时间去学习和练习…

python自动化办公工具:自动批量生成奖状的工具(可视化)

👆点击关注 获取更多编程干货👆 不知道大家有没有注意到一种趋势,现在即便是那些非程序员,甚至对计算机一窍不通的人,也开始学习Python了,其“普及程度”实在让人感到有些惊讶。 那么,对于那些…

用RNN构建人名分类器

目录 项目综述1.导入必备的工具包2.处理数据,满足训练要求2.1 统计常用的字符2.2 进行规范化处理,去除重音符号2.3 将文件读取到内存中2.4 构建人名国家和具体人名的对应关系2.5 one-hot编码 3.构建RNN模型3.1 构建传统RNN模型3.2 构建传统LSTM模型3.3 构建传统GRU模…

springboot学习01-[springboot介绍、配置文件介绍、自动配置读取原理]

springboot介绍、配置文件介绍、自动配置读取原理 springBoot学习代码说明为什么java -jar springJar包后项目就可以启动 配置文件介绍配置文件加载顺序其他约定配置文件加载顺序profile配置文件加载配置文件绑定类属性通过Value的方式进行属性注入通过ConfigurationProperties…

Springboot 集成 Shardingsphere-JDBC

Springboot 集成 Shardingsphere-JDBC Shardingsphere系列目录:背景前提新增依赖分表策略简单分库分表策略垂直分库广播表水平分库(单表)水平分库(多表)水平分表 HINT配置逻辑代码 自定义分库分表(精准定位范围查询)配置代码精准定位数据库精…

计算机系统基础实训七-MallocLab实验

实验目的与要求 1、让学生理解动态内存分配的工作原理; 2、让学生应用指针、系统级编程的相关知识; 3、让学生应用各种动态内存分配器的实现方法; 实验原理与内容 (1)动态内存分配器基本原理 动态内存分配器维护…

python入门基础知识(错误和异常)

本文部分内容来自菜鸟教程Python 基础教程 | 菜鸟教程 (runoob.com) 本人负责概括总结代码实现。 以此达到快速复习目的 目录 语法错误 异常 异常处理 try/except try/except...else try-finally 语句 抛出异常 用户自定义异常 内置异常类型 常见的标准异常类型 语法…

Java赋值运算符

Java赋值运算符分为以下: 符号 作用 说明 赋值 int a 10,把10赋值给变量a 加后赋值 ab,将ab的值赋值给变量a - 减后赋值 a-b,将a-b的值赋值给变量a* 乘后赋值 a*b,将a*b的值赋值给变量a / 除后赋值 a/b,将a/b的值赋值给变量a % 取余赋值 a%b,将a%b的值赋值给变量…

全面国产化之路-信创

概叙 信创,即信息技术应用创新产业,这个词儿最早来源于“信创工委会”(全称是信息技术应用创新工作委员会),是在2016年由24家专业从事软硬件关键技术研究及应用的国内单位共同发起成立的一个非营利性社会组织。后…

qt+halcon实战

注意建QT工程项目用的是MSVC,如果选成MinGW,则会报错 INCLUDEPATH $$PWD/include INCLUDEPATH $$PWD/include/halconcppLIBS $$PWD/lib/x64-win64/halconcpp.lib LIBS $$PWD/lib/x64-win64/halcon.lib#include "halconcpp/HalconCpp.h" #include &quo…

一个漂亮的网站收藏函数

<!DOCTYPE html> <html lang="zh-CN"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>网站收藏</title><style>body …

会自动清除的文件——tempfile

原文链接&#xff1a;http://www.juzicode.com/python-tutorial-tempfile/ 在某些不需要持久保存文件的场景下&#xff0c;可以用tempfile模块生成临时文件或者文件夹&#xff0c;这些临时文件或者文件夹在使用完之后就会自动删除。 NamedTemporaryFile用来创建临时文件&…

Gradle学习-1

1、APK构建流程 2、Gradle的安装 &#xff08;1&#xff09;安装Java JDK JAVA JDK 下载地址下载安装后需要配置环境变量gradle是运行在Java虚拟机上的&#xff0c;所以需要配置Java JDK &#xff08;2&#xff09;安装 Gradle Gradle下载官网下载安装后需要配置环境变量 …

跨行业数据资产共享与协同:构建一体化数据共享平台,解锁数据资产潜力,促进多行业数据流通与深度应用,共创数字化转型新篇章,引领行业发展新趋势,开启智慧互联新纪元

一、引言 随着信息技术的飞速发展&#xff0c;数据已成为推动社会进步和经济发展的关键要素。然而&#xff0c;在传统行业领域&#xff0c;数据往往被限制在各自的“孤岛”中&#xff0c;难以实现跨行业的流通与共享。这不仅限制了数据的价值发挥&#xff0c;也阻碍了行业的创…

show/hide信号演示

代码&#xff1a; #include <gtk-2.0/gtk/gtk.h> #include <gtk-2.0/gdk/gdkkeysyms.h> #include <glib-2.0/glib.h> #include <stdio.h>gint delete_event(GtkWidget *window, GdkEvent *event, gpointer data) {gtk_widget_hide(window);return TRU…

Vue78-缓存路由组件

一、需求 路由切走的时候&#xff0c;组件会被销毁&#xff0c;路由切回来&#xff0c;组件被挂载&#xff01; 需要&#xff1a;路由切走的时候&#xff0c;组件不会被销毁。 二、代码实现 若是不加include属性&#xff0c;则在<router-view>里面展示的路由&#xff0c…

【一】【算法】经典树状数组和并查集,详细解析,初步认识,【模板】树状数组 1,树状数组并查集

【模板】树状数组 1 题目描述 如题&#xff0c;已知一个数列&#xff0c;你需要进行下面两种操作&#xff1a; 将某一个数加上 x x x 求出某区间每一个数的和 输入格式 第一行包含两个正整数 n , m n,m n,m&#xff0c;分别表示该数列数字的个数和操作的总个数。 第二…