PXE

 

 

 

 

 

单机: 光驱加载 linux 镜像去安装操作系统,光驱里有一个小型的linux操作系统

将操作系统 安装进自己的硬盘

PE 操作系统是外来的 设备的上操作系统, 进入到外来的操作系统后,将自己想要安装的操作系统类型,安装进硬盘

 

系统装机的三种方式:

1.硬盘

2.光驱(u盘)

3.网络

 
系统安装过程:

1 加载boot loader(Boot Loader 是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境)

2 加载启动安装菜单

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

4 加载根系统

5 运行anaconda的安装向导

Linux安装光盘的安装相关文件

在系统光盘的isolinux目录下有和安装相关的文件

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系统,文件系统驱动等)

 

 1什么是PXE

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

pxe是通过网卡引导启动

1.1实现的硬件条件

1.BIOS支持

2.网卡支持(现在基本都已支持)

3.需要在bios中开启开关,服务器一般没打开(bmc界面里打开)

4.网络中有一台 DHCP 服务器以便为客户机自动分配地址、指定引导文件位置 网卡自带DHCP功能 dhcp 指明分配的ip地址

5.服务器通过 tftp服务(简单文件传输协议)来提供系统内核和引导镜像的下载 udp()协议 网卡自带这个功能(不支持其他的远程共享服务)

自带的站点(/var/lib/tftp) initrd.img(驱动) vmlinuz(内核) pxelinux.cfg/default(引导文件) pxelinux.0(小型的grub程序) tftp 指明

 

2实现过程讲解

1.网卡需要查找相关的dhcp服务器(获取地址时间)

2.找到后dhcp服务器提供ip地址,和引导程序(boot loader)的地址 还提供给客户机TFTPserver地址(dhcp本身不提供tftp服务)

3.网卡使用tftp客户端吧引导程序加载到内存中来

4.bios执行引导程序

5.引导程序会去TFTP去查找配置文件

6.根据配置文件去引导安装系统

7.系统安装过程

 

 

  

3搭建过程中的服务

PXE 远程安装服务器集成了 CentOS 7 安装源、TFTP 服务、DHCP 服务,能 够向客户机裸机发送 PXE 引导程序、Linux 内核、启动菜单等数据,以及提供安装文件。

3.1 TFTP

tftp:内核和引导文件,是一种基于UDP协议实现的用于在客户机和服务器之间进行简单文件传输的协议,适合于小型文件传输的应用场合。TFTP服务默认由xinetd服务进行管理,使用UDP69端口。

csftp:安装系统镜像文件获取方式,可以使用http ftp等方式,ftp文件传输的一种。

syslinux:syslinux是一个功能强大的引导加载程序,而且兼容各种介质

DHCP服务

 

4pxe优点:

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

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

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

 

5操作过程

大概过程

1 分配给同一局域网内新加机器的地址(配置文件) dhcp 分配地址 指明tftp 服务器的地址

2 tftp服务端开启 udp 配置 默认关闭

3 安装syslinux 取得 pxelinux.0 文件

4 安装vsftpd服务挂载软件安装源(mount /dev/sr0 /var/ftp/centos7)

5 将四大文件拷入 /var/lib/tftpboot )

initrd.img 

pxelinux.0  (类似grub)

pxelinux.cfg/default (手写) 

Vmlinuz

6 将服务开启,关闭防火墙,selinux 

 

kickstart 无人值守安装

kickstart文件主要包括三个部分:命令段,程序包段,脚本段

命令段:指明各种安装前配置,如键盘类型等

命令段中的常见命令:

keyboard: 设定键盘类型

lang: 语言类型

zerombr:清除mbr

clearpart:清除分区

part: 创建分区

rootpw: 指明root的密码

timezone: 时区

text: 文本安装界面

network:指定网络设置

firewall:设置防火墙设置

selinux:设置selinux设置

reboot:安装完自动重启

user:安装完成后为系统创建新用户

url: 指明安装源

程序包段:指明要安装的程序包组或程序包,不安装的程序包等

%packages

@^environment group: 指定环境包组,如:@^minimal-environment

@group_name

package

-package

%end

脚本段:

%pre: 安装前脚本

%post: 安装后脚本

 

 

 

 

 

 

 

 

 

基本配置:

 

 安装方法

 

 引导文件

 

 分区

 

 

 

 

 

 

 

 

 

 

 

 

 

posted @   withfear  阅读(287)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
----------------------------------- ©著作权归作者所有:来自51CTO博客作者一品堂_技术学习笔记的原创作品,请联系作者获取转载授权,否则将追究法律责任 博客园随笔中添加目录导航悬浮框博客园随笔中添加目录导航悬浮框 https://blog.51cto.com/ios9/3125785
点击右上角即可分享
微信分享提示