目标:实现PXE安装,只要开机设置从网络启动即可自动安装设置好的LINUX系统。
准备环境:做一台server服务器,需要DHCP、NFS、TFTP的支持,kichstart做好的ks.cfg
步骤:
1、DHCP服务设置(服务器IP为192.168.1.254) 设置完后起动:service dhcpd restart
ddns-update-style interim;
ignore client-updates;
subnet 192.168.1.254 netmask 255.255.255.0 {
option routers 192.168.1.254;
option subnet-mask 255.255.255.0;
option nis-domain "domain.org";
option domain-name "domain.org";
option domain-name-servers 192.168.1.254;
option time-offset -18000;
next-server 192.168.1.188;
filename "/pxelinux.0";
range dynamic-bootp 192.168.0.200 192.168.0.254;
default-lease-time 21600;
max-lease-time 43200;
host ns {
next-server marvin.redhat.com;
hardware ethernet 12:34:56:78:AB:CD;
fixed-address 207.175.42.254;
}
}
2、NFS服务设置(目录为/var/ftp/pub/ ,目录里有已设置好的ks.cfg文件和RHEL5安装目录)
vim /etc/exports
内容为:/var/ftp/pub/ 192.168.0.0/255.255.255.0(rw.sync)
启动NFS服务:service nfs restart
3、TFTP服务设置
检查TFTP安装包,确认安装。
启动TFTP服务:chkconfig tftp on; service xinetd restart;
检查:netstat -anup 确认 67、69 端口已开。
安装好后会在/目录下有/tftpboot/目录,如果没有,则手动建立。
4、pxe文件检查设置
rpm -qa |grep syslinux #确认syslinux已安装
cp /usr/lib/syslinux/pxelinux.0 /tftpboot/ #复制pxelinux.0到tftp目录下
5、复制引导内核(vmlinuz)、驱动(initrd.img)和安装配置文件(isolinux.cfg)到/tftpboot/目录下
这三个文件都在光盘上的/isolinux/目录里
cp /mnt/isolinux/vmlinuz /tftpboot/
cp /mnt/isolinux/initrd.img /tftpboot/
isolinux.cfg需要放到tftpboot/pxelinux.cfg/目录下,并改名default
cp /mnt/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default
/tftpboot/pxelinux.cfg/default的内容需要修改一下:
default ks #默认为ks选项
prompt 1
timeout 600
label linux
kernel vmlinuz
append initrd=initrd.img
label ks
kernel vmlinuz #指定ks.cfg在NFS服务器的路径
append ks initrd=initrd.img ks=nfs:192.168.0.254:/var/ftp/pub/ks.cfg
label local
localboot 1
6、设置其他机器从网络启动,即完成系统安装。
注:这个项目最重要的还是一定要设置好DHCP、NFS、TFTP三个服务,特别是DHCP服务,一定要确保每一步,差错一点可能就起动不了。另外,ks.cfg的设置也要注意,网络安装介质、安装的路径等。