ddns-update-style interim;
ignore client-updates;
allow booting;
allow bootp;
subnet 192.168.11.0 netmask 255.255.255.0 { //配置子网
range 192.168.11.61 192.168.11.65; //设定地址池
option routers 192.168.11.1; //设置客户端默认网关
option subnet-mask 255.255.255.0; //设定子网掩码
next-server 192.168.11.19; //指定tftp服务器地址
filename "pxelinux.0"; //指明PXE文件位置,这个在申请ip的时候会发送给安装主机
}
host wh001 { //对指定主机分配指定IP地址,这样安装完成后,可以直接通过ssh进行远程管理
hardware ethernet 00:0C:29:8E:4D:96; //MAC地址
fixed-address 192.168.11.61; //设定IP
}
host wh002 {
hardware ethernet 00:0C:29:C0:42:11;
fixed-address 192.168.11.62;
}
host wh003 {
hardware ethernet 00:0C:29:0F:12:1B;
fixed-address 192.168.11.63;
}
mkdir /mnt/iso1
mount /dev/sr0 /mnt/iso1 //挂载CentOS 6镜像到/mnt/iso1目录下
cp -rp /mnt/iso1 /var/www/html //将CentOS 6安装文件拷贝到httpd的默认网站目录下,这样就可以直接访问镜像安装文件了
service httpd restart
如果安装的是vsftp的话,需要修改添加匿名用户的家目录:
mkdir /tftpboot
cp /usr/share/syslinux/pxelinux.0 /tftpboot/
cp /usr/share/syslinux/chain.c32 /tftpboot/
cp /usr/share/syslinux/mboot.c32 /tftpboot/
cp /usr/share/syslinux/memdisk /tftpboot/
cp /usr/share/syslinux/menu.c32 /tftpboot/
cp /var/www/html/iso1/images/pxeboot/vmlinuz /tftpboot/
cp /var/www/html/iso1/images/pxeboot/initrd.img /tftpboot/
service xinetd restart
配置ks#.cfg文件
cd /var/www/html
cp /root/anaconda-ks.cfg ksdir/ks6.cfg
chmod +r ksdir/ks6.cfg centos 6的kickstart文件
vim ksdir/ks6.cfg
ks6.cfg具体内容:
#version=DEVEL
install //设定是进行安装操作
text //基于字符界面安装
lang en_US.UTF-8
keyboard us
network --onboot yes --device eth0 --bootproto dhcp --noipv6 //配置网卡
rootpw 123456 //设定root密码,有个加密选项,--iscrpted,但我没有实验成功
firewall --service=ssh //打开防火墙,并开启ssh端口
url --url=http://192.168.11.19/iso1 //设定安装镜像源,如果用的是ftp就是ftp的地址
selinux --disabled //关闭selinux服务
timezone Asia/Shanghai
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
zerombr //清楚mbr
clearpart --all //清除所有分区
reboot //安装完成后重启
part /boot --fstype=ext4 --size=400 //设定boot分区大小
part swap --size=4000 //设定交换分区大小
part / --fstype=ext4 --grow --size=200 //设定/分区为剩下所有空间
%packages --nobase //设定需要安装的组件,这里最小化安装,仅仅安装了核心
@core
%end
%pre //预安装脚本
%end
%post //后安装脚本
%end
default menu.c32
prompt 0
timeout 600 //设定等待时间,单位0.1S
menu title PXE MENU
label LinuxOnHTTP
menu label Install CentOS over http automatically //设定标签显示内容
kernel vmlinuz
append initrd=initrd.img ks=http://192.168.70.83/ksdir/ks6.cfg //设定配置文件网络位置