PXE网络引导装机原理介绍

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

大学时候装系统都是利用U盘进行装机(光盘时代已经过去),高级一点的直接在把镜像放在旧系统里面,直接硬盘启动装机。这些都需要人在电脑旁边,一步一步的等待点击安装,装个系统需要30分钟左右时间,浪费人力时间。最近在做云装机系统,学会了更高级,更便利的装机,从网络PXE引导启动,实现了无人值守装机。


PXE简介

PXE(preboot execute environment,预启动执行环境)工作于Client/Server的网络模式,支持客户机通过网络从远端服务器下载镜像,并由此支持通过网络启动操作系统,在启动过程中,客户机要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成客户机基本软件设置,从而引导预先安装在服务器中的终端操作系统。


PXE装机步骤

1、设置客户机的BIOS从PXE启动

2、客户机向网络中请求DHCP服务器获取动态IP

3、DHCP服务器下发IP、引导文件位置、TFTP服务器地址

4、客户机请求TFTP服务器获取引导文件

5、执行引导程序

6、请求TFTP服务器获取配置文件(pxelinux.cfg)

7、配置文件包含vmlinux、initrd.img、ks文件位置信息

8、根据配置文件,用户请求TFTP服务器获取linux内核(vmlinux)

9、请求TFTP服务器获取linux根文件系统(initrd.img)

10、客户机启动linux内核

11、内核挂载initrd.img,并执行挂载各种各样的模块

12、如果设置KS文件,装机步骤自动选择,否则需手动选择

13、装机完成


 pxelinux.cfg配置文件样例

DEFAULT menu.c32
PROMPT 0
TIMEOUT 30
LABEL bootos
# KERNEL 参数指定要启动的内核。同样要注意路径,默认是 /tftpboot 目录。
KERNEL http://10.200.200.200/bootos/vmlinuz
# APPEND 指定追加给内核的参数
# KS 指定使用kickstart安装,可在ks参数后直接指定kickstart文件的位置。
APPEND initrd=http://10.200.200.200/bootos/initrd.img console=tty0 selinux=0 biosdevname=0 ks=http://10.200.200.200/ks.cfg DEVELOPER=1
IPAPPEND 2

 

 

 

 

 

 

你可能感兴趣的:(总结,PXE)