一.配置步骤:
1.基本环境:
①PXE搭建系统:CentOS Linux release 7.2.1511 (Core)
②IP地址:192.168.1.1(静态)
更改项:
BOOTPROTO= static
ONBOOT= yes
添加项:
IPADDR=192.168.1.10
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
DNS2=114.114.114.114 
③关闭防火墙:systemctl stop firewalld.service
[root@localhost ~]# systemctl stop firewalld.service ##关闭firewalld防火墙
[root@localhost ~]# systemctl disable firewalld ##关闭firewalld防火墙自启动
④关闭selinux:
编辑配置文件:/etc/sysconfig/selinux
[root@localhost ~]# vi /etc/sysconfig/selinux
SELINUX= disabled ##关闭 SELinux,只能重启生效。
因为更改配置文件需要重启后才能生效,所以使用命令临时关闭selinux:这种修改立时生效,但重启后失效。
[root@localhost ~]# getenforce
Enforcing ##强制模式。违反 SELinux 规则的行为将被阻止并记录到日志中。
[root@localhost ~]# setenforce 0 ##设置selinux放松, 这种修改立时生效,但重启后失效。
[root@localhost ~]# getenforce
Permissive ##宽容模式。违反 SELinux 规则的行为只会记录到日志中。一般为调试用。
2.安装所需服务: dhcp xinetd tftp-server httpd syslinux
yum install dhcp xinetd tftp-server httpd syslinux -y
3.配置TFTP所需环境:
vim /etc/xinetd.d/tftp ##编辑xinetd配置文件管理tftp
[root@localhost ~]# vim /etc/xinetd.d/tftp ##编辑配置文件
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot -c ##所指tftp根目录
disable = no ##更改为no
per_source = 11
cps = 100 2
flags = IPv4
}
重启xinetd服务和TFTP服务并使其开机自启:
[root@localhost ~]# systemctl restart xinetd ##重启xinetd服务
[root@localhost ~]# systemctl restart tftp ##重启tftp服务
[root@localhost ~]# systemctl enable tftp ##使tftp服务开机自启
[root@localhost ~]# systemctl enable xinetd ##使xinetd服务开机自启
4.配置DHCP所需环境:
编辑DHCP配置文件:/etc/dhcp/dhcpd.conf
[root@localhost ~]# vim /etc/dhcp/dhcpd.conf
allow booting; #定义能够PXE启动
allow bootp;
log-facility local4;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.210 192.168.1.220;
option routers 192.168.1.10;
option subnet-mask 255.255.255.0;
filename "pxelinux.0";
default-lease-time 86400;
max-lease-time 172800;
next-server 192.168.1.10;
}
重启DHCP服务并使其开机自启:
[root@localhost ~]# systemctl restart dhcpd ##重启dhcp服务
[root@localhost ~]# systemctl enable dhcpd ##使dhcp服务开机自启
5.配置FTP所需环境(本次实验把HTTP服务改成了FTP服务,给网起设备提供系统):
安装FTP服务:yum install -y vsftpd
[root@localhost ~]# yum install -y vsftpd
编辑/etc/vsftpd/vsftpd.conf,确保以下设置(ftp根目录没有更改,依旧是/var/ftp/):
anonymous_enable=yes
anon_upload_enable=YES ##默认注释掉了需要取消注释
anon_umask=022 ##默认local_umask=022也可以
[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES
local_umask=022
anon_upload_enable=YES
重启vsftpd服务并使其开机自启:
[root@localhost ~]# systemctl restart vsftpd ##重启FTP服务
[root@localhost ~]# systemctl enable vsftpd ##使FTP服务开机自启
创建目录用于挂载centos7系统iso镜像文件:/var/ftp/c7-64
[root@localhost ~]# mkdir -p /var/ftp/c7-64
挂载centos7系统iso镜像:
[root@localhost ~]# mount /dev/sr0 /var/ftp/c7-64/
为了每次开机都不用再去挂载推荐设置为自动挂载:
[root@localhost ~]# vim /etc/fstab
#
# /etc/fstab
# Created by anaconda on Thu Jan 16 16:30:28 2020
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root / xfs defaults 0 0
UUID=c6af63a6-4574-481c-aa4d-50cc710ed5bb /boot xfs defaults 0 0
/dev/mapper/centos-swap swap swap defaults 0 0
/dev/sr0 /var/ftp/c7-64 auto auto 0 0 ##添加这一行
6.配置准备系统安装引导所需文件+环境:
[root@localhost ~]# cp /var/ftp/c7-64/images/pxeboot/vmlinuz /var/lib/tftpboot/vmlinuz.c7-64
[root@localhost ~]# cp /var/ftp/c7-64/images/pxeboot/initrd.img /var/lib/tftpboot/initrd.img.c7-64
[root@localhost ~]# mkdir -p /var/lib/tftpboot/pxelinux.cfg

[root@localhost ~]# cp /usr/share/syslinux/* /var/lib/tftpboot/

[root@localhost pxelinux.cfg]# vim /var/lib/tftpboot/pxelinux.cfg/default
default linux
prompt 0
timeout 100
display boot.msg
label linux
kernel vmlinuz.c7-64
append initrd=initrd.img.c7-64 method=ftp://192.168.1.10/c7-64 devfs=nomount
安装kickstart
yum -y install system-config-kickstart fonts
本次使用MobaXterm远程登录虚拟机
执行system-config-kickstart唤醒图形化界面