vsftpd-3.0.2-27.el7.x86_64.rpm //用来放置安装镜像,通过ftp访问镜像安装
dhcp.x86_64 12:4.2.5-79.el7.centos //用来给客户机分配ip
syslinux-4.05-15.el7.x86_64.rpm //用来提供pxe的引导程序
tftp-server.x86_64 0:5.2-22.el7.rpm //用来提供引导镜像文件的下载
system-config-kickstart.noarch 0:2.9.7-1.el7.rpm //用来无人值守安装
systemctl stop firewalld
setenforce 0
cd /var/ftp
mkdir centos7
mount /dev/sr0 /var/ftp/centos7
vim /etc/xinetd.d/tftp
wait =no(可以多台一起装)
disable =no(启用tftp服务)
cp initrd.img vmlinuz /var/lib/tftpboot
cd /var/ftp/centos7/images/pxeboot
rpm -ql syslinux | grep pxelinux
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot
创建启动菜单配置文件
mkdir /var/lib/tftpboot/pxelinux.cfg
vim default
default auto
prompt 1 (prompt 0 时无需等待)
label auto
kernel vmlinuz
append initrd=initrd.img method=ftp://192.168.232.105/centos7 ks=ftp://192.168.232.105/ks.cfg
label linux text
kernel vmlinuz
append text initrd=initrd.img method=ftp://192.168.232.105/centos7
label linux rescue
kernel vmlinuz
append rescue initrd=initrd.img method=ftp://192.168.232.105/centos7
[root@server pxelinux.cfg]# cp -p /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
subnet 192.168.100.0 netmask 255.255.255.0 { //配置网段
range 192.168.100.40 192.168.100.50; //配置地址池
option routers 192.168.100.1; //配置网关
next-server 192.168.100.120; //指定tftp服务器的地址
filename "pxelinux.0";} //指定pxe引导程序的文件名
图形化下设置kickstart文件
![](https://img-blog.csdnimg.cn/img_convert/033c257f170ce2be5eeac154ac318979.png)
配完后保存到 /var/ftp下
vim ks.cfg
从 家目录下的anaconda-ks.cfg
%packages
@^gnome-desktop-environment
@base
@core
@desktop-debugging
@development
@dial-up
@directory-client
@fonts
@gnome-desktop
@guest-agents
@guest-desktop-agents
@input-methods
@internet-browser
@java-platform
@multimedia
@network-file-system-client
@networkmanager-submodules
@print-client
@x11
chrony
kexec-tools
%end
cp 到 ks.cfg下
systemctl restart tftp
systemctl restart dhcpd
systemctl restart vsftpd