工作模式- PXE client集成在网卡的启动芯片中
- 当计算机引导时,从网卡芯片中把PXE client调入内存执行,获取PXE server配置、显示菜单,根据用户选择将远程引导程序下载到本机运行
- 网络装机服务器
- DHCP服务器,分配ip地址、定位引导程序
- TFTP服务,提供引导程序下载
- HTTP服务 (或FTP/NFS),提供yum安装源
- DHCP服务器,分配ip地址、定位引导程序
- TFTP服务,提供引导程序下载
- HTTP服务 (或FTP/NFS),提供yum安装源
步骤
一. 配置DHCP服务(定位)
- vim /etc/dhcp/dhcpd.conf
[root@svr7 /]# vim /etc/dhcp/dhcpd.conf
末行模式下 :r /usr/share/doc/dhcp*/dhcpd.conf.example
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; # 服务的ip地址
filename "pxelinux.0" # 指明网卡引导文件名称 }
二. 引导文件
- 部署pxelinux.0文件
- yum -y install tftp-server
部署pxelinux.0文件
]# yum -y install syslinux #安装syslinux软件包
]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
]# ls /var/lib/tftpboot/
pxelinux.0
- 部署菜单文件(光盘)
[root@svr7 /]# mkdir /var/lib/tftpboot/pxelinux.cfg
[root@svr7 /]# cp /mydvd/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
- 部署图形模块(vesamenu.c32)与背景图片(splash.png)
[root@svr7 /]# cp /mydvd/isolinux/vesamenu.c32 /mydvd/isolinux/splash.png /var/lib/tftpboot/
- 部署启动内核(vmlinuz)与驱动程序(initrd.img)
[root@svr7 /]# cp /mydvd/isolinux/vmlinuz /mydvd/isolinux/initrd.img /var/lib/tftpboot/
- 修改菜单文件内容
- vim /var/tftpboot/pxelinux.cfg/default 开启末行模式
1 default vesamenu.c32 #默认加载运行图形模块
2 timeout 600 #读秒时间60秒,1/10秒
此处省略一万字……..
10 menu background splash.png #背景图片
11 menu title NSD PXE Server #菜单界面的标题
此处省略一万字……..
61 label linux
62 menu label ^Install CentOS 7 #界面显示内容
63 menu default #读秒结束后默认的选项
64 kernel vmlinuz #加载内核
65 append initrd=initrd.img #加载驱动程序
以下全部删除
三.提供软件源(ftp)
- yum -y install vsftpd
- 建立挂载点
]# mkdir /var/ftp/centos
]# mount /dev/cdrom /var/ftp/centos #临时挂载
]# ls /var/ftp/centos
- 测试
curl ftp://192.168.4.7/centos/
四.生成应答文件
- 安装system-config-kickstart工具
[root@svr7 /]# yum -y install system-config-kickstart
[root@svr7 /]# system-config-kickstart #运行
将Yum仓库的标识为[development]才能识别安装包
- 保存生成的文件为/root/ks.cfg
- 利用FTP共享应答文件
[root@svr7 /]# cp /root/ks.cfg /var/ftp/
- 修改菜单文件,指定应答文件获取方式
vim /var/lib/tftpboot/pxelinux.cfg/default
……..此处省略一万字
label linux
menu label ^Install CentOS 7
menu default
kernel vmlinuz
append initrd=initrd.img ks=ftp://192.168.4.7/ks.cfg