PXE高效批量网络装机

目录

一.PXE

1. 系统装机的三种引导方式

2. 系统安装过程

3. 光盘安装相关文件

4. PXE简介

5. 实现过程

6. PXE优点

二.PXE实现过程

1. 实验准备

2. 搭建DHCP服务器

3. 配置TFTP服务器

4. 准备pxelinu.0文件

5. 挂载镜像准备内核、驱动文件

6. 手写配置文件

7. 准备yum仓库

8. 重启服务效验

9. 制作应答文件ks.cfg

10. 为ks.cfg文件添加启动路径

11. 新建虚拟机效验自动化结果

12. 完整实验代码


一.PXE

1. 系统装机的三种引导方式

启动操作系统方式:

  • 1.硬盘
  • 2.光驱(u盘)
  • 3.网络启动(pxe)

2. 系统安装过程

  • 加载boot loader

  • 加载启动安装菜单

  • 加载内核和initrd系统(文件才能使用文件)

  • 加载根系统

  • 运行anaconda的安装向导

3. 光盘安装相关文件

  • boot.cat: 相当于grub的第一阶段

  • isolinux.bin:光盘引导程序,在mkisofs的选项中需要明确给出文件路径,这个文件属于SYSLINUX项目

  • isolinux.cfg:启动菜单的配置文件,当光盘启动后(即运行isolinux.bin),会自动去找isolinux.cfg文件

  • vesamenu.c32:是光盘启动后的启动菜单图形界面,也属于SYSLINUX项目,menu.c32提供纯文本的菜单

  • memtest:内存检测程序

  • splash.png:光盘启动菜单界面的背景图

  • vmlinuz:是内核映像

  • initrd.img:ramfs文件(精简版的linux系统,文件系统驱动等)

4. PXE简介

PXE:是Intel在很久以前提出来的一项用于通过网络来引导系统的标准。允许客户机通过网络从远程服务器上下载引导镜像,并加载安装文件或者整个操作系统。

pxe是通过网卡引导启动

实现的硬件条件

  • BIOS支持
  • 网卡支持
  • 需要在bios中开启开关,服务器一般没打开(bmc界面里打开)
  • 网络中有一台 DHCP 服务器以便为客户机自动分配地址、指定引导文件位置 网卡自带DHCP功能 dhcp 指明分配的ip地址
  • 服务器通过 tftp服务(简单文件传输协议)来提供系统内核和引导镜像的下载 udp协议,网卡自带这个功能(不支持其他的远程共享服务)

5. 实现过程

  • 网卡需要查找相关的dhcp服务器(获取地址时间)
  • 找到后dhcp服务器提供ip地址,和引导程序(boot loader)的地址 还提供给客户机TFTPserver地址(dhcp本身不提供tftp服务)
  • 网卡使用tftp客户端吧引导程序加载到内存中来
  • bios执行引导程序
  • 引导程序会去TFTP去查找配置文件
  • 根据配置文件去引导安装系统
  • 系统安装过程

6. PXE优点

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

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

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

二.PXE实现过程

1. 实验准备

准备一台虚拟服务器,当做DHCP、FTP、TFTP服务器,安装相应程序。

yum install tftp-server.x86_64  dhcp syslinux vsftpd -y

2. 搭建DHCP服务器

3. 配置TFTP服务器

4. 准备pxelinu.0文件

5. 挂载镜像准备内核、驱动文件

6. 手写配置文件

7. 准备yum仓库

8. 重启服务效验

9. 制作应答文件ks.cfg

10. 为ks.cfg文件添加启动路径

11. 新建虚拟机效验自动化结果

12. 完整实验代码

yum install tftp-server.x86_64  dhcp syslinux vsftpd -y    
//安装软件    cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example   /etc/dhcp/dhcpd.conf    
//生成dhcp 配置文件vim   /etc/dhcp/dhcpd.conf                       
//修改配置文件
subnet 192.168.91.0 netmask 255.255.255.0 {range 192.168.91.20 192.168.91.50;option routers 192.168.91.100;next-server 192.168.91.100;filename "pxelinux.0";
}vim /etc/xinetd.d/tftp                                     
//修改  tftp  配置文件  将yes 改为no
disable                 = no准备四大文件
pxelinu.0
cp /usr/share/syslinux/pxelinux.0    /var/lib/tftpboot/准备内核  驱动文件  
mount  /dev/sr0    /mnt
cd /mnt/isolinux/
cp vmlinuz  initrd.img    /var/lib/tftpboot/准备手写配置文件
cd  /var/lib/tftpboot/
mkdir pxelinux.cfg
vim  pxelinux.cfg/default
default linux
timeout 600label  linuxkernel vmlinuzappend initrd=initrd.img   method=ftp://172.16.233.11/centos7label linux textkernel vmlinuzappend text initrd =initrd.img method=ftp://172.16.233.11/centos7准备yum仓库
mkdir /var/ftp/centos7
mount /dev/sr0  /var/ftp/centos7/systemctl start dhcpd
systemctl start tftp.socket
systemctl start vsftpd准备应答文件 自动安装操作系统
yum install system-config-kickstart -y      
// 安装图形化界面  制作应答文件的工具手动去添加应答文件过程  略cd  /var/lib/tftpboot/
vim  pxelinux.cfg/default
default linux
timeout 600label  linuxkernel vmlinuzappend initrd=initrd.img   method=ftp://172.16.233.11/centos7  ks=ftp://172.16.233.11/centos7 label linux textkernel vmlinuzappend text initrd =initrd.img method=ftp://172.16.233.11/centos7

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

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

相关文章

linux如何使用shell远程连接

简介:本文的一切条件基于redhat的linux操作系统。 1、创建虚拟机: 如有需要,请转至【linux基础】在VMware上安装RHEL9详细教程_融社的博客-CSDN博客 (如若侵权,该篇立删) 2、使用命令查看网段信息 打…

生命科学领域 - FAIR原则和如果使数据FAIR化

2016年,《Scientific Data》发表了《科学数据管理和监督的FAIR指导原则》(FAIR Guiding Principles for scientific data management and stewardship)。文章旨在提供指导方针,以提高数字资产的可发现性、可访问性、互操作性和重用…

代码随想录算法训练营第25天|216.组合总和III 17.电话号码的字母组合

JAVA代码编写 216. 组合总和III 找出所有相加之和为 n 的 k 个数的组合,且满足下列条件: 只使用数字1到9每个数字 最多使用一次 返回 所有可能的有效组合的列表 。该列表不能包含相同的组合两次,组合可以以任何顺序返回。 示例 1: 输入: k …

面向未来的自动化:拥抱机器人即服务(RaaS)

01. RaaS是什么? 对于希望实现业务流程自动化的公司来说,机器人通常是一笔巨大的资本支出。由于机器人非常昂贵,公司可能需要等待数年才能看到投资回报。正是由于这一现实,许多较小的组织无法投资机器人。 但一些机器人公司正在采…

【音视频基础】AVI文件格式

AVI文件采用的是RIFF文件结构方式。波形音频wave,MIDI和数字视频AVI都采用这种格式存储。 AVI文件的整体结构如下图所示 构造RIFF文件的基本单元叫做数据块(Chunk),每个数据块包含3个部分 4字节的数据块标记(或者叫…

【C语言数据结构】单链表

目录 分析顺序表和链表实现单链表打印链表动态申请一个节点尾插头插尾删头删查找值函数单链表在pos位置之前插入x单链表在pos位置之后插入x删除pos位置单链表删除pos位置之后的值释放内存空间 分析顺序表和链表 如下图可以看出顺序表的优点 1.尾插尾删足够快 2.下标随机访问和修…

Git安装与常用命令

Git简介: Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或大或小的项目。Git是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源代码的版本控制软件。Git与常用的版本控制工具CVS、Subversion等不同,它采用了分布式…

zsh和ohmyzsh安装指南+插件推荐

文章目录 1. 安装指南2. 插件配置指南3. 参考信息 1. 安装指南 1. 安装 zsh sudo apt install zsh2. 安装 Oh My Zsh 国内访问GitHub sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"这将安装 Oh My Zsh 和所…

验证码案例 —— Kaptcha 插件介绍 后端生成验证码,前端展示并进行session验证(带完整前后端源码)

🧸欢迎来到dream_ready的博客,📜相信你对这篇博客也感兴趣o (ˉ▽ˉ;) 📜表白墙/留言墙 —— 中级SpringBoot项目,MyBatis技术栈MySQL数据库开发,练手项目前后端开发(带完整源码) 全方位全步骤手…

强烈 推荐 13 个 Web前端在线代码IDE

codesandbox.io(国外,提供免费空间) 网址:https://codesandbox.io/ CodeSandbox 专注于构建完整的 Web 应用程序,支持多种流行的前端框架和库,例如 React、Vue 和 Angular。它提供了一系列增强的功能&…

【数据预处理2】数据预处理——数据标准化

数据标准化 1. 什么是标准化?   数据标准化是一个常用的数据预处理操作,目的是将不同规格的数据转换到统一规格或不同分布的数据转换到某个特定范围,以减少规模、特征、分布差异等对模型的影响。这种操作也叫作无量纲化。   除了用作模型…

<MySQL> 如何合理的设计数据库中的表?数据表设计的三种关系

目录 一、表的设计 二、一对一关系 三、一对多关系 四、多对多关系 一、表的设计 数据库设计就是根据需要创建出符合需求的表。 首先根据需求找到体系中的关键实体对象,通常每个实体对象都会有一个表,表中包含了这个实体的相关属性。 再理清楚实体对…