一、初始环境配置

iptables -F (清空防火墙策略)
setenforce 0(将selinux当前关闭)

image.png

systemctl disable firewalld.service(开机默认关闭防火墙)

image.png

也可以设置下次开机不启动该服务,编辑selinux配置文件:vim /etc/selinux/config

image.png

image.png

二、安装所需软件包

yum -y install httpd
yum -y install tftp-server
yum -y install syslinux 
yum -y install system-config-kickstart(生成ks文件)
yum -y install dhcp (安装dhcp服务)

三、生成kickstart文件

因为在centos7上生成kickstart文件,所以需要提前修改下yum库,修改如下

image.png

system-config-kickstart

image.png

弹出以下界面(当前运行在xshell,需要运行x11图形化界面)

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png


image.png

最后保存文件,起名为kscenos6.cfg,重复执行一次,生成kscentos7.cfg,不同之处在于选择http路径

生成的文件保存在/root目录下

image.png

让我们看一下这两个文件的关键处如图所示:

image.png

image.png

四、配置http服务

mkdir -p /var/www/html/centos/{6,7} (在http指定目录下创建目录用以区分centos6系统和centos7系统)
mount /dev/sr0 /var/www/html/centos/6/ (将光盘挂载到指定目录中)
mount /dev/sr1 /var/www/html/centos/7/

image.png

mkdir -p /var/www/html/ks

image.png

mv /root/kscentos6.cfg /var/www/html/ks
mv /root/kscentos7cfg /var/www/html/ks
mv ks centos

image.png

systemctl restart httpd (启动httpd服务)

image.png

测试http服务是否可用,在浏览器中输入192.168.230.131/centos 如下图所示

image.png

五、配置dhcp服务

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf(复制一份模板文件)

image.png

vim /etc/dhcp/dhcpd.conf (当前的ip地址必须为静态IP地址,否则无法启动dncp服务)

image.png

systemctl restart dhcpd

image.png

六、配置pxe

cd /var/lib/tftpboot/ (进入tftp服务的指定目录)
mkdir centos{6,7}
cp /var/www/html/centos/6/isolinux/{vmlinuz,initrd.img} centos6/
cp /var/www/html/centos/7/isolinux/{vmlinuz,initrd.img} centos7/
cp /usr/share/syslinux/{pxelinux.0,menu.c32} . (pxe创建系统时所需要的文件)
mkdir pxelinux.cfg
cp /var/www/html/centos/7/isolinux/isolinux.cfg pxelinux.cfg/default(注意所有文件权限)

image.png

vim pxelinux.cfg/default

image.png

systemctl start tftp.socket (开启服务)
systemctl enable tftp.socket(开机自启动服务)

七、测试

创建新的虚拟机,进入Boot Menu界面,选择第四项

image.png

image.png

任意选择一个系统进入

image.png