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
下一篇 2017-02-05

相关推荐

  • 步入LINUX

    初次融入LINUX的环境。。。

    Linux干货 2018-03-26
  • SElinux 练习

    练习 .1、安装httpd服务,改变网站的默认主目录为/website,添加SELinux文件标签规则,设置http_sys_content_t到/website及目录下所有文件,使网站可访问 mkdir    /website vim    /etc/httpd/conf/ht…

    Linux干货 2016-09-19
  • apache httpd 站点搭建

    apache  httpd 站点搭建 apache  httpd 站点搭建 1 §·httpd程序包使用yum安装 1 ※·[root@www ~]# yum  install  httpd.x86_64 1 ※·关于生成的配置文件简单介绍: 2 §·http主配置文件介绍 3 ※·主配置文件分为三大部分: 3 §·h…

    Linux干货 2016-12-05
  • N25-第三周作业

    N25第三周作业 博客作业 1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@ip-172-31-25-9 ~]# who|awk '{print $1}'|sort -u ec2-user [root@ip-172-31-25-9&n…

    Linux干货 2017-02-06
  • Net25-第9周作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash for line in `cat /etc/passwd`;do if [[ `echo $line | awk -F: ‘{print $7}’` == ‘/sb…

    Linux干货 2017-03-15
  • 马哥教育网络班22期+第十周课程练习

    1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情)    CentOS系统启动流程为:POST –> BootSequence(BIOS) –> BootLoader(MBR) –> Kernel(ramdisk) –> r…

    Linux干货 2016-12-13

评论列表(1条)

  • luoweiro
    luoweiro 2017-02-22 22:27

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