2008年11月28日星期五

RHEL4下的kickstart+dhcp+tftp+pxelinux+nfs全自动安装指南

原理:
1、客户机必须自带支持pxe的网卡,并将bios设为网络启动。
2、网卡的启动模块中的固化程序先申请ip地址,dhcp服务器做出应答。
3、dhcp服务器指定客户机的ip、pxelinux启动程序及配置文件的位置。
4、客户机通过dhcp服务器指定的文件位置,通过tftp方式从tftp服务器下载对应文件。包括:pxelinux.0、pxelinux.cfg/default、vmlinuz、initrd.img等文件
5、根据pxelinux.cfg/default文件,下载nfs目录下的ks.cfg文件,按照该文件的配置,使用nfs自动下载所需的rpm包,并安装。

过程:
tftp、nfs服务器为同一台机器10.0.1.61 dhcp为单独服务器
redhat源文件路径:/home/os/rhel4
tftp主目录:/tftpboot

1、配置/etc/dhcpd.conf,添加:
group {
next-server 10.0.1.61;
filename "rhel4/pxelinux.0";

host netman1 {
hardware ethernet 00:0d:56:10:ae:20;
fixed-address 10.0.1.1;
}
}
其中,
next-server 10.0.1.61 指定tftp服务器的ip
filename "rhel4/pxelinux.0" 指定客户机的启动文件
host {...} 指定要使用pxe安装的客户机ip
重启dhcp服务器:/etc/init.d/dhcpd restart

2、配置tftp服务器
打开/etc/xinetd.d/tftp文件,设disable=no。
启动xinetd:/etc/init.d/xinetd restart
默认情况下,tftp服务器的主目录是/tftpboot,将第一张光盘的isolinux下的所有文件都拷贝到/tftpboot下。
执行:mkdir -p /tftpboot/pxelinux.cfg
mv /tftpboot/isolinux.cfg /tftpboot/pxelinux.cfg/default
修改default文件,添加:
label auto
kernel vmlinuz
append initrd=initrd.img ks=nfs:10.0.1.61:/home/os/rhel4/ks.cfg devfs=nomount ramdisk_size=8192 nofb
其中,ks指定了ks.cfg文件所在的位置。注意,不要将initrd=ininrd.img的位置放到后面,有可能起不出来咯:)
目前,ks好像不支持ftp方式,只支持http和nfs。
http方式的格式为:
ks=http:///

3、配置ks.cfg文件。
这个步骤相对简单,找台linux机器,在x下运行redhat-config-kickstart(RHEL3)或system-config-kickstart(RHEL4)。配置完保存在nfs服务器的/home/os/rhel4/ks.cfg就可以了。

4、拷贝rhel4的cd1源包到目录/home/os/rhel4下,cd2/3/4下的rpm包都放到/home/os/rhel/RedHat/RPMS/下。

5、配置nfs服务器
配置/etc/exports文件,添加
/home/os/rhel4/ *(rw)
启动portmap、nfs

6、差不多了,打开客户机,在出现boot:下键入auto看看:)

没有评论: