PXE简介
PXE(Pre-Execution Encironment,预启动执行环境)由Inte开发
作用于C/S模式并由此支持来自网络的操作系统的启动过程
PXE启动过程
1.客户端向发送DHCP请求
2.服务端收到DHCP广播并为其分配IP地址并提供TFTP服务器IP 和主机名,以及TFTP服务器上引导文件的位置
3.客户端分配到IP地址后通过TFTP向服务器端下载引导文件 ( pxelinux.0)以及配置文件(pexlinux.cfg/)
4.客户端通过引导文件使用相关配置载入内核镜像(vmlinuz)和 初始磁盘镜像文件(initrd.img)
5.开始进入Anaconda第一阶段,配置IP地址并选择通过FTP安装
6.指定FTP服务器IP和镜像文件目录
7.下载Anaconde第二阶段程序开始RHEL5的安装
PXE服务器配置
1.PXE引导配置
2.安装syslinux、TFTP、DHCP和FTP服务
3.配置tftp服务器上用于PXE引导的文件
4.配置允许从PXE配置中引导的主机
5.启动TFTP、DHCP和FTP服务
步骤
1.将PXE引导程序CP到TFTP根目录下
PXE启动镜像由syslinux软件包提供,需检查是否安装syslinux
rpm -q syslinux
#检查
yum install syslinux
#安装
mkdir /tftpboot
cp /usr/lib/syslinux/pexlinux.0 /tfppboot
(使用rpm -ql syslinux | grep pxelinux.0查询文件路径
如果使用其他linux系统,通过Yum安装,路径可能 为/usr/share/syslinux/pexlinux.0)
2.将镜像上的启动文件复制到/tftpboot
cp /mnt/image/pxeboot{initrd.img,vmlinuz} /tftpboot/
3.创建PXE配置文件
mkdir /tftpboot/pxelinux.cfg
PXE引导镜像使用一个复杂的配置文件搜索方式来查找针对每个 客户机的配置文件.
匹配MAC然后匹配16进制IP地址如果找不到匹配项则匹配 default
匹配过程如下
/tftpboot/pxelinux.cfg/00-EA-01-09-36-34
/tftpboot/pxelinux.cfg/C0A80ACA
/tftpboot/pxelinux.cfg/C0A80AC
/tftpboot/pxelinux.cfg/C0A80A
/tftpboot/pxelinux.cfg/C0A80
....
/tftpboot/pxelinux.cfg/default
可使用syslinux提供的gethostip -x 192.168.10.202命令获取16进制数
PXE配置文件内容如下
vim /ftfpboot/pxelinux.cfg/default
-------------------------------------------
default RHEL5
#默认启动标签
prompt 1
#打印提示信息
timeout 100
#超时时间
#display boot.list
#可选项,显示boot.list文件内容
label RHEL5
#标签,可配置多个
kernel vmlinuz
#内核镜像
append initrd=initrd.img
#使用初始磁盘镜像文件
------------------------------------------
5.安装并DHCP 服务器
yum install DHCP
vim /etc/dhcp/dhcpd.conf
--------------------------------------------------
ddns-uodate-style none;
default-lease-time 600;
max-lease-time 7200;
subnet 192.168.10.0 netmask 255.255.255.0{
range 192.168.10.10 192.168.10.20;
option subnet-mask 255.255.255.0;
option routers 192.168.10.1
next-server 192.168.10.202;
filename "pxelinux.0";
#关键点就在这两句
|