PXE
PXE组件架构需要ftp\nfs\http\https作为库文件传输、dhcp获取网络地址,通过network from pxe获取同网段dhcp服务地址,tftp获取指定文件去读取需要的文件下载地址实现自动安装Centos 7
SERVER
安装hdcp并配置地址池
yum install dhcpd -y
安装tftp,并开启服务
vi /etc/xinted.d/tftp
server_args = -s /var/ftp/pub/ #我把根目录改成和ftp同路径了
disable = no #yes改成no
编辑dhcp服务配置文件
subnet 192.168.100.0 netmask 255.255.255.0{
range 192.168.100.200 192.168.100.220; #设定地址池范围
next-server 192.168.100.101; #指定目的文件地址
filename "pxelinux.0"; #指定pxe配置文件
}
systemctl start dhcp
安装并配置PXE做工环境配置文件包、ftp服务(/var/ftp/pub/作为tftp和ftp的根目录)
安装syslinux获取pxe需要的packages
chain.c32:主要引导
memdisk:使用内存模拟硬盘,通过网络传输来下载安装包的途中需要硬盘空间存储
menu.c32:为安装界面菜单提供支持
mboot.c32:default文件首先加载的文件
yum install syslinux vsftpd -y
cp /media/images/pxeboot/{initrd.img,vmlinuz,chain.c32,mboot.c32,memdisk,menu.c32} /var/ftp/pub/
cp /usr/share/syslinux/menu.c32 /var/ftp/pub/
为pxe引导创建默认配置文件
mkdir /var/ftp/pub/pxelinux.cfg
vi /var/ftp/pub/pxelinux.cfg/default #编辑这个配置文件
default menu.c32
prompt 5 #等待5秒
timeout 15
MENU TITLE CentOS 7 PXE #菜单名
LABEL linux
MENU LABEL Install Centos7.5 选项名
KERNEL vmlinuz #指定加载内核名字
APPEND initrd=initrd.img inst.repo=ftp://192.168.100.101/pub/CentOS #附加选项,额外选项都可以在这里加
最后配置
mkdir /var/ftp/pub/CentOS #提供yum安装库
mount /dev/cdrom /var/ftp/pub/CentOS #把系统光盘挂载到目录上
systemctl start vsftpd #启动ftp
systemctl start dhcpd #启动dhcp
systemctl restart xinted #重启网络守护进程,开启tftp
最后查看对应端口是否开启
67dhcp,69tftp,21vsftp,
[root@ZAT ~]# ss -tunl
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
udp UNCONN 0 0 *:67 *:*
udp UNCONN 0 0 *:69 *:*
udp UNCONN 0 0 127.0.0.1:323 *:*
udp UNCONN 0 0 ::1:323 :::*
tcp LISTEN 0 32 *:21 *:*
tcp LISTEN 0 128 *:22 *:*
tcp LISTEN 0 100 127.0.0.1:25 *:*
tcp LISTEN 0 128 :::22 :::*
tcp LISTEN 0 100 ::1:25 :::*
服务端配置完成,客户端到anaconda安装界面手动安装为止。如需同一安装格式需在服务端提供一个kickstart文件完成自动安装
客户端启动过程中安装遇到的报错问题
dhcp获取到了地址之后显示tftp timeout
检查tftp69端口是否侦听,tftp服务器和根目录是否与dhcpd.conf中指定的next-server和filename中匹配
faild:download ftp://IP/DIR/CentOS
检查vsftp21端口时否位侦听状态,ftp根目录下是否有安装源
no space left on device
检查tftp根目录是否有memdisk文件,客户端内存要2G以上
==================================================================================
图形化界面配置kickstart自动安装配置文件
设置kickstart文件需要图形化界面,安装system-config-kickstart包
yum install system-config-kickstart
安装完成后在图形终端运行system-config-kickstart命令
按要求配置好之后点击File-Save 弹出窗口保存到需要的目录下,在菜单文件如pxelinux.cfg/default中指定文件自动安装即可