linux PXE安装原理及关注点

因有学生面试遭卡 ,咨询!特此一些详解,希望实用。

第一步:PXE Client向DHCP发送请求

首先,将支持PXE的网络接口卡(NIC)的客户端的BIOS设置成为网络启动,通过PXE BootROM(自启动芯片)会以UDP(简单用户数据报协议)发送一个广播请求,向网络中的DHCP服务器索取IP地址等信息。

第二步:DHCP服务器提供信息

DHCP服务器收到 客户端的请求,验证是否来至合法的PXE Client的请求,验证通过它将给客户端一个“提供”响应,这个“提供”响应 中包含了为客户端分配的IP地址、pxelinux启动程序(TFTP)位置,以及配置文件所在位置。

第三步:PXE客户端请求下载启动文件

客户端收到服务器的“回应”后,会回应一个帧,以请求传送启动所需文件。这些启动文件包括:pxelinux.0、pxelinux.cfg/default、vmlinuz、initrd.img等文件。

第四步:Boot Server响应客户端请求并传送文件

当服务器收到客户端的请求后,他们之间之后将有更多的信息在客户端与服务器之间作应答, 用以决定启 动参数。BootROM 由 TFTP 通讯协议从Boot Server下载启动安 装程序所必须的文件(pxelinux.0、pxelinux.cfg/default)。default文件下载完 成后,会根据该文件中定义的引导顺序,启动Linux安装程序的引导内核。

最近需要测试服务器PXE安装,而且服务器需要额外的raid卡驱动,所以为了这个额外的驱动弄了挺久,但也学到了不少原理层面的事情。为了保证不那么容易忘记,在这里记录一下:

PXE安装原理:

1、通过在BIOS中选择网卡引导,获取IP地址及tftp地址(在dhcpd.conf的next-server中写),然后加载tftp服务器上/tftpboot目录中的pxelinux.0和pxelinux.cfg/default两个文件,询问要启动的启动项(一般是boot:结束,然后可以键盘输入启动项。可选的启动项在pxelinux.cfg/default中已经写明,节选如下:

label linux
  kernel vmlinuz
  append initrd=initrd.img text ks=file:/kickstart.cfg
表示如果输入linux这个启动项名称,将使用vmlinuz这个内核文件作为内核,然后加载initrd.img文件(一个加载驱动用的文件,具体是用来干嘛的可以参考这里:http://blog.csdn.net/chrisniu1984/article/details/3907874)并获取kickstart.cfg这个文件(文件中保存了安装所需要的所有参数,如分区格式、需要安装的软件包等,一般根据linux安装光盘中的同名文件进行修改)。

2、在boot:后输入启动项,机器按照default中的配置参数获取内核文件及initrd参数中提到的驱动文件(各种驱动都可以,我就是把raid卡驱动加在这里了:initrd=initrd.img,cciss.img)。注意这里的img文件都需要是经过cpio和gzip压缩的,做法是:

mount -o loop cciss-2.6.18-164.el5.img ./tmp
cd ./tmp
find . | cpio -c -o | gzip -9 > ../cciss.img

原因大致是因为从2.6内核开始,initrd.img都是这样两重压缩的,所以会把这里的所有img文件一视同仁吧。(为何initrd.img是两重压缩及具体是怎么用的,请看:http://blog.csdn.net/chrisniu1984/article/details/3907909)。

3、获取完这几个文件后就会开始加载initrd.img,并加载各个设备驱动(可以把initrd.img看成常见设备驱动包),然后进入安装程序,安装程序根据default参数中的kickstart.cfg进行自动安装(如果其中某个步骤或某些参数缺失或被注释,将停留在该步骤,待人工选择后继续自动进行后面有参数的安装)。

时间: 2024-12-20 01:13:55

linux PXE安装原理及关注点的相关文章

linux pxe 安装Centos7

服务端 需要3种服务 dhcp + tftp + vsftp tftp 提供引导 为什么不使用其他协议来进行pxe引导 是因为网卡只会集成tftp这种服务     写明到镜像的方式 dhcp 下发tftp的引导 让其他机器开机能够知道tftp引导 vsftp 提供系统镜像 可以http 也可以是nfs 搭建本地yum源 略 修改自身的ip地址 192.168.100.1 我使用的是这个地址 安装 dhcp tftp vsftp yum -y install vsftpd yum -y insta

linux pxe 系统自动化安装

一.Pxe的简介 1原理讲解pxe的原理PXE是由Intel公司开发的最新技术工作于Client/Server的网络模式支持工作站通过网络从远端服务器下载映像,并由此支持来自网络的操作系统的启动过程dhcp的原理动态主机配置协议是一个局域网的网络协议,使用UDP协议工作主要有两个用途:给内部网络或服务供应商自动分配IP地址给用户给内部网络管理员作为对所有计算机 作中央管理的手段. Dhcp 分配地址工作原理 Dhcpdiscover dhcpoffer dhcprequest dhcpack t

pxe操作系统的批量安装原理以及步骤

CentOS 6.4下PXE+Kickstart无人值守安装操作系统 一.简介 1.1 什么是PXE PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服 务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast triv

Linux PXE+DHCP+Kickstart无人值守安装   (1) 网络装机

PXE网络装机 注释:我们要安装的是 rhel-server-5.9_x86_64 下载地址是:地址晚一点给大家. linux PXE远程安装介绍: PXE是由Intel设计的协议,它可以使计算机通过网络启动.协议分为client和server两端,PXE client在网卡的ROM中,当计算机引导时,BIOS把PXE client调入内存执行,并显示出命令菜单,经用户选择后,PXE client将放置在远端的操作系统通过网络下载到本地运行,无盘工作站就是通过PXE来进行启动的.PXE协议的成功

(DHCP+PXE+TFTP+HTTP)实现Linux自动化安装的演示实验

写在前面:如果此文有幸被某位朋友看见并发现有错的地方,希望批评指正.如有不明白的地方,愿可一起探讨. 准备工作 1.挂载光盘镜像: # mount /dev/cdrom /var/www/html/CentOS6.5/ 提示:为什么要将光盘镜像挂载于此?(在自动化安装过程中,通过http服务提供yum安装源) 2.制作本地YUM仓库: # vim /etc/yum.repos.d/CentOS6.5-Local.repo 配置DHCP服务 1.安装DHCP服务 # yum -y install

解决PXE安装Linux系统时kickstart自动识别硬盘问题

在使用PXE结合kickstart文件可实现网络全自动安装Linux系统,按照kickstart语法须要在ks.cfg文件中指定操作系统安装的位置(指定硬盘)如hda.sda或硬盘的UUID等唯一标识,分区信息以及建立mbr的位置. 如果硬盘命令指定有误,或与实际硬盘命令不符,无法找到对应的设备等那么anaconda会直接ks.cfg文件错误而导致安装失败:如果在ks.cfg文件中不指定硬盘信息,那么在进行到分区步骤时,anaconda会在此停下来让人工操作以便任务继续,那么批量主机安装系统时则

linux PXE的配置及实现

PEX简介: PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由

centos7 基于pxe安装系统

一.概念与原理 什么是PXE 严格来说,PXE 并不是一种安装方式,而是一种引导的方式.进行 PXE 安装的必要条件是要安装的计算机中包含一个 PXE 支持的网卡(NIC),即网卡中必须要有 PXE Client.PXE (Pre-boot Execution Environment,直译为启动前的执行环境)协议使计算机可以通过网络启动.协议分为 client 和 server 端,PXE client 在网卡的 ROM 中,当计算机引导时,BIOS 把 PXE client 调入内存执行,由

LINUX自动化安装操作系统

自动化就是无人职守安装大量操作系统,只要客户机开机,就能自动安装操作系统. 首先调试环境: 基于DHCP.TFTP.HTTP来完成PXE自动的实现 1.  安装服务 [[email protected]/]# yum install dhcp---------dhcp服务 [[email protected]/]# yum install tftp tftp-server-----tftp服务 [[email protected]/]# yum install http--------http服