Linux网络-PXE高效批量网络装机(命令+截图详细版)

目录

一.部署PXE远程安装服务

1.PXE概述

1.1.PXE批量部署的优点

1.2.要搭建PXE网络体系的前提条件

2.搭建PXE远程安装服务器

2.1.修改相关网络配置(仅主机模式)

2.2.关闭防火墙(老规矩)

2.3.保证挂载上

2.4.准备好配置文件并安装TFTP服务

修改配置文件

启动服务

检查状态

2.5.安装并启用dhcp服务(VMware虚拟机需注意关闭自带DHCP 上文有)

修改配置

启动并查看服务状态

2.6.准备PXE引导程序

2.7.准备Linux内核和初始化文件

2.8.安装FTP服务

2.9.准备CentOS 7 安装源

2.10.配置启动菜单文件

3.验证PXE网络安装

3.1.使用 VMware创建的虚拟机进行测试,虚拟机内存至少需要 2GB,否则在启动安装时可能会报错

3.2.设置仅主机模式

3.3.进入安装界面(基本上完成)

3.4.设置密码 重启即可

二.实现Kickstart无人值守安装

1.准备安装应答文件

1.1.安装system-config-kickstart 工具

1.2.打开“Kickstart 配置程序”窗口

1.3.配置kickstart选项

基本配置

安装方法

引导程序

分区信息

网络配置

防火墙配置

安装后脚本

保存自动应答文件

配置安装包

2.验证无人值守安装

2.1.全自动(将prompt 1→0 上图)

2.2.等待安装结束即可


一.部署PXE远程安装服务

1.PXE概述

PXE(预启动执行环境,在操作系统之前运行)是由Intel公司开发的网络引导技术,工作在

Client/Server模式,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操

作系统

1.1.PXE批量部署的优点

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

1.2.要搭建PXE网络体系的前提条件

客户端

  • 主板支持网络引导
  • 网卡支持PXE协议(现在基本都有)

服务端

  • 运行DHCP服务,用来分配地址、定位引导程序
  • 运行TFTP服务,提供引导程序下载

2.搭建PXE远程安装服务器

PXE 远程安装服务器集成了 CentOS 7 安装源、TFTP 服务、DHCP 服务、FTP 服务,能够向客

户机裸机发送 PXE引导程序、Linux 内核、启动菜单等数据,以及提供安装文件

2.1.修改相关网络配置(仅主机模式)

2.2.关闭防火墙(老规矩

systemctl disable --now firewalldsetenforce 0vim /etc/selinux/config

2.3.保证挂载上

mount /dev/sr0 /mntdf

2.4.准备好配置文件并安装TFTP服务

  • 是一个基于UDP协议实现的用于在客户机和服务器之间进行简单文件传输的协议,适合于小文件传输的应用场合。TFTP服务默认由xinetd服务进行管理,使用UDP 端口69
  • xinetd是新一代的网络守护进程服务程序,又叫超级服务器,常用来管理多种轻量级Internet服务
 ls /etc/yum.repos.d/

yum install -y xinetd tftp-server

修改配置文件
 cd /etc/xinetd.d/lsvim tftp

protocol       = udp                         TFTP使用UDP协议   wait           = no                          no表示客户机可以多台一起连接,yes表示客户机只能一 台一台连接server_args    = -s /var/lib/tftpboot        指定TFTP根目录(文件存储路径)disable        = no                          no表示开启TFTP服务

启动服务
[root@localhost xinetd.d]# systemctl enable --now xinetd
[root@localhost xinetd.d]# systemctl enable --now tftp

检查状态
systemctl status tftpsystemctl status xinetd

2.5.安装并启用dhcp服务(VMware虚拟机需注意关闭自带DHCP 上文有

yum install -y dhcp

cd /usr/share/doc/dhcp-4.2.5/ls\cp -f dhcpd.conf.example /etc/dhcp/dhcpd.conf

修改配置
cd /etc/dhcp/lsvim dhcpd.conf

ddns-update-style none;                        禁用 DNS 动态更新next-server 192.168.80.101;                    指定 TFTP 服务器的地址filename "pxelinux.0";                         指定 PXE 引导程序的文件名


subnet 192.168.80.0 netmask 255.255.255.0 {    声明要分配的网段地址range 192.168.80.100 192.168.80.200;          设置地址池option routers 192.168.80.101;                默认网关地址指向TFTP服务器的IP地址
}

启动并查看服务状态
systemctl enable --now dhcpdsystemctl status dhcpd

2.6.准备PXE引导程序

yum install -y syslinux

cd /usr/share/syslinux/ls[root@localhost syslinux]# cp pxelinux.0 /var/lib/tftpboot/
[root@localhost syslinux]# ls /var/lib/tftpboot/
pxelinux.0

2.7.准备Linux内核和初始化文件

cd /mnt/lscd images/lscd pxeboot/lscp vmlinuz initrd.img /var/lib/tftpboot/ls /var//lib/tftpboot/

2.8.安装FTP服务

yum install -y vsftpd

2.9.准备CentOS 7 安装源

systemctl enable --now vsftpdcd /var/ftpmkdir centos7ls /mnt/mount /dev/sr0 /var/ftp/centos7/cd /var/ftp/centos7/lscd /var/lib/tftpboot/ls

2.10.配置启动菜单文件

cd /var/lib/tftpboot/lsmkdir pxelinux.cfglscd pxelinux.cfg/touch defaultlsvim defaultcd ..pwdls -R

default auto 							指定默认入口名称
prompt 1 								设置是否等待用户选择,“1”表示等待用户控制label auto								图形安装(默认)引导入口,label 用来定义启动项
kernel vmlinuz							kernel 和 append用来定义引导参数
append initrd=initrd.img method=ftp://192.168.80.101/centos7label text						        文本安装引导入口
kernel vmlinuz
append text initrd=initrd.img method=ftp://192.168.80.101/centos7label rescue						    救援模式引导入口
kernel vmlinuz
append rescue initrd=initrd.img method=ftp://192.168.80.101/centos7

3.验证PXE网络安装

3.1.使用 VMware创建的虚拟机进行测试,虚拟机内存至少需要 2GB,否则在启动安装时可能会报错

3.2.设置仅主机模式

  • 开启虚拟机,在提示字符串“boot:”后直接按Enter键(或执行“auto”命令),将会自动通过网络下载安装文件,并进入默认的图形安装入口
  • 若执行“linux text”命令,则进入文本安装入口
  • 若执行 “linux rescue”命令,则进入救援模式

3.3.进入安装界面(基本上完成)

3.4.设置密码 重启即可

二.实现Kickstart无人值守安装

1.准备安装应答文件

1.1.安装system-config-kickstart 工具

yum install -y system-config-kickstart

1.2.打开“Kickstart 配置程序”窗口

  • 通过桌面菜单“应用程序”-->“系统工具”-->“Kickstart” 打开
  • 执行 “system-config-kickstart” 命令打开

1.3.配置kickstart选项

基本配置
  • 默认语言设为“中文(简体)”
  • 时区设为“Asia/Shanghai”
  • 设置root密码
  • 高级配置中勾选“安装后重启”
     

安装方法
  • 选FTP
  • FTP服务器:ftp://192.168.80.101
  • FTP目录:centos7

引导程序

分区信息

网络配置

防火墙配置

安装后脚本

勾选“使用解释程序”:/bin/bashmkdir /etc/yum.repos.d/repo.bakmv /etc/yum.repos.d/*.repo /etc/yum.repos.d/repo.bakecho '[local]name=localbaseurl=ftp://192.168.80.10/centos7enabled=1gpgcheck=0' > /etc/yum.repos.d/local.repo

保存自动应答文件
  • 选择“Kickstart 配置程序”窗口的“文件”-->“保存”命令,选择指定保存位置,文件名为ks.cfg
  • 默认保存在/root/ks.cfg
  • cp /root/ks.cfg /var/ftp/ks.cfg
配置安装包

vim anaconda-ks.cfg

复制后在最后一行插入

vim ks.cfg

复制

cp ks.cfg /var/ftpcd /var/ftp/lscd /var/lib/tftpboot/lscd pxelinux.cfg/ls

修改引导菜单文件

vim default

ks=ftp://192.168.80.101/ks.cfg

2.验证无人值守安装

2.1.全自动(将prompt 1→0 上图)

2.2.等待安装结束即可

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

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

相关文章

(AI Web、ChatGPT Native、Ai Loading、AI Tools、知豆AI)

目录 1、AI Web 2、ChatGPT Native 3、Ai Loading 4、AI Tools 5、知豆AI 1、AI Web

SQL中的top、limit以及rownum

在SQL查询的时候,需要限制输出的条数,然后对于不同的数据库有不同的限制条数的关键字 在SQL Sever中,限制条数的是top,用法如下: SELECT top 10 * FROM table1在MySQL中,限制条数的是limit,用…

呆滞物料规范管理了,问题就好办了

对于制造企业来说,库存是生存和发展的重要保障,过高的库存会占用企业大量的资金和管理成本,影响企业的正常生产,然而多数中小制造企业还在用人工干预管理,如何控制呆滞物料成为仓储管理的一大难题。 什么是呆滞料 呆滞…

PHP操作Mongodb

小编复习MongoDB,基础请参考&#xff1a;MongoDB-CSDN博客&#xff08;主要是linux操作&#xff09; PHP操作 <?php /** * 注意 本类仅适用于PHP7.0版本以上 * 请注意&#xff1a;mongoDB 支持版本 3.2 * mongo具体参数参考&#xff1a; https://docs.mongodb.com/…

为什么不建议在 Vue <style> 中使用 scoped?

前言 亲爱的小伙伴&#xff0c;你好&#xff01;我是 嘟老板。我们使用 Vue 开发页面时&#xff0c;经常需要在 <style> 标签下编写样式。不知你是否留意&#xff0c;在 <style> 标签下有一个属性经常出现 - scoped。你知道它起到什么作用吗&#xff1f;原理是怎样…

[Java EE] 多线程(九):ReentrantLock,Semaphore,CountDownLatch与线程安全的集合类(多线程完结)

&#x1f338;个人主页:https://blog.csdn.net/2301_80050796?spm1000.2115.3001.5343 &#x1f3f5;️热门专栏:&#x1f355; Collection与数据结构 (91平均质量分)https://blog.csdn.net/2301_80050796/category_12621348.html?spm1001.2014.3001.5482 &#x1f9c0;Java …

PE文件(四)FileBuffer-ImageBuffer作业

C语言实现如下功能 2.编写一个函数&#xff0c;将RVA的值转换成FOA 将文件加载到内存时&#xff0c;已知一个数据在内存中的地址&#xff0c;将此地址转化成文件在硬盘上时的相对于文件起始地址的文件偏移地址。即将虚拟内存偏移地址转换成文件偏移地址。 说明&#xff1a;这里…

ssm+vue的数据学院教务管理系统。Javaee项目,ssm vue前后端分离项目。

演示视频&#xff1a; ssmvue的数据学院教务管理系统。Javaee项目&#xff0c;ssm vue前后端分离项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&#xff0c;通过Spring Spr…

20个入门级Python项目

很多刚刚入门python的同学除了书上、老师讲解的1、2个demo示例之外&#xff0c;基本上很难找到适合练手的入门级Python项目。 作者不辞辛苦&#xff0c;花了很长时间整理了20个适合练手的实例项目 下面这20个练手项目全部去是免费的&#xff0c;大家可以任意下载&#xff0c;…

记一次DNS故障导致用户无法充值的问题(上)

背景&#xff1a; 刚刚过去了五一劳动节&#xff0c;回来后一上班接到客服运营团队反馈的节日期间的问题&#xff0c;反馈有部分用户无法充值。拿到的反馈资料有&#xff1a; 无法充值操作视频、问题时间、手机机型、手机网络情况。 1、从视频中看到用户点击支付后没有任何反…

ANSYS许可分析工具

在工程设计与仿真领域&#xff0c;ANSYS软件作为行业领导者&#xff0c;为企业提供了强大的支持。然而&#xff0c;随着业务的发展和软件版本的升级&#xff0c;如何有效地分析和管理ANSYS许可证&#xff0c;确保资源的合理配置和高效利用&#xff0c;成为企业面临的重要问题。…

大数据高级阶段面试题(实时2)

14.Flink状态管理内部原理是什么? 状态后端&#xff1a; Flink支持多种状态后端&#xff0c;包括内存&#xff0c;文件系统和分布式存储系统&#xff0c;状态后端负责将数据保存到相应的存储系统中&#xff0c;RocksDB是Flink默认的状态后端&#xff0c;它提供了高性能的本…

Linux系统使用Docker安装青龙面板并实现远程访问管理面板

文章目录 一、前期准备本教程环境为&#xff1a;Centos7&#xff0c;可以跑Docker的系统都可以使用。本教程使用Docker部署青龙&#xff0c;如何安装Docker详见&#xff1a; 二、安装青龙面板三、映射本地部署的青龙面板至公网四、使用固定公网地址访问本地部署的青龙面板 青龙…

聊聊 ASP.NET Core 中间件(三):如何创建自己的中间件?

前言 本质上&#xff0c;中间件类也是一个普通的 .NET 类&#xff0c;它不需要继承任何父类或者实现任何接口。 但是有几个约定&#xff1a; 需要有一个构造方法构造方法至少要有一个 RequestDelegate 类型的参数&#xff0c;用来指向下一个中间件。需要定义一个名字为 Invo…

嵌入式linux学习第一天

参考正点原子Linux开发文档。记录下知识点。 Shell 基本操作 前面我们说 Shell 就是“敲命令”&#xff0c;那么既然是命令&#xff0c;那肯定是有格式的&#xff0c;Shell 命令的格式 如下&#xff1a; command -options [argument] command: Shell 命令名称。 options&…

雷军-2022.8小米创业思考-6-互联网七字诀之专注:有所为,有所不为;克制贪婪,少就是多;一次解决一个最迫切的需求

第六章 互联网七字诀 专注、极致、口碑、快&#xff0c;这就是我总结的互联网七字诀&#xff0c;也是我对互联网思维的高度概括。 专注 从商业角度看&#xff0c;专注就是要“把鸡蛋尽量放在一个篮子里”。这听起来似乎有些不合理&#xff0c;大家的第一反应可能是“风险会不会…

JUC-synchronized练习-交替打印ABC

今天来练习一下synchronized 简单来利用synchronized实现一个字符串的交替打印 主要的实现设置一个全局的变量state&#xff0c;线程执行通过不断累加state&#xff0c;根据state对三取余的结果来判断该线程是否继续执行还是进入等待。并通过synchronized锁住一个共享变量loc…

线程池会遇到的刁钻问题(下)

文章目录 如何处理线程池中的异常&#xff1f;在并发编程中&#xff0c;线程池和锁有什么关系&#xff1f;如何实现一个可以动态调整大小的线程池&#xff1f;方法一&#xff1a;扩展 ThreadPoolExecutor方法二&#xff1a;使用 ScheduledExecutorService 如何确保线程池中的任…

Fastapi中怎么一次性运行多个Scrapy爬虫

运行Scrapy爬虫很简单&#xff0c;直接"Scrapy crawl 爬虫名称"即可。但是我们如果想在Fastapi中通过接口的方式一次性运行多个爬虫。那该怎么实现&#xff1f; 假如在scrapy下面的spiders里面写了许多爬虫文件&#xff0c;你可以在spiders的__init__.py文件中&…

js 图片渐变

1. 点击图片&#xff0c;使其渐变为另一张图片 通过定义keyframes来创建一个淡入淡出的动画效果。当图片被点击时&#xff0c;先添加淡出动画使图片透明度从0渐变到1&#xff0c;然后在1秒后切换图片源并添加淡入动画使新图片透明度从0渐变到1&#xff0c;实现图片渐变效果。 …