FTP+DHCP+TFTP+PXElinux实现RHLINUX的网络自动安装

 

 (一)原理

第一步:PXE Client向DHCP发送请求

  首先,将支持PXE的网络接口卡(NIC)的客户端的BIOS设置成为网络启动,通过PXE BootROM(自启动芯片)会以UDP(简单用户数据报协议)发送一个广播请求,向网络中的DHCP服务器索取IP地址等信息。

第二步:DHCP服务器提供信息

  DHCP服务器收到 客户端的请求,验证是否来至合法的PXE Client的请求,验证通过它将给客户端一个“提供”响应,这个“提供”响应 中包含了为客户端分配的IP地址、pxelinux启动程序(TFTP)位置,以及配置文件所在位置。

第三步:PXE客户端请求下载启动文件

  客户端收到服务器的“回应”后,会回应一个帧,以请求传送启动所需文件。这些启动文件包括:pxelinux.0、pxelinux.cfg/default、vmlinuz、initrd.img等文件。

第四步:Boot Server响应客户端请求并传送文件

  当服务器收到客户端的请求后,他们之间之后将有更多的信息在客户端与服务器之间作应答, 用以决定启 动参数。BootROM 由 TFTP 通讯协议从Boot Server下载启动安 装程序所必须的文件(pxelinux.0、pxelinux.cfg/default)。default文件下载完 成后,会根据该文件中定义的引导顺序,启动Linux安装程序的引导内核。

安装的流程:PXE网卡启动------DHCP服务器------获得IP------从TFTP上下载pxelinux.0、vmlinuz、initrd------启动系统------通过PEX去FTPTP下载ks.cfg文件-----跟据ks.cfg去FTP下载安装包及安装系统------完成安装。

 (二)配置步骤

1)、配置yum仓库

2)、ftp的配置

3)、dhcp的配置

4)、tftp的配置

5)、ks.cfg的生成和配置

   详细配置

1.配置yum客户端
  /etc/yum.repos.d/rh
  yum repolist   查看yum仓库内容
   yum  list all    查看可安装的文件

1

image

2、ftp放置安装文件
   yum install -y vsftpd
   启动ftp 
   service  vsftpd restart  临时启动
   chkconfig  vsftpd on    永久启动
   把光盘上的安装文件放到ftp  cp -r .  /var/ftp/pub

image

image

 

3、dhcp
   yum install -y dhcp
   vim /etc/dhcpd.conf
    :r  /文件
   改subnet区域

   添加
   next-server    192.168.145.100;       tftp服务器的地址发给客户端
   filename       "pxelinux.0";           pxe的文件发给客户端客户端会去tftp   

   每次修改都要重启服务
   chkconfig  dhcpd on

image

image

image

image

下面的这一步很关键,做完以后不要忘记重启哦

image

image

4、  tftp放置pxe的驱动和配置
    查看tftp装没有 yum  list  all  |grep tftp
     rpm -ql 查看tftp-server的目录
     vim /etc/xinetd.d/tftp
     dgram表示用udp
    wait         单线程多线
    管理员
    服务器进程目录
    用户不唤醒吗 把yes-》no
    server xinetd  restart   依赖于超级守护进程所以要启动超级守护进程就可以了
    5.2把驱动考到tftp
        tftp的根tftpboot目录在/下
        把驱动考到它的根目录
        cp /usr/lib/syslinux/pxelinux.0    pxe驱动
        cp /mnt/cdrom/images/pxeboot/vmlinuz  pxe的内核
        cp  /mnt/cdrom/images/pxeboot/initrd.img 硬件驱动
        为pxe建业个目录
        mkdir -pv pxelinux.cfg
        吧pxe的配置文件考到pxelinux.cfg
        cp  /mnt/cdrom/isolinux/isolinux.cfg   pxelinux.cfg/default
        编辑default文件
        修改
kernel vmlinuz
append  ks=ftp://192.168.145.100/pub/ks.cfg  ksdevice=eth0  initrd=initrd.img
改改时间

image

image

拷贝的指令没有截图根据上面的步骤拷贝文件就行

image

image

5、ks.cfg的生成和配置

用yun安装system-config-kickstart   要用的命令(需要安装)
用system-config-kickstart产生ks.cfg
后安装脚本

#!/bin/bash
IP=`ifconfig | grep -i bcast|awk '{print $2}'`
num=${IP##*.}
sed -i "s/HOSTNAME.*$/HOSTNAME=lu$num/" /etc/sysconfig/network
sed -i "s/BOOTPROTO.*$/BOOTTPROTO=none/" /etc/sysconfig/network-scripts/ifcfg-eth0
sed -i "s/IPADDR.*$/IPADDR=192.168.10.$num/" /etc/sysconfig/network-scripts/ifcfg-eth0
sed -i "s/NETMASK.*$/NETMASK=255.255.255.0/" /etc/sysconfig/network-scripts/ifcfg-eth0 
   编辑ks.fg
在ks.fg上添加
key  --skip
services  --disable  sendmail

image

image

image

image

image

image

image

image

把ks.cfg放到ftp服务器上

image

image

为了不必要的错误发生把三个服务器重启一下

image 

 

 

开始安装了:

image   

哈哈!安装成功

image

你可能感兴趣的:(DHCP,pxe)