配置DHCP
#分配IP,GW,DNS,filename,next-server
yum install -y dhcp
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf
subnet 192.168.10.0 netmask 255.255.255.0{
range 192.168.10.100 192.168.10.110;
option routers 192.168.10.254;
option domain-name-server 114.114.114.114;
next-server 192.168.10.11; #指明引导文件所在的服务器
filename "pexlinux.0"; #指明引导文件名称
}
配置TFTP
#提供bootloader,kerner,Initrd(临时文件系统(ramdisk)
yum install -y tftp-server
systemctl start tftp.socket
配置HTTP
#提供yum仓库
yum install -y httpd
mkdir /var/www/html/Centos/7 -pv
mount /dev/cdrom/ /var/www/html/Centos/7/ #将镜像挂载到网站,作为yum源
配置kickstart
#提供自动安装配置
yum install -y system-config-kickstart
system-config-kickstart #需要Xmanage启动图形界面
install
xconfig --startxonboot
keyboard --vckeymap=cn --xlayouts='cn'
rootpw --iscrypted $1$GPhawKj7$Ff6bKpPCFIDEdOQnnoIax/
lang zh_CN
auth --useshadow --passalgo=sha512
graphical
firstboot --enable
selinux --enforcing
skipx
services --enabled="chronyd"
ignoredisk --only-use=sda
firewall --disabled
network --bootproto=bootp --device=ens33
reboot
timezone Asia/Shanghai
url --url="http://192.168.10.11/Centos/7"
bootloader --location=mbr --boot-drive=sda
zerombr
clearpart --all --initlabel
part / --fstype="ext4" --ondisk=sda --size=10240
part /boot --fstype="ext4" --ondisk=sda --size=1024
part /home --fstype="ext4" --ondisk=sda --size=5120
part swap --fstype="swap" --ondisk=sda --size=2049
%packages
@base
@core
chrony
lftp
配置PXE
yum install -y syslinux
cp /usr/share/syslinux/pexlinux.0 /var/lib/tftpboot/ #引导文件
cp /var/www/html/Centos/7/images/pxeboot/{initrd.img,vmlinuz} /var/lib/tftpboot/ #复制内核文件,临时根文件系统
cp /usr/share/syslinux/{chain.c32,menu.c32,memdisk,mboot.c32} /var/lib/tftpboot #grub菜单所需要的文件
mkdir /var/lib/tftpboot/pxelinux.cfg
vim /var/lib/tftpboot/pxelinux.cfg/default
default menu.c32
prompt 5
timeout 30
menu title CentOS 7 PXE Menu
label linux
menu label ^Install CentOS 7
kernel vmlinuz
append initrd=initrd.img ks=http://192.168.10.11:/Centos/ks.cfg