[indent]本文介绍了 PC 平台上的一种快速 Red Hat Linux 安装方案。它具有很高的自动化程度--用户只需手工启动机器并选择从网络启动,就可以完成整个安装过程。在需要批量安装大量 Red Hat Linux 系统和需要技术人员 Red Hat Linux 安装支持的情况下,这种方案可以节省大量的时间。而且由于不需要额外的软件和光驱和软驱等硬件设备,在成本上也有很大优势。所有安装 Red Hat Linux 的开发/测试人员,和 IT 支持人员都能够从本文中获益。读者在阅读本文前需要有 Red Hat Linux 的安装经验。[/indent] 1. 引言 一般情况下,安装Linux需要从光驱用安装光盘启动机器,然后进入交互式安装界面输入安装所需的各种配置完成安装。在下面这些情况下,这种安装方式就会暴露出缺点: 1) 机器无光驱、光驱坏了(这种情况在现实中频繁发生) 或光盘坏了,无法从光驱安装Linux。 2) 软件测试人员在搭建测试环境时,需要安装大量的Red Hat Linux测试机器时。这时采用手工安装方式逐台机器安装效率会很低。 3) 对IT支持人员来说,指导一个Red Hat Linux生手安装Red Hat Linux系统会耗费很多时间。日复一日重复这种工作会浪费宝贵的人力资源。 从降低商业成本和提高安装系统效率的角度出发,本文向大家介绍一种方案--基于网络的Red Hat无人值守安装。该方案将很多安装准备工作在服务器上一次性完成,这样在客户机上安装时就不需要为每个客户机重复这些工作,节省了时间和成本,提高了效率。 在一次性的环境配置工作完毕后,该套方案能达到非常高的自动化程度:用户只需要执行很少的手工步骤即可完成安装。安装过程中的手工步骤和自动步骤如下: 1) 手工步骤:开机,选择从网络启动。如果你的方案配置得比较负责复杂灵活,也许还需要你选择安装何种系统。总之,手工步骤非常少。 2) 自动化步骤:剩余步骤,包括系统配置,硬盘分区,和程序包安装,将全部自动完成。
[table=98%][tr][td]
[/td][/tr][/table][table=98%] [table=560]
表1 网络安装环境里各机器上的软硬件配置
该方案的实现步骤 1) 配置启动服务器 2) 配置安装服务器 3) 从网络启动机器以完成安装 步骤1)和2)只需做一次即可。对每一台需安装Red Hat Linux的机器,都需要在启动服务器和安装服务器中部署相应的数据,并执行一次步骤3)。 下面将带领您逐一执行这些步骤。为了简单,我将用示例来说明如何在一台安装了 Red Hat Enterprise Linux AS 3 Update 5 的 PC 机上设置启动服务器和安装服务器,并在一台PC上安装 Red Hat Enterprise Linux AS 4 Update 2。
[table=98%][tr][td]
[/td][/tr][/table][table=98%] [/td][/tr][/table]
3. 步骤1:配置启动服务器 启动服务器的目的是帮助在待安装机器上启动Red Hat Linux 安装程序。启动服务器上需要搭建一个DHCP 服务器和一个TFTP 服务器。前者是为了给待安装机器分配IP地址,后者则是提供了一个让待安装机器下载启动镜像的途径。 配置DHCP 服务器 1) 安装DHCP服务器包(RPM包名:dhcpd)。 2) 编辑DHCP服务器配置文件 /etc/dhcp.conf。这里是一个示例:
[table=98%][tr][td][root@bsvr]#cp /usr/lib/syslinux/pxelinux.0 /tftpboot/ [/td][/tr][/table] 5) 编辑pxelinux.0的配置文件,以使pxelinux可以正确载入Red Hat Linux安装程序。对于每一个要被安装的Red Hat Linux版本,都需要执行一次该操作。 启动镜像pxelinux.0文件在执行过程中,会读取配置文件以确定它应该载入什么Linux内核文件来运行。所有的配置文件都放在启动服务器的 /tftpboot/pxelinux.cfg/目录下。pxelinux.0根据一定的规则来搜索合适的配置文件名。举例来说,对于前面为待安装机器分 配的IP地址192.168.138.30(十六进制表示为C0A88A1E),pxelinux.0会按如下次序搜索配置文件:
[table=98%][tr][td]C0A88A1E > C0A88A1 > … > C0 > C > default [/td][/tr][/table] 就是说,如果C0A88A1E文件存在,它就是pxelinux.0将载入的配置文件。否则,继续往下找。如果C0A88A1文件存在,它就是 pxelinux.0将载入的配置文件。如果前面的以C开头的文件都不存在,那么pxelinux.0将试图从文件default中读取配置。对于一台需 要支持很多安装机器的安装服务器来说,将配置写在与IP地址对应的文件里很不灵活。把所有配置都集中在default文件中是个不错的主意,可以减轻配置 文件维护负担。 可以将能想到的Red Hat Linux版本的配置都写在default文件里,以便同时支持多种Red Hat Linux版本,如下所示(对于具体某个 Red Hat Linux版本,对应的行该如何写,可以参考它安装盘里的配置文件 /isolinux/isolinux.cfg):
[table=98%][tr][td]Choose one of the following Linux distributions for your installation: Name Distribution Arch. Installation media ------------------------------------------------------------------------- rhel3u6-i386 RHEL 3 AS U6 i386 192.168.138.1:/instsvr/i386/rhel3u6 rhel3u6-x86_64 RHEL 3 AS U6 x86_64 192.168.138.1:/instsvr/x86_64/rhel3u6 rhel4u2-i386 RHEL 4 AS U2 i386 192.168.138.1:/instsvr/i386/rhel4u2 [/td][/tr][/table] 6) 启动TFTP服务。
4. 步骤2:配置安装服务器 安装服务器在安装期间提供对 Linux 安装介质和无人值守安装配置文件的访问。安装介质存储在服务器上的一个目录中,可以使用各种网络协议访问它,比如 HTTP,FTP,和NFS。使用NFS协议,Red Hat Linux安装程序可以支持多种安装介质目录结构,尤其是支持ISO光盘镜像文件。这里我们选择使用NFS协议来访问安装介质。 配置NFS服务器 1) 准备ISO安装介质。将Red Hat Linux安装介质的ISO文件都放置到/instsvr目录下。注意不要改变文件名。
[table=98%][tr][td][root@bsvr]# service nfs restart [/td][/tr][/table] 4) 检测目录/instsrv是否已被正确共享
[table=98%][tr][td][root@bsvr]#showmount -e localhost Export list for localhost: /instsrv * [/td][/tr][/table] 这样,我们就设置好了一个安装服务器。很简单吧! 配置kickstart安装 自从 5.2 版开始, Red Hat Linux 开始支持一个称为 kickstart 的功能,其主要目的是为了减少安装过程中的人机交互,提高安装效率。使用这种方法,只需事先定义好一个配置文件(通常存放在安装服务器上),并让安装程序 知道该配置文件的位置,在安装过程中安装程序就可以自己从该文件中读取安装配置,这样就避免了繁琐的人机交互,实现无人值守的自动化安装。 要使用 kickstart ,你必须: 1) 创建 kickstart 配置文件。 2) 部署kickstart配置文件,即将kickstart配置文件放置到安装服务器上,并在安装程序的kernel参数中指定kickstart配置文件的位置。 创建kickstart配置文件 kickstart 配置文件是一个简单的文本文件,包含一个安装项目列表。每个项目对应于一个安装选择,都用关键字标明。 有如下几种方法生成kickstart配置文件:
Red Hat提供了一个样例文件。在Red Hat Linux 文档光盘中 RH-DOCS 目录里的 sample.ks 文件。你可以基于该样例来创建你自己的配置kickstart文件。
每 当你安装好一台Red Hat Linux机器,Red Hat Linux 安装程序都会创建一个 kickstart 配置文件,记录你的真实安装配置。如果你希望实现和某系统类似的安装,可以基于该系统的kickstart配置文件来生成你自己的kickstart配置 文件。
Red Hat Linux提供了一个图形化的kickstart配置工具。在任何一个安装好的Red Hat Linux系统上运行该工具,就可以很容易地创建你自己的kickstart配置文件。kickstart配置工具命令为redhat-config- kickstart(RHEL3)或system-config-kickstart(RHEL4)
5. 步骤3:从网络启动机器以完成安装 前面的配置工作完成后,下面我们就在待安装机器上通过网络以无人值守的方式来安装Red Hat Enterprise Linux AS 4 Update 2。 1. 启动待安装机器,选择从网卡启动。具体方法因BIOS版本不同而异。图2是从VMWare虚拟机上得到的选择网络启动的屏幕截图。
6. 总结 本文介绍了一种基于网络(网络启动+网络安装)的无人值守Red Hat Linux安装方法。在需要安装大量机器的情况下,以及在需要提供自助安装服务的情况下,该方法可以节约大量人力。 本文中的示例只涉及了PC平台上的一种Red Hat Linux版本--RHEL AS 4。事实上,本文中的方法可以非常容易地推广到其它Red Hat Linux版本和其它硬件平台,如:
1. 其它Red Hat Linux版本
Red Hat Enterprise Linux 3, 4 的所有edition (AS, ES, WS, Desktop)