天天看点

Linux云计算-- 批量装机 配置PXE引导 kickstart自动应答无人值守批量装机 配置PXE引导 kickstart自动应答

@[lincyou]

无人值守批量装机 配置PXE引导 kickstart自动应答

什么是PXE网络

• PXE,Pre-boot eXecution Environment

– 预启动执行环境,在操作系统之前运行

– 可用于远程安装

工作模式

– PXE client 集成在网卡的启动芯片中

– 当计算机引导时,从网卡芯片中把PXE client调入内存

执行,获取PXE server配置、显示菜单,根据用户选

择将远程引导程序下载到本机运行

• 需要哪些服务组件?

– DHCP服务,分配IP地址、定位引导程序

– TFTP服务,提供引导程序下载

– HTTP服务(或FTP/NFS),提供yum安装源

• 客户机应具备的条件

– 网卡芯片必须支持PXE协议

– 主板支持从网卡启动

一 部署DHCP服务

1 安装dhcp软件包

[[email protected] ~]#yum -y install dhcp
           

2 修改配置文件

[[email protected] ~]#vim /etc/dhcp/dhcpd.conf
           
(保留以下内容,其余删除,并修改以下内容)
subnet 192.168.4.0 netmask 255.255.255.0 {    #设置网段及子网掩码
  range 192.168.4.20 192.168.4.100;           #设置所分配的ip地址范围
  option domain-name-servers 192.168.4.7;     #声明DHCP服务器主机ip地址
  option routers 192.168.4.254;               #设置网关
  default-lease-time 600;
  max-lease-time 7200;
  (增加以下两行)
  next-server  192.168.4.7;                   #指定下一个服务器IP地址  
  filename  "pxelinux.0";                     #指定网卡引导文件名称
}
           

3 重启dhcpd服务,并且设置开机自启

[[email protected] ~]#systemctl restart dhcpd
  [[email protected] ~]#systemctl enable dhcpd
           

二 搭建tftp服务

1 安装tftp-server 服务

(该服务的默认引导安装路径是/var/lib/tftpboot)

[[email protected] ~]#yum -y install tftp-server
           

2 重启tftp服务

[[email protected] ~]#systemctl restart  tftp
  [[email protected] ~]#systemctl enable  tftp
           

3 查看pxelinux.0来源于哪个包

[[email protected] ~]# yum provides */pxelinux.0                                           #查询仓库中那个包产生此文件
  [[email protected] ~]# yum -y install syslinux
  [[email protected] ~]# rpm -ql syslinux  | grep pxelinux.0                               #查询安装清单
           

4 部署菜单文件

图形操作,将光盘放进主机

Linux云计算-- 批量装机 配置PXE引导 kickstart自动应答无人值守批量装机 配置PXE引导 kickstart自动应答

进行挂载:

[[email protected] ~]#mount /dev/cdroom  /mnt/
  [[email protected] ~]#/mnt/isolinux

           

4 部署图形模块、背景图片、部署启动内核、启动所需的驱动程序。

拷贝/mnt/isolinux 以下四个文件至/var/lib/tftpboot/

vesamenu.c32 splash.png vmlinuz initrd.img

[[email protected] ~]#cp /mnt/isolinux/vesamenu.c32  /mnt/isolinux/splash.png  /mnt/isolinux/vmlinuz  /mnt/isolinux/initrd.img  /var/lib/tftpboot/
           

5 修改菜单文件

创建目录

[[email protected] ~]#mkdir /var/lib/tftpboot/pxelinux.cfg
           

拷贝并重命名

[[email protected] ~]#cp /mnt/isolinux/isollinux.cfg   /var/lib/tftpboot/pxelinux.cfg/default
           

修改权限为W,才可以编辑 :

[[email protected] ~]#chmod u+w /var/lib/tftpboot/pxelinux.cfg/default
  [[email protected] ~]#/var/lib/tftpboot/pxelinux.cfg/default
           

验证:

新建一台虚拟机

安装方式选择 PXE网络引导安装

网络类型选择 Private1

三 搭建Web服务,共享光盘所有内容

1.安装httpd软件,启动服务

[[email protected] /]# yum -y install httpd
  [[email protected] /]# systemctl restart httpd
  [[email protected] /]# ls /var/www/html/
  [[email protected] /]# firefox 192.168.4.7
           

2.创建挂载目录,进行挂载光驱设备

2.创建挂载目录,进行挂载光驱设备
  [[email protected] /]# mount /dev/cdrom  /var/www/html/rhel7
  [[email protected] /]# ls  /var/www/html/rhel7
  [[email protected] /]# firefox  192.168.4.7/rhel7
           

四 部署无人值守安装,生成应答文件

1.图形的工具system-config-kickstart,进行生成

[[email protected] /]# yum -y  install  system-config-kickstart
           

2.运行进行配置

[[email protected] /]# system-config-kickstart
           

首先查看 “软件包选择” 是否可以使用

需要Yum仓库支持,必须要求  光盘的仓库标识为  [development]
  [[email protected] ~]# vim /etc/yum.repos.d/rhel7.repo 
  [development]
    .........
  [[email protected] /]# system-config-kickstart 
        
 查看  "软件包选择"   是否可以使用
           

3.查看root目录下ks文件生成

[[email protected] ~]# ls /root/ks.cfg 
           

4.利用Web服务共享应答文件/usr/share/doc/dhcp*/dhcpd.conf.example

[[email protected] ~]# cp /root/ks.cfg /var/www/html/
  [[email protected]vr7 ~]# ls /var/www/html/
  ks.cfg  rhel7
  [[email protected] ~]# firefox 192.168.4.7/ks.cfg
           

5.修改菜单文件,指定ks应答文件位置

[[email protected] ~]# vim /var/lib/tftpboot/pxelinux.cfg/default 
..........
label linux
  menu label Install RHEL7
  menu default
  kernel vmlinuz
  append initrd=initrd.img  ks=http://192.168.4.7/ks.cfg
           

验证:

1.新建一台虚拟机

安装方式选择 PXE网络引导安装

网络类型选择 Private1

总结:

  1. DHCP—>IP地址 next-server filename
  2. tftp—> pxelinux.0
  3. pxelinux.0—>读取菜单文件

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

  4. default---->

    vesamenu.c32 splash.png vmlinuz initrd.img

    ks=http://192.168.4.7/ks.cfg

  5. ks文件----> 时区 密码 分区 …

    –url=“http://192.168.4.7/rhel7”

继续阅读