PXE网络引导系统自动化安装CentOS7

 一.PXE

注意:安装前 selinux 禁用,iptables 关闭 dhcp 服务器静态IP地址

 1.PXE的工作原理:

     Client向PXE Server上的DHCP发送IP地址请求消息,DHCP检测Client是否合法(主要是检测Client的网卡MAC
      地址),如果合法则返回Client的IP地址,同时将启动文件pxelinux.0的位置信息一并传送给Client
     Client向PXE Server上的TFTP发送获取pxelinux.0请求消息,TFTP接收到消息之后再向Client发送pxelinux.0大小
    信息,试探Client是否满意,当TFTP收到Client发回的同意大小信息之后,正式向Client发送pxelinux.0
2.基于pxe自动化安装所需的组件

(1)DHCP 服务器

需要在subnet配置中配置参数

filename “”;                                  基于网卡引导时要加载的initial  boot file的文件名;
next-server  HOST;                       
要是一个tftp-servr,简单文件传输协议

(2) tftp-server服务 

一般该服务器仅用于PXE预引导加载环境。用于提供预引导加载文件pxelinux.0的读取。

服务启动运行方式:
CentOS6:
# chkconfig tftp on
# service xinetd  restart
CentOS7:
# systemctl start  tftp.socket

(3)syslinux包

(4) file server(yum repository)yum仓库

3.安装服务

 (1)首先要安装 dhcp  tftp  syslinux 

  yum install dhcp tftp-server  httpd  syslinux 

(2)启动服务
 systemctl enable dhcpd.service tftp.service  httpd
  systemctl start tftp
 systemctl start httpd

(3)查看是否是69 端口
 ss -nulp 69

4 配置dhcp.conf 文件

cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf

vim /etc/dhcp/dhcpd.conf
subnet 192.168.8.0 netmask 255.255.255.0 {
         range 192.168.8.180 192.168.8.200;
         option routers 192.168.8.1;
         option domain-name-servers 223.5.5.5,223.6.6.6;
         filename “pxelinux.0”;
         next-server 192.168.8.133;
}

   启动服务
          systemctl start dhcpd

5.挂载镜像准备Yum安装源和kickstart文件

mkdir /var/www/html/centos7

mount /dev/sr0 /var/www/html/centos7

ks文件

mkdir /var/www/html/ks

cp /root/anaconda-ks.cfg /var/www/html/ks/centos7.cfg

vim /var/www/html/ks/centos7.cfg

url –url=http://192.168.8.133/centos7

text

reboot.

6.创建pxelinux.cfg 文件.拷贝镜像文件

mkdir /var/lib/tftpboot/pxelinux.cfg/
cp /misc/cd/isolinux/{vmlinuz,initrd.img}  /var/lib/tftpboot/
cp /usr/share/syslinux/{pxelinux.0,menu.c32} /var/lib/tftpboot/
cp /misc/cd/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default

创建安装菜单
vim /var/lib/tftpboot/pxelinux.cfg/default
default menu.c32
timeout 600

menu title PXE CentOS Linux 7 Install Menu
label automini 
  menu label ^Automatic Mini Install CentOS 7 
  kernel vmlinuz
  append initrd=initrd.img ks=http://192.168.8.133/ks/centos7.cfg
label autodesktop 
  menu label Automatic ^Desktop Install CentOS 7 
  kernel vmlinuz
  append initrd=initrd.img ks=http://192.168.8.133/ks/centos7-2.cfg
label manual
  menu label ^Manual Install CentOS 7 
  kernel vmlinuz
  append initrd=initrd.img 
label local
  menu label Boot from ^local drive
  menu default
  localboot 0xffff

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

赞 (2)
gd1479gd1479
上一篇 2017-07-24 20:54
下一篇 2017-07-24 21:08

相关推荐

  • 相关练习

    1、请使用命令行展开功能来完成以下练习:    (1)、创建/tmp目录下的:a_c, a_d, b_c, b_d  mkdir /tmp/{a,b}_{c,d}    (2)、创建/tmp/mylinux目录下的:  mkdir -pv /tmp/mylinux/{bin,boot/grub,de…

    Linux干货 2016-11-05
  • linux bash环境变量简单总结

    一.环境变量简介Linux是一个多用户的操作系统。每个用户登录系统后,都会有一个专用的运行环境。通常每个用户默认的环境都 是相同的,这个默认环境实际上就是一组环境变量的定义。 环境变量是全局的,设置好的环境变量可以被所有当前用户所运行的程序所使用。 用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量。 …

    Linux干货 2015-09-14
  • 网卡路由配置信息及偷懒用法

            对于初学Linux的人来说,配置网卡无疑是比较晕的,各种的配置文件,字段、命令等让人眼花撩乱。所以这一章主要给大多数还在网卡配置路由配置的同学们解惑一、网卡配置基本概念        …

    Linux干货 2017-05-08
  • N25-第六周

    请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#;      cp /etc/rc.d/rc.sysinit /tmp     &nbsp…

    Linux干货 2017-03-08
  • Nginx 进阶 (ssl、fpm、rewrite、cache配置等)

    Nginx(与ssl结合配置https网站、rewrite,fastcgi配置详解) 前言 前面已经介绍过Nginx的一些基础概念,还有几个比较重要的模块:利用ssl给会话加密,利用rewrite功能灵活改写访问结果,以及利用fastcgi与php模块结合等等。 一、配置https网站 1、自建CA (1)生成私钥文件 mkdir -p /etc/pki/C…

    Linux干货 2016-12-26
  • HTTP协议

    HTTP协议   HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。HTTP协议工作于客户端-服务端架构之上。浏览器作为HT…

    Linux干货 2017-02-15