文章目录
PXE远程装机
1 PXE优势
- 规模化 同时装配多台服务器
- 自动化 自动安装系统配置各种服务
- 远程实现 不需要光盘、U盘等安装介质
预启动执行环境在操作系统之前运行
允许客户机通过网络从远程服务器下载引导镜像
2 前提条件
客户端
- 支持PXE协议(集成BOOTROM芯片)且主板支持网络引导
- 只需要在BIOS设置允许从Network或LAN启动
服务端
- 网络中有一台DHCP服务器以便为客户机自动分配地址、指定引导文件位置
- 服务器要通过TFTP服务(简单文件传输协议)来提供系统内核和引导镜像文件的下载
3 操作步骤
3.1 安装启用TFTP服务
yum -y install tftp-server xineted
##修改TFTP服务配置文件
vim /etc/xinetd.d/tftp
wait=yes##代表一台一台传输
server_args=/var/lib/tftpboot 根目录
systemctl enable --now xinetd tftp
3.2 安装并启用DHCP服务
yum -y install dhcp
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
3.3 修改DHCP服务的配置文件
vim /etc/dhcp/dhcpd.conf
ddns-update-style none;
#注释掉禁止反向解析和更新
添加next-server 192.168.80.10
#指定TFTP服务器地址
添加filename "pxelinux.0";
#指定引导文件
subnet 192.168.80.0 netmask 255.255.255.0 {
#声明要分配的网段地址
range 192.168.80.100 192.168.80.200;
#设置地址池
option routers 192.168.80.10 默认网关地址指向TFTP
systemctl enable --now dhcpd
3.4 配置启动菜单文件
yum -y install syslinux
cp /var/share/sysliux/ pxelinux.0 /var/lib/tftpboot
vim /var/lib/tftpboot/pxelinux.cfg/default启动菜单文件
default auto
prompt 1 1代表等待用户选择 0不等待
图形安装默认引导入口 label用来定义启动项
label auto
kernel vmlinuz
append initrd=initrd.img method=ftp://192.168.80.10/centos7
#文本安装引导入口
label linux text
kernel vmlinuz
append initrd=initrd.img method=ftp://192.168.80.10/centos7
#救援模式引导入口
label rescue
kernel vmlinuz
append rescue initrd=rescue initrd.img method=ftp://192.168.80.10/centos7
3.5 关闭防火墙
systemctl stop firewalld
setenforce 0
再次创建虚拟机就可以自动安装了
不需要镜像文件,但是要求客户端内存不能低于2G
4 Kickstart 无人值守安装
4.1 准备安装应答文件
##安装system-config-kickstart 工具
yum install -y system-config-kickstart
4.2 启动Kickstart 配置程序
通过桌面菜单“应用程序”-->“系统工具”-->“Kickstart” 打开
或
执行 “system-config-kickstart” 命令打开
4.3 配置kickstart选项
- 基本配置
默认语言设为“中文(简体)”
时区设为“Asia/Shanghai”
设置root密码
高级配置中勾选“安装后重启”
- 安装方法
- 选FTP
FTP服务器:ftp://主机IP
FTP目录:centos7
- 选FTP
- 引导装载程序选项
“安装类型”:安装新引导装载程序
“安装选项”:在主引导记录(MBR)中安装引导装载程序
-
分区信息
主引导记录:清除主引导记录
分区:删除所有现存分区
磁盘标签:初始化磁盘标签
布局:添加分区
-
网络配置
添加网络设备“ens33”
网络类型设为“DHCP”
-
安装后脚本
勾选“使用解释程序”:/bin/bash
rm -rf /etc/yum.repos.d/*
echo ‘[local]
name=local
baseurl=ftp://192.168.80.10/centos7
enabled=1
gpgcheck=0’ > /etc/yum.repos.d/local.repo其它选项保持默认设置即可
4.4 保存自动应答文件
选择“Kickstart 配置程序”窗口的“文件”-->“保存”命令,选择指定保存位置,文件名为ks.cfg
默认保存在/root/ks.cfg
cp /root/ks.cfg /var/ftp/ks.cfg
4.5 配置需要安装的软件包
可以根据需要将/root/anaconda-ks.cfg 的软件包安装脚本复制到 ks.cfg文件中,只需要复制%packages 到%end 部分即可。
如要求最小化安装,可复制下面内容:
vim ks.cfg
%packages
@^minimal
%end
4.8 编辑引导菜单文件
vim /var/lib/tftpboot/pxelinux.cfg/default
label auto
kernel vmlinuz #kernel 和 append用来定义引导参数
append initrd=initrd.img method=ftp://192.168.80.10/centos7 ks=ftp://192.168.80.10/ks.cfg
#添加 ks 引导参数以指定 ks.cfg 应答文件的 URL 路径