PXE+kickstart 实现Centos6.5 批量安装 (简单易学)

PXE简介html

  严格来讲,PXE并非一种安装方式,而是一种引导的方式。进行PXE安装的必要条件是要安装的计算机中包含一个PXE支持的网卡(NIC),即网卡中必需要有PXE client。PXE(Pre-boot Execution Environment,直译为启动前的执行环境)协议使计算机能够经过网络启动。协议分为client和server端,PXE client在网卡的ROM中,当计算机引导时,BIOS把PXE client调入内存执行,由PXE client将放置在远端的文件经过网络下载到本地运行。运行PXE协议须要设置DHCP服务器和TFTP服务器。DHCP服务器用来给PXE client(将要安装系统的主机)分配一个IP地址,因为是给PXE client分配IP地址,因此在配置DHCP服务器时须要增长相应的PXE设置。此外,在PXE client的ROM中,已经存在了TFTP Client。PXE Client经过TFTP协议到TFTP Server上下载所需的文件。linux


Kickstart简介vim


  Kickstart是一种无人值守安装方式。Kickstart的工做原理是经过记录典型的安装过程当中所需人工干预填写的各类参数,并生成一个名为ks.cfg的文件;在其后的安装过程当中(不仅局限于生成Kickstart安装文件的机器)当出现要求填写参数的状况时,安装程序会首先去查找Kickstart生成的文件,当找到合适的参数时,就采用,没有找到合适的参数时,才须要安装者手动干预。这样,若是Kickstart文件涵盖了安装过程当中出现的参数时,安装者彻底能够只告诉程序从何处取ks.cfg文件,而后去忙本身的事情。等安装完毕,安装程序会根据ks.cfg中设置的重启选项来重启系统,并结束安装。bash


1、环境说明服务器


  执行pxe+kickstart来批量安装系统,须要的环境为网络

  1.DHCP服务器dom

  2.TFTP服务器ide

  3.httpd服务器或者ftp服务器或者nfs服务器等能提供文件访问的服务器工具

  4.ks.cfg文件测试

  5.syslinux服务提供的pxelinux.0文件

  6.光盘镜像中的全部文件

  7.一台带有支持pxe协议的网卡的主机

  8.为确保实验可用性,请将防火墙和selinux关闭


2、安装步骤

一、系统版本

   

[root@c3 ~]# uname -r
2.6.32-431.el6.x86_64

           

[root@c3 ~]# cat /etc/issue
CentOS release 6.5 (Final)
Kernel \r on an \m

 

二、配置网络环境以及yum源

   

yum源的配置文件
#cd  /etc/yum.repos.d
#vim media.repo
[media]
name= Media
baseurl=file:///mnt
gpgcheck=0
enabled=1

   

[root@c3 ~]# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:0C:29:08:9B:54 
          inet addr:172.16.13.8  Bcast:172.16.255.255  Mask:255.255.0.0
          inet6 addr: fe80::20c:29ff:fe08:9b54/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:83140 errors:0 dropped:0 overruns:0 frame:0
          TX packets:32859 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:32207129 (30.7 MiB)  TX bytes:18363709 (17.5 MiB)


三、安装DHCP服务

   

[root@c3 ~]# yum -y install dhcp
[root@c3 ~]# cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf   提供dhcp配置文件


   配置dhcp服务器,使其可以提供172.16.13.2-172.16.13.100的ip地址分配,子网掩码

   为255.255.255.0

   在/etc/dhcpd/dhcpd.conf中添加修改成如下内容

   #######注意:每行后面必定要加分号,否则dhcpd服务启动不成功!

   

# vim /etc/dhcp/dhcpd.conf
option domain-name "jungege.com";
option domain-name-servers 192.168.13.8;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet 192.168.13.0 netmask 255.255.255.0 {
  range 192.168.13.2 192.168.13.100;
  option routers 192.168.13.8;
}
filename "pxelinux.0";
next-server 192.168.13.8;
注意:最重要的则为subnet的这段内容;

   

四、安装httpd服务

     

[root@c3 ~]# yum -y install httpd
[root@c3 ~]# chkconfig httpd on


     此处httpd只简单安装可以提供http协议便可,无需多余配置


五、安装tftp-server服务端

     

[root@c3 ~]# yum -y install tftp-server xinetd


     xinetd是tftp服务提供守护进程,将xinetd和tftp都设置为开机启动  

   

[root@c3 ~]# chkconfig xinetd on
[root@c3 ~]# chkconfig tftp on

 

六、准备所须要的rpm包

   将关盘从新挂载至/var/www/html/zxj目录下

   

# mkdir  /var/www/html/zxj -pv
# mount /dev/cdrom /var/www/html/zxj/

 

七、准备tftpboot下的文件


   安装syslinux,此服务为pxe提供pxelinux.0文件

# yum  -y install syslinux

   

   复制pxe启动所须要的文件到tftp根目录下

   

# cp /var/www/html/zxj/p_w_picpaths/pxeboot/{initrd.img,vmlinuz} /var/lib/tftpboot/
# cp /var/www/html/zxj/isolinux/{vesamenu.c32,splash.jpg} /var/lib/tftpboot/
# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
# mkdir -pv /var/lib/tftp/pxelinux.cfg
# cp /var/www/html/zxj/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default


   修改/var/lib/tftpboot/pxelinux.cfg/default

    wKiom1N2EynzYc-yAAF2w11fa0Y967.jpg


八、第一次测试,是否能够经过pxe安装系统


    wKioL1N2E86DdVnwAALE1igyh7A959.jpg



 九、提供kickstart文件


      kickstart文件的生成有两种方式


       1)复制模板/root/anaconda-ks.cfg 然后使用vim编辑配置

       2)使用system-config-kickstart命令来生成,建议使用/root/anaconda-ks.cfg模板来生成

           

      此处咱们先用system-config-kickstart命令来生成ks.cfg文件,关于第一种方式后续推出


   打开kickstart图形界面配置工具  

# yum -y install system-config-kickstart
# system-config-kickstart 打开图形配置界面

 

   选项配置


   1)基本配置wKiom1N2GBKC6vJdAAJmxUlhyeE905.jpg    

 2)选择安装方法

 wKiom1N2GDPQ1RIhAAFT77AlEaA335.jpg  

 3)分区信息wKioL1N2GCrgdz8lAAGXa-yNiEk822.jpg  

  4)保存ks.cfg配置到/var/www/html/ 目录下

 wKiom1N2GHDhnpVBAAI62PMPyug835.jpg


   注意:以上只配置了三个选项,其余的配置能够自定义选择,其中软件包的选择更是因人而异


   

[root@c3 ~]# ls /var/www/html
ks.cfg  zxj


十、配置PXE引导程序可以自动加载ks.cfg文件


    修改/var/lib/tftpboot/pxelinux.cfg的default文件

    wKiom1N2Gd6DFdHKAALjEDmgDEk317.jpg


   此时,须要提供的文件已经齐全咱们来启动服务


   

# service httpd start
# service xinetd start
# service dhcpd start



十一、给其余机器安装系统

   wKioL1N2GuGzDyyhAAFnpuD6vcQ278.jpg


  PXE+Kickstart实现了自动化安装系统!


PS:水平有限,若有不妥或者疑问请指出。

相关文章
相关标签/搜索