配置PXE引导

3案例3:配置PXE引导
3.1 问题

本例要求为PXE装机提供引导服务,并提供必要的素材,完成下列任务:

  1. 启动TFTP服务,部署引导文件(内核vmlinuz、初始化文件initrd.img、网卡启动程序pxelinux.0)
  2. 创建pxelinux.cfg/配置目录,在此目录下建立默认引导文件default
3.2 方案

TFTP,Trival File Transfer Protocol:简单文件传输信息,通过UDP 69端口提供小文件的传输服务,默认应将资源部署到/var/lib/tftpboot目录下,不支持认证和目录访问等复杂FTP操作。
网卡启动程序pxelinux.0由软件包syslinux提供。
PXE安装用的内核及初始化文明可从RHEL7的光盘目录/images/pxeboot/下提取。
PXE启动配置相关资料可参考RHEL7的光盘目录/isolinux/,其中包括图形我饿反面支持模块vesamenu.c32、背景图片spash.png、菜单配置文件isolinux.cfg(使用时改名为default)

3.3 步骤

实现此案例需要按照如下步骤进行。

步骤一:快速构建服务器

1)安装tftp-server软件包

[root@svr7 ~]# yum -y install tftp-server 
.. ..

2)启动系统服务tftp,并设置开机自启

[root@svr7 ~]# systemctl  restart  tftp
[root@svr7 ~]# systemctl  enable  tftp
Created symlink from /etc/systemd/system/sockets.target.wants/tftp.socket to /usr/lib/systemd/system/tftp.socket.

步骤二:部署启动文件

1)拷贝pxelinux.0程序,部署到TFTP目录
在软件包syslinux提供的目录下找到pxelinux.0程序

[root@svr7 ~]# yum  -y  install  syslinux
[root@svr7 ~]# rpm  -ql  syslinux  |  grep pxelinux.0
/usr/share/syslinux/gpxelinux.0
/usr/share/syslinux/pxelinux.0

将其拷贝到/var/ftpboot/目录下,确认部署结果:

[root@svr7 ~]# cp  /usr/share/syslinux/pxelinux.0  /var/lib/tftpboot/
[root@svr7 ~]# ls  /var/lib/tftpboot/
pxelinux.0

2)拷贝引导装机的内核、初始镜像,部署到TFTP目录
当文件较多时,可以在TFTP目录下创建子目录:

[root@svr7 ~]# mkdir  /var/lib/tftpboot/rhel7

再通过RHEL7光盘目录找到PXE版内核vmlinuz、初始化镜像intrd.img,将其拷贝到上述子目录:

[root@svr7 ~]# cd  /var/lib/tftpboot/rhel7/
[root@svr7 rhel7]# wget  http://192.168.4.254/rh7dvd/isolinux/vmlinuz
[root@svr7 rhel7]# wget  http://192.168.4.254/rh7dvd/isolinux/initrd.img
                                              //下载内核、初始化文件

确认部署结果:

[root@svr7 pxeboot]# ls  -R  /var/lib/tftpboot/
/var/lib/tftpboot/:
pxelinux.0  rhel7
/var/lib/tftpboot/rhel7:
initrd.img  vmlinuz

步骤三:配置启动菜单

1)创建配置目录

[root@svr7 ~]# mkdir  /var/lib/tftpboot/pxelinux.cfg

2)以光盘中的isolinux目录为模板,拷贝必要的文件

[root@svr7 ~]# cd  /var/lib/tftpboot/
[root@svr7 tftpboot]# wget  http://192.168.4.254/rh7dvd/isolinux/vesamenu.c32 
                                                      //提供图形支持
[root@svr7 tftpboot]# wget  http://192.168.4.254/rh7dvd/isolinux/splash.png  
                                                            //准备背景图片
[root@svr7 tftpboot]# wget  -O  pxelinux.cfg/default  http://192.168.4.254/rh7dvd/isolinux/isolinux.cfg 
                                                         //建立菜单配置
[root@svr7 isolinux]# ls  -R  /var/lib/tftpboot/          //确认部署结果
/var/lib/tftpboot/:
pxelinux.0  pxelinux.cfg  rhel7  splash.png  vesamenu.c32
/var/lib/tftpboot/pxelinux.cfg:
default
/var/lib/tftpboot/rhel7:
initrd.img  vmlinuz

3)调整启动参数

[root@svr7 ~]# vim  /var/lib/tftpboot/pxelinux.cfg/default
default vesamenu.c32                              //默认交给图形模块处理
timeout 600                                      //选择限时为60秒(单位1/10秒)
.. ..
menu title  PXE  Installation  Server             //启动菜单标题信息
.. ..
label  linux                                  //菜单项标签
    menu  label  ^Install Red Hat Enterprise Linux 7
    kernel  rhel7/vmlinuz                      //内核的位置
    append  initrd=rhel7/initrd.img  inst.stage2=http://192.168.4.254/rh7dvd 
                                                 //初始镜像、安装源位置
label rescue
    menu label ^Rescue a Red Hat Enterprise Linux system
    kernel rhel7/vmlinuz
    append initrd=rhel7/initrd.img inst.stage2=http://192.168.4.254/rh7dvd rescue
label local                                     //从硬盘启动
    menu  default                              //默认启动方式
    menu label Boot from ^local drive
    localboot 0xffff
menu  end

步骤四:访问TFTP服务端确保可用

1)在pc207上安装tftp命令工具

[root@pc207 ~]# yum  -y  install  tftp
.. ..

2)在pc207上访问svr7上的TFTP服务端,下载文件测试

[root@pc207 ~]# tftp  192.168.4.7  -c  get pxelinux.0
[root@pc207 ~]# ls  -lh  pxelinux.0                      //检查下载结果
-rw-r--r--. 1 root root 27K 1月  13 15:48 pxelinux.0
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值