PXE+kickstart自动装机配置步骤

一. 环境准备

1.通过 HTTP 方式发布CentOS7软件源

[root@room9pc13 ~]# yum  -y  install  httpd
[root@room9pc13 ~]# systemctl  restart  httpd 
[root@room9pc13 ~]# systemctl  enable  httpd
[root@room9pc13 ~]# mkdir  /var/www/html/dvd    //创建挂载点
[root@room9pc13 ~]# vim  /etc/fstab
/ISO/CentOS-1804.iso  /var/www/html/dvd  iso9660  loop,ro  0  0
[root@room9pc13 ~]# mount  -a 
[root@room9pc13 ~]# ls  /var/www/html/dvd/
[root@room9pc13 ~]# firefox http://192.168.4.254/dvd/

2.部署DHCP服务

[root@svr7 /]# yum -y install dhcp
[root@svr7 /]# vim /etc/dhcp/dhcpd.conf 
subnet 192.168.4.0 netmask 255.255.255.0 {
    
         //分配网段
range 192.168.4.100 192.168.4.200;             //分配IP地址范围
option domain-name-servers 192.168.4.7;        //分配DNS地址
option routers 192.168.4.254;                  //网关地址
default-lease-time 600;
max-lease-time 7200;
next-server  192.168.4.7;                     //指定下一个服务器tftp服务器地址
filename  "pxelinux.0";                       //指定网卡引导文件名称 
}
[root@svr7 ~]# systemctl  restart  dhcpd
[root@svr7 ~]# systemctl  enable  dhcpd
[root@svr7 ~]# netstat  -anptu  |  grep  dhcpd

二. 配置PXE引导

1.快速构建TFTP服务器

[root@svr7 /]# yum -y install tftp-server
[root@svr7 ~]# systemctl  restart  tftp
[root@svr7 ~]# systemctl  enable  tftp

2.部署pxelinux.0文件

[root@svr7 ~]#yum provides */pxelinux.0     //查询哪个软件包产生该文件
[root@svr7 ~]# yum  -y  install  syslinux
[root@svr7 ~]# rpm  -ql  syslinux  |  grep pxelinux.0
[root@svr7 ~]# cp  /usr/share/syslinux/pxelinux.0  /var/lib/tftpboot/
[root@svr7 ~]# ls  /var/lib/tftpboot/

3.部署启动内核与驱动程序,部署到tftp目录

[root@svr7 ~]# cd  /var/lib/tftpboot
[root@svr7 tftpboot]# wget  http://192.168.4.254/dvd/isolinux/vmlinuz             //下载启动内核
[root@svr7 tftpboot]# wget  http://192.168.4.254/dvd/isolinux/initrd.img          //下载驱动程序
[root@svr7 tftpboot]# ls /var/lib/tftpboot/    //确认部署结果   

4.部署启动菜单文件

[root@svr7 ~]# mkdir  /var/lib/tftpboot/pxelinux.cfg
[root@svr7 ~]# cd  /var/lib/tftpboot/
[root@svr7 tftpboot]# wget  http://192.168.4.254/dvd/isolinux/vesamenu.c32      //提供图形支持
[root@svr7 tftpboot]# wget  http://192.168.4.254/dvd/isolinux/splash.png        //准备背景图片
[root@svr7 tftpboot]# wget  -O  pxelinux.cfg/default  http://192.168.4.254/dvd/isolinux/isolinux.cfg     //建立菜单配置
[root@svr7 ~]# vim  /var/lib/tftpboot/pxelinux.cfg/default
   末行模式 开启行号  :set nu
  1  default vesamenu.c32            #默认加载图形的模块
  2  timeout 600                     #读秒时间   1/10秒
  10 menu background splash.png      #背景图片
  11 menu title PXE Installation Server   #标题
  61 label linux
  62 menu label ^Install CentOS 7   #菜单的显示内容
  63 menu default                   #读秒结束后默认选择
  64 kernel vmlinuz                 #加载启动内核
  65 append initrd=initrd.img       #加载驱动程序

5.测试验证

[root@svr7 ~]# systemctl restart dhcpd
[root@svr7 ~]# systemctl restart tftp

三.PXE+kickstart自动装机

1.安装可以生成应答文件的软件包

[root@svr7 ~]# yum -y install system-config-kickstart

2.点击 “软件包选择(Package Selection)” 查看是否可以进行选择需要Yum仓库的支持:指向光盘的内容仓库,标识必须为[development]

[root@svr7 ~]# vim  /etc/yum.repos.d/dvd.repo
[development]
name = CentOS Linux 7
baseurl = http://192.168.4.254/dvd
enabled=1
gpgcheck = 0

3.运行system-config-kickstart工具,创建应答文件,在支持图形程序的环境运行system-config-kickstart,即可打开该配置工具

[root@svr7 ~]# LANG=en  system-config-kickstart

点击 “软件包选择(Package Selection)” 查看是否可以进行选择
4.应答文件微调整

    [root@svr7 ~]# vim  /root/ks.cfg
    install                                                  //安装基本信息设置
    xconfig  --startxonboot
    keyboard --vckeymap=cn --xlayouts='cn'
    rootpw --iscrypted $1$.48kBNVL$e.Ym0L/RzkJonYwbg9Brq1
    timezone Asia/Shanghai
    url --url="http://192.168.4.254/dvd"                  //安装源设置
    lang zh_CN
    firewall --disabled
    #repo --name="Server-HighAvailability" --baseurl=file:///run/install/repo/addons/HighAvailability
    #repo --name="Server-ResilientStorage" --baseurl=file:///run/install/repo/addons/ResilientStorage
    #autopart --type=lvm                                      //分区设置
    zerombr
    clearpart --all --initlabel
    part /boot --fstype="xfs" --size=200
    part swap --fstype="swap" --size=2000
    part / --fstype="xfs" --grow --size=1
    .. ..
    %post --interpreter=/bin/bash                          //安装后脚本设置
    echo  '[CentOS7]
    name = CentOS Linux 7
    baseurl = http://192.168.4.254/dvd
    gpgcheck = 0'  >  /etc/yum.repos.d/CentOS7.repo
    %end
    %packages                                              //软件包设置
    @^graphical-server-environment
    @base
    @core
    @desktop-debugging
    @development
    .. ..
    initial-setup
    initial-setup-gui
    -NetworkManager
    -NetworkManager-team
    .. ..
    %end

5.部署应答文件

[root@room9pc13 ~]# scp  [email protected]:/root/ks.cfg  /var/www/html/
[root@room9pc13 ~]# ls  -lh  /var/www/html/ks.cfg
[root@pc207 ~]# wget  http://192.168.4.254/ks.cfg
[root@svr7 ~]# vim  /var/lib/tftpboot/pxelinux.cfg/default
.. ..
label linux
  menu label ^Install CentOS7 Linux 7
  kernel CentOS7/vmlinuz
  append initrd=CentOS7/initrd.img ks=http://192.168.4.254/ks.cfg 
.. ..

猜你喜欢

转载自blog.csdn.net/gao_2109/article/details/102522298
今日推荐