在单台PC或者是服务器上安装LINUX是一件很轻松的事情。但是,要在多台PC或者是服务器上安装LINUX,如果再使用传统的光盘或者是镜像文件来进行逐个安装就显得比较笨拙,会消耗很多时间和精力。最近我用PXE进行了8台服务器的安装,现将整个安装过程详细介绍如下,希望能对将要进行此类安装的朋友有所帮助。
注意:本篇文章中#后面所跟内容为实际操作时输入的相关命令。
一、安装前的准备
将要安装的系统光盘或镜像文件:Red Hat Enterprise Linux AS (其它版本的LINUX也可以)
硬件需求:将要安装系统的计算机需配置了带PXE功能的网卡(比较简单的方法就是看计算机BIOS中的启动选项里是否有通过LAN或者PXE启动这一项)
准备好一台已经安装了Red Hat Enterprise Linux As 的计算机(我们给这台计算机取个名字叫服务器A)。这台计算机要装有dhcp包和tftp包。如果没有则需要进行安装:
#rpm -ivh tftp-server-0.39-0.EL3.1.c0.i386.rpm
#rpm -ivh dhcp-3.0.1-10_EL3.i386.rpm
关闭服务器A上的防火墙
#iptables –F
二、准备NFS服务器(在服务器A上进行)
1、复制文件
(1)创建一个含有Red Hat Enterprise Linux安装文件的目录。我把这个目录命名为/mnt/inst
#mkdir /mnt/inst
(2)拷贝第一张安装光盘上的相关内容
插入第一张安装光盘到光驱
#mount /dev/cdrom /mnt/cdrom
#cp -ar /mnt/cdrom/RedHat /mnt/inst
#cp /mnt/cdrom/.discinfo /mnt/inst
#umount /dev/cdrom
取出第一张光盘,放入第二张
#mount /dev/cdrom /mnt/cdrom
#cp –ar /mnt/cdrom/RedHat /mnt/inst
#umount /dev/cdrom
取出第二张光盘,放入第三张
#mount /dev/cdrom /mnt/cdrom
#cp –ar /mnt/cdrom/RedHat /mnt/inst
#umount /dev/cdrom
取出第三张光盘,放入第四张
#mount /dev/cdrom /mnt/cdrom
#cp –ar /mnt/cdrom/RedHat /mnt/inst
#umount /dev/cdrom
2、配置NFS服务
(1) #vi /etc/exports
添加一行:
========+==========+===========
/mnt/inst *(ro,sync)
========+==========+===========
保存退出。
(2)导出这个/mnt/inst这个共享目录
#exportfs –a
(3)启动NFS服务
#service nfs restart
三、配置dhcp服务器和tftp服务器
1、配置dhcp服务器
#vi /etc/dhcpd.conf
=============+==========+===========
ddns-update-style interim;
ignore client-updates;
default-lease-time 21600;
max-lease-time 43200;
authourtative;
subnet 192.168.0.0 netmask 255.255.255.0 {
option routers 192.168.0.1;
option subnet-mask 255.255.255.0;
range 192.168.0.18 192.168.0.78;
default-lease-time 21600;
max-lease-time 43200;
filename "/pxelinux.0";
}
=============+==========+===========
保存退出。
2、配置tftp服务器
#vi /etc/xinetd.d/tftp
=============+==========+===========
service tftp
{
disable = no
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -u nobody -s /tftpboot
per_source = 11
cps = 100 2
flags = IPv4
}
=============+==========+===========
保存退出。
3、启动dhcp服务和tftp服务
#service dhcpd restart
#chkconfig dhcpd on
#/sbin/chkconfig --level 345 xinetd on
#/sbin/chkconfig --level 345 tftp on
该命令配置 tftp 和 xinetd 服务被立即启用,还把配置它们在运行级别3、4和5的引导期间启动。
四、配置支持PXE
# mkdir /tftpboot
# cp /usr/lib/syslinux/pxelinux.0 /tftpboot
把LINUX第一张安装光盘上/image/pxeboot/initr.img和vmlinux 以及isolinux/*.msg考到/tftpboot目录下
# cd /tftpboot
# mkdir pxelinux.cfg
#cd pxelinux.cfg
# vi default
=============+==========+===========
default
prompt 1
timeout 30
display boot.msg
F1 boot.msg
F2 options.msg
F3 general.msg
F4 param.msg
F5 rescue.msg
F7 snake.msg
label local
localboot 0
label linux
kernel vmlinuz
append initrd=initrd.img devfs=nomount ramdisk_size=9216
label text
kernel vmlinuz
append initrd=initrd.img text devfs=nomount ramdisk_size=9216
label expert
kernel vmlinuz
append expert initrd=initrd.img devfs=nomount ramdisk_size=9216
label ks
kernel vmlinuz
append ks initrd=initrd.img devfs=nomount ramdisk_size=9216
label nofb
kernel vmlinuz
append initrd=initrd.img devfs=nomount nofb ramdisk_size=9216
label lowres
kernel vmlinuz
append initrd=initrd.img lowres devfs=nomount ramdisk_size=9216
kernel vmlinuz
=============+==========+===========
五、开始安装
用集线器或交换机将8台服务器连接起来。启动一台服务器,进入BIOS,设置通过LAN或PXE启动机器即可。其余机器也按此操作。需要注意的是,当安装完成后重启机器时要把BIOS里的启动选项改为硬盘启动。