分类: LINUX
2012-02-03 13:32:08
自从 5.2 版开始, Red Hat Linux 开始支持一个称为 kickstart 的功能,其主要目的是为了减少安装过程中的人机交互,提高安装效率。使用这种方法,只需事先定义好一个配置文件(通常存放在安装服务器上),并让安装程序知道该配置文件的位置,在安装过程中安装程序就可以自己从该文件中读取安装配置,这样就避免了繁琐的人机交互,实现无人值守的自动化安装。
要使用 kickstart ,你必须:
1) 创建 kickstart 配置文件。
2) 部署kickstart配置文件,即将kickstart配置文件放置到安装服务器上,并在安装程序的kernel参数中指定kickstart配置文件的位置。
kickstart 配置文件是一个简单的文本文件,包含一个安装项目列表。每个项目对应于一个安装选择,都用关键字标明。
有如下几种方法生成kickstart配置文件:
这里有一个kickstart配置文件样例:
01 # Kickstart file automatically generated by anaconda. 02 03 install 04 nfs --server=192.168.138.1 --dir=/instsvr/i386/rhel4u2 05 lang en_US.UTF-8 06 langsupport --default=en_US.UTF-8 en_US.UTF-8 07 keyboard us 08 xconfig --card "VMWare" --videoram 16384 --hsync 31.5-37.9 --vsync 50-70 --resolution 800x600 --depth 16 09 network --device eth0 --bootproto DHCP 10 rootpw -iscrypted 11 firewall --disabled 12 selinux --enforcing 13 authconfig --enableshadow --enablemd5 14 timezone Asia/Shanghai 15 bootloader --location=mbr 16 # The following is the partition information you requested 17 # Note that any partitions you deleted are not expressed 18 # here so unless you clear all partitions first, this is 19 # not guaranteed to work 20 clearpart --all 21 part / --fstype ext2 --size=8000 22 part swap --size=1000 23 24 %packages 25 @ admin-tools 26 @ editors 27 @ emacs 28 @ text-internet 29 @ legacy-network-server 30 @ dialup 31 @ ftp-server 32 @ compat-arch-support 33 @ legacy-software-development 34 @ smb-server 35 @ base-x 36 @ kde-desktop 37 @ server-cfg 38 @ development-tools 39 kernel-smp 40 system-config-samba 41 rsh-server 42 grub 43 kernel-devel 44 kernel-smp-devel 45 e2fsprogs |
所有以"#"号开头的都是注释。
文件中的nfs --server=192.168.138.1 --dir=/instsvr/i386/rhel4u2选项告诉安装程序:到服务器192.168.138.1的NFS共享目录 /instsvr/i386/rhel4u2下寻找安装介质。Red Hat Linux安装程序足够聪明,可以识别该目录下应该被读取的ISO光盘镜像文件名,所有这里你不需要指定ISO文件名。
关于kickstart配置文件支持的所有选项及其相信说明,请查阅参考资料3。
首先我们需要把kickstart配置文件放在安装服务器上。我们把它放到/instsvr/ks目录下。即该文件的NFS访问路径为:
nfs:192.168.138.1:/instsvr/ks/ks.cfg |
其次,我们需要让安装程序知道我们希望它用kickstart方式安装,并告知它可以从哪里获得kickstart配置文件。这可以通过给内核添加一个参数"ks=kickstart配置文件路径"来实现。我们只需对启动服务器上的default文件做一些小修改就可以做到这点:
LABEL rhel4u2-i386 KERNEL vmlinuz-rhel4u2-i386 APPEND ks=nfs:192.168.138.1:/instsvr/ks/ks.cfg initrd=initrd-rhel4u2-i386.img ramdisk_size=8192 |
这样在启动安装程序的时候,参数ks=nfs:192.168.138.1:/instsvr/ks/ks.cfg会被传递给它,告诉它使用这个文件作为kickstart配置文件来进行kickstart安装。
|
前面的配置工作完成后,下面我们就在待安装机器上通过以无人值守的方式来安装Red Hat Enterprise Linux AS 4 Update 2。
1. 启动待安装机器,选择从网卡启动。具体方法因BIOS版本不同而异。图2是从VMWare虚拟机上得到的选择网络启动的屏幕截图。
2. 网卡中的PXE代码会联系DHCP服务器来获取IP地址以及启动镜像,然后启动镜像被载入并运行,你可以看到你自己定义的一个Linux列表如图3,选择你需要安装的系统版本。
3. 安装程序内核被启动(图4)。
4. 安装程序会读取kickstart配置文件开始无人值守安装。安装过程中它会根据kickstart配置文件中指定的安装介质地址,安装指定的包(图5)。
5. 直到安装结束(图6),你都不需要做任何工作。
6. 安装完成后,安装程序会提示你重新启动机器。重新启动机器时切记要在BIOS里改成从硬盘启动。如果仍然从光盘启动机器,又会重复前面的自动安装步骤。