PXE实践

本篇只以记录个人部署pxe过程中所遇问题,至于原理,只做部分简单说明。

pxe部署必要软件:

syslinux (用于提供引导中所必备文件)

tftp(用于提供存放vmlinuz,initrd,syslinux.0等引导类文件)

dhcp(用于自动获取IP包括指明去哪个主机获取syslinux.0文件)

最后还需要一个web或者ftp服务,已提供系统安装中所使用的yum仓库。

另外还需要网卡中内嵌了支持pxe的ROM芯片,现在这一条基本不用担心,都支持。

现在可以找一台虚拟机安装上所需软件。

blob.png

安装上述软件,这里我准备使用的是web服务。并且一台主机直接提供所有服务。

然后我们先配置dhcp

blob.png

先将DHCP的实例配置文件覆盖配置文件,安装过后配置文件本身是空的!

然后我们在做下修改

blob.png

这里我们只需要自己添加这样一段就够了,毕竟我们不是真的需要dhcp服务,只要分配出去的ip能和我们提供tftp,web服务通信即可,其他的我们都不用管。

接着我们进入tftp的根目录,这里我发现上面安装的时候装错了,装成tftp的客户端了,我们需要的是tftp-server,重新安装一个tftp-server。

blob.png

进入此目录接着复制需要的文件至此。

blob.png

接着创建一个目录,以提供pxelinux启动时读取选项界面。

然后我们进入此目录创建一个为default的文件,pxelinux.0是读取这个文件的,所以必须要以这个名字命名!!!!

blob.png

提供类似此种配置,默认读取menu.c32提供的界面,选取时间为10秒,超时时长为30秒 标题为 Centos 7 PXE Menu  标签为linux, 选项是提供的字符串 testinstall Centos 7 x86_64  读取kernel的名称  yum安装仓库为web服务的centos7目录下,ks文件位置在web的根目录下叫centos7.cfg 。(这里虚拟机暂时是桥接的,过会我会配置为单主机,且地址配置为172.16.10.9)

接着我们将创建centos7目录 并将光盘挂载至目录

blob.png

然后我们需要准备一个ks配置文件,最方便的方式是用system-config-kickstart生成一个,但需要安装图形界面,这里我没准备,就准备直接更改一下家目录的annaconda文件。

先将文件拷贝至html目录下并改名为centos7.cfg

blob.png

在接着就可以改改配置文件了

blob.png

这里我主要增加了横线标出那一行,因为之前是通过光盘安装,这里我们要通过web服务安装,之前通过cdrom安装已经被我注释掉了,接着我们就可以启动服务,并且调整虚拟机了!

blob.png

dhcpd报错了 先看看报错什么吧

blob.png

好吧,我们应该要先调整虚拟机在启动dhcp,因为定义的172网段和真实的网段不同。

我们先测试下httpd和tftp

blob.png

blob.png

这里可以看到我们请求yum仓库是成功了,但是ks文件缺失败了,提示没权限,检查一下文件权限。

blob.png

发现确实权限问题,修改,在测试

blob.png

可以正常请求到文件内容了,接着测试下tftp

blob.png

我们正常登陆tftp服务并且下载了一个文件,至此,我们可以去修改虚拟机,启动dhcp了

blob.png

这里我已经指定了静态地址,并且把虚拟机已经调整。可以看到dhcp服务也正常启动了!接着我们就可以找一台主机启动测试了。

blob.png

blob.png

这里我找了个主机,并且把两台主机调整至同一个网段,并且把虚拟机带的dhcp服务已经关闭,可以开机了!!

blob.png

blob.png

正确的获得了地址,并且我们刚才自己添加的选项也已经再此!tab键也可以像grub一样看到具体的配置 至此,后面的就不演示了,ks文件根据自己实际需要调整。

原创文章,作者:N24_Ghost,如若转载,请注明出处:http://www.178linux.com/67551

(0)
N24_GhostN24_Ghost
上一篇 2017-02-04 22:57
下一篇 2017-02-05 15:12

相关推荐

  • keepalived的原理及安装应用

    keepalived的主从模式,keepalived的日志功能和主主模式

    2018-03-13
  • linux中用户、组和权限认识

    linux中用户、组和权限认识 Linux 用户和组的主要配置文件:/etc/passwd :用户及其属性信息( 名称、UID 、主组ID 等)                  …

    Linux干货 2017-02-23
  • 第十八周作业

    1.LNMP架构添加Memcached支持,并验证其缓存结果 Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。简单的说就是将数据调用到内存中,然后从内存中读取,从而大大提高读取速度。 Memcached是以守护程序(监听)方式运行于一…

    2017-07-07
  • 破坏grub实验之一

    1、删除grub stage1阶段 [root@centos6 ~]# dd if=/dev/zero of=/dev/sda bs=446 count=1 1+0 records in 1+0 records out 446 bytes …

    Linux干货 2016-09-19
  • Linux系统vim文本编辑器

                                                      &nbsp…

    Linux干货 2016-08-15
  • 关于shell脚本基础编程第五篇

                  shellb编程基础第五篇              本章内容:数组 变量:存储单个元素的内存空间数组:存储多个元素的连续的内存空间…

    系统运维 2016-08-24

评论列表(1条)

  • luoweiro
    luoweiro 2017-02-22 22:27

    其实对于无人坚守自动安装这部分主要是原理,部署和配置其实不是最大的问题,里面涉及到很多步奏,这部分也是面试官经常问道的。