PXE网络装机服务器

步骤: 一、构建DHCP服务 1.装包配置 yum -y install dhcp vim /etc/dhcp/dhcpd.conf subnet 192.168.4.0 netmask 255.255.255.0 { range 192.168.4.1 192.168.4.254; option domain-name-server 8.8.8.8; option routers 192.168.4.254; default-lease-time 600; max-lease-time 7200; nex-server 192.168.4.7;(指定下一个配置,服务器IP地址)

filename "pxelinux.0";(指定网卡引导文件,文件名称) }

(pxelinux.0网卡引导文件,安装说明书,二进制文件, 需安装一个包,才能生成pxelinux.0文件)

2.重启DHCP服务 systemctl restart dhcpd

二、搭建TFTP服务 TFTP:简单的文件传输协议,端口:UDP 69 服务端程序:tftp-server 服务名:tftp 默认共享路径:/var/lib/tftpboot

1.安装tftp-server yum -y install tftp-server

2.启动tftp服务 systemctl start tftp

3.部署pxelinux.0文件 yum provides */pxelinux.0(查询仓库中哪一个包产生该文件)

yum -y install syslinux

rpm -ql syslinux (查询软件包,安装清单)

rpm -ql syslunux |grep pxelinux.0

cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot

4.部署default默认的菜单文件 mkdir /var/lib/tftpboot/pxelinux.cfg

mount /dev/cdrom /mnt

cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default

ls -l /var/lib/tftpboot/pxelinux.cfg/default

chmod 644 /var/lib/tftpboot/pxelinux.cfg/default

5.部署图形的模块、启动内核与驱动程序。 ls /mnt/isolinux

cp /mnt/isolinux/vesamenu.c32 /var/lib/tftpboot(图形模块)

cp /mnt/isolinux/initrd.img /var/lib/tftpboot(驱动程序)

cp /mnt/isolinux/vmlinuz /var/lib/tftpboot(启动内核)

6.修改菜单文件/var/lib/tftpboot/pxelinux.cfg/default vim /var/lib/tftpboot/pxelinux.cfg/default ..... ..... menu title ABC PXE Server! label linux menu label Install RHEL7 kernel vmlinuz append intrd=initrd.img

三、TFP服务,传输RPM包 1.搭建vsftp服务,共享光盘所有内容。

2.安装vstfpd软件 yum -y install vstfpd

3.启动vstfpd服务 systemctl start vstfpd

4.共享光盘所有内容 mkdir /var/tfp/abc7 umount /mnt mount /var/tfp/abc7 (也可以直接把光盘的所有内容cp到/var/tfp/abc7下)

四、无人值守安装,生成应答文件 1.图形生成应答文件程序:system-config-kickstart

2.在运行图形程序system-config-kickstart之前 要求yum仓库配置文件的仓库标识改为[development]

3.运行图形程序 system-config-kickstart

生成ks文件将它保存到/root下

vim /root/ks.cfg

4.将ks.cfg文件复制到/var/ftp下,生成共享应答文件。 cp /root/ks.cfg /var/tfp

五、通过菜单文件指定ks.cfg应答文件 vim /var/lib/tftpboot/pxelinux.cfg/default ...... ...... append initrd =initrd.img ks=ftp://192.168.4.7/ks.cfg