PXE 远程装机及 Kickstart 无人值守安装流程

1. 准备安装源(HTTP、FTP、NFS(网络))

例:ftp方式发布安装源。

(1)部署YUM软件仓库

~:cd /etc/yum.repos.d        //进入yum仓库
~:mkdir centos7.repo         //创建新的仓库源
~:vimcentos7.repo
	[local]                   // 容器名(仓库类别)
	name=centos7              //仓库名
	baseurl=ftp://192.168.100.6/centos7     //URL访问路径
            file:///media/cdrom/
		    http://*********     //服务器地址、本地、http三种方式
	enable=1                     //优先启动此仓库
	gpgcheck=0                   //验证软件包(不启动)
~:yum clean all                 //清理缓存
~:yum repolist                  //刷新仓库源信息,显示可用软件包

(2)安装vsftpd(ftp方式发布共享文件)

~:yum -y install vsftpd

(3)将光盘系统软件包复制到ftp共享文件中

~:mkdir /media/cdrom               //创建挂载点
~:mount /dev/sr0 /media/cdrom      //将镜像挂载到挂载点
~:mkdir /var/ftp/centos7           //在ftp共享目录下创建镜像目录
~:cp -rf /media/cdrom/* /var/ftp/centos7  //将所有安装包复制到新目录
~:systemctl start vsftpd           //开启vsftpd共享

2. 安装并启用TFTP服务

~:yum -y install tftp-server
~:vim /etc/xinetd.d/tftp
 	server_args= -s /var/lib/tftpboot
 	disable= no                          //将yes改为no
~:systemctl start tftp

3. 准备linux内核(vmlinuz)、初始化镜像(initrd.img)

~:cd /media/cdrom/images/pxeboot
~:cp vmlinuz initrd.img /var/lib/tftpboot   //将两个文件复制到tftp根目录下

4. 准备PXE引导程序

~:yum -y install syslinux    //pxe引导程序pxelinux.0由syslinux提供
~:cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot   //将该文件也复制一份放到tftp目录下

5. 安装并启用DHCP服务

~:yum -y install dhcp
~:vim /etc/dhcp/dhcpd.conf              //写入配置信息
	option domain-name "y2020";         //名称自定义
	option domain-name-servers 114.114.114.114;       
	default-lease-time 10000;
	max-lease-time 12000;
	subnet 192.168.100.0 netmask 255.255.255.0 {       //网段及掩码
        range 192.168.100.100 192.168.100.120;    //分配ip的地址池
        option routers 192.168.100.254;           //网关
        next-server 192.168.100.6;               //指定tftp服务器地址
        filename "pxelinux.0";                //指定PXE引导程序文件名
}
~:systemctl start dhcpd

6. 设置启动菜单文件

~:mkdir /var/lib/tftpboot/pxelinux.cfg
~:vim /var/lib/tftpboot/pxelinux.cfg/default    //注意:配置写错将找不到镜像或内核文件
	default auto
	prompt 0
	label auto
        kernel vmlinuz
        append initrd=initrd.img repo=ftp://192.168.100.6/centos7      //设置镜像、内核指向

7. Kickstart无人值守安装

~:yum -y install system-config-kickstart         //安装工具

使用工具配置自动应答文件:

PXE 远程装机及 Kickstart 无人值守安装流程_第1张图片
PXE 远程装机及 Kickstart 无人值守安装流程_第2张图片
PXE 远程装机及 Kickstart 无人值守安装流程_第3张图片
PXE 远程装机及 Kickstart 无人值守安装流程_第4张图片
PXE 远程装机及 Kickstart 无人值守安装流程_第5张图片
PXE 远程装机及 Kickstart 无人值守安装流程_第6张图片
PXE 远程装机及 Kickstart 无人值守安装流程_第7张图片
PXE 远程装机及 Kickstart 无人值守安装流程_第8张图片
需要将yum仓库类别改为developmen

~:vim /etc/yum.repos.d/centos7.repo
	[development]        //需要将yum仓库类别改为development才能识别到
~:yum clean all
~:yum repolist

在这里插入图片描述
PXE 远程装机及 Kickstart 无人值守安装流程_第9张图片
选择需要的东西(自定义)
在这里插入图片描述
可根据需要自己写配置脚本
PXE 远程装机及 Kickstart 无人值守安装流程_第10张图片
PXE 远程装机及 Kickstart 无人值守安装流程_第11张图片
选择一个位置存放自动应答文件

8. 启用自动应答文件

~:cp /root/ks.cfg /var/ftp/centos7/ks.cfg    //将放在root下的应答文件复制到ftp共享目录下
~:vim /var/lib/tftpboot/pxelinux.cfg/default
	default auto
	prompt 0                  //0代表不用等待用户控制
	label auto
        kernel vmlinuz
        append initrd=initrd.img repo=ftp://192.168.100.6/centos7 ks=ftp://192.168.100.6/centos7/ks.cfg      //再添加一个ks引导应答文件URL路径

9. 进入bios将新机设置为网络启动即可

如果出现错误可根据情况查看相关配置是否正确:
dhcp、tftp、vmlinuz丢失或auto找不到,一定要关闭防火墙

~:systemctl stop firewalld          //临时关闭防火墙
~:systemctl disable firewalld       //禁止防火墙自启动

PXE 远程装机及 Kickstart 无人值守安装流程_第12张图片
PXE 远程装机及 Kickstart 无人值守安装流程_第13张图片

你可能感兴趣的:(PXE 远程装机及 Kickstart 无人值守安装流程)