中国网管论坛's Archiver

edison33 发表于 2007-10-11 17:31

配置kickstart安装

[b][size=4]介绍[color=#58657b]kickstart[/color][/size][/b]
[b][size=4]自从 5.2 版开始, Red Hat Linux 开始支持一个称为 kickstart 的功能,其主要目的是为了减少安装过程中的人机交互,提高安装效率。使用这种方法,只需事先定义好一个配置文件(通常存放在安装[b]服务器[/b]上),并让安装程序知道该配置文件的位置,在安装过程中安装程序就可以自己从该文件中读取安装配置,这样就避免了繁琐的人机交互,实现无人值守的自动化安装。[/size][/b]
[b][size=4]要使用 kickstart ,你必须:[/size][/b]
[b][size=4]1) 创建 kickstart 配置文件。[/size][/b]
[b][size=4]2) 部署kickstart配置文件,即将kickstart配置文件放置到安装服务器上,并在安装程序的kernel参数中指定kickstart配置文件的位置。[/size][/b]
[b][size=4][color=#803d00]创建kickstart配置文件[/color][/size][/b]
[b][size=4]kickstart 配置文件是一个简单的文本文件,包含一个安装项目列表。每个项目对应于一个安装选择,都用关键字标明。[/size][/b]
[b][size=4]有如下几种方法生成kickstart配置文件:[/size][/b]
[list][*][size=4]Red Hat提供了一个样例文件。在Red Hat Linux 文档光盘中 RH-DOCS 目录里的 sample.ks 文件。你可以基于该样例来创建你自己的配置kickstart文件。[/size][*][size=4]每当你安装好一台Red Hat Linux机器,Red Hat Linux 安装程序都会创建一个 kickstart 配置文件,记录你的真实安装配置。如果你希望实现和某系统类似的安装,可以基于该系统的kickstart配置文件来生成你自己的kickstart配置文件。[/size][*][size=4]Red Hat Linux提供了一个图形化的kickstart配置工具。在任何一个安装好的Red Hat Linux系统上运行该工具,就可以很容易地创建你自己的kickstart配置文件。kickstart配置工具命令为redhat-config- kickstart(RHEL3)或system-config-kickstart(RHEL4)[/size][/list][size=4]这里有我自己的一个kickstart配置文件样例:[/size][size=4]
[/size][table=98%][tr][td][size=4]01 # Kickstart file automatically generated by anaconda.
02
03 install
04 nfs --server=10.0.2.2 --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
[/size][/td][/tr][/table][size=4]
[/size][b][size=4]所有以"#"号开头的都是注释。[/size][/b]
[b][size=4]文件中的nfs --server=10.0.2.1 --dir=/instsvr/i386/rhel4u2选项告诉安装程序:到服务器10.0.2.1的NFS共享目录 /instsvr/i386/rhel4u2下寻找安装介质。Red Hat Linux安装程序足够聪明,可以识别该目录下应该被读取的ISO光盘镜像文件名,所有这里你不需要指定ISO文件名。[/size][/b]
[b][size=4]关于kickstart配置文件支持的所有选项及其相信说明,请查阅参考资料3。[/size][/b]
[b][size=4][color=#803d00]部署kickstart配置文件[/color][/size][/b]
[b][size=4]首先我们需要把kickstart配置文件放在安装服务器上。我们把它放到/instsvr/ks目录下。即该文件的NFS访问路径为:[/size][/b]
[size=4]
[/size][table=98%][tr][td][size=4]nfs:10.0.2.1:/instsvr/ks/ks.cfg
[/size][/td][/tr][/table][size=4]
[/size][b][size=4]其次,我们需要让安装程序知道我们希望它用kickstart方式安装,并告知它可以从哪里获得kickstart配置文件。这可以通过给内核添加一个参数"ks=kickstart配置文件路径"来实现。我们只需对启动服务器上的default文件做一些小修改就可以做到这点:[/size][/b]
[size=4]
[/size][table=98%][tr][td][size=4]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
[/size][/td][/tr][/table][size=4]
[/size][b][size=4]这样在启动安装程序的时候,参数ks=nfs:10.0.2.1:/instsvr/ks/ks.cfg会被传递给它,告诉它使用这个文件作为kickstart配置文件来进行kickstart安装。[/size][/b]
[size=4]
[/size][table=98%][tr][td][size=4][img=512,1]http://www.ibm.com/i/v14/rules/blue_rule.gif[/img]
[img=8,6]http://www.ibm.com/i/c.gif[/img][/size][/td][/tr][/table][table][tr][td][size=4][img]http://www.ibm.com/i/c.gif[/img]
[/size][table][tr][td][size=4][img=16,16]http://www.ibm.com/i/v14/icons/u_bold.gif[/img]
[/size][/td][td][size=4][color=#803d00][url=http://www-128.ibm.com/developerworks/cn/linux/l-autoinstl/index.html#main]回页首[/url][/color][/size][/td][/tr][/table][/td][/tr][/table][size=4]

[/size][b][size=4][color=#803d00]5. 步骤3:从网络启动机器以完成安装[/color][/size][/b]
[b][size=4]前面的配置工作完成后,下面我们就在待安装机器上通过[url=]网络[/url]以无人值守的方式来安装Red Hat Enterprise Linux AS 4 Update 2。[/size][/b]
[b][size=4]1. 启动待安装机器,选择从网卡启动。具体方法因BIOS版本不同而异。图2是从VMWare虚拟机上得到的选择网络启动的屏幕截图。[/size][/b]
[size=4]
[url=][color=#58657b]图2 从BIOS选择网络启动[/color][/url]
[color=#58657b][img=335,204]http://www-128.ibm.com/developerworks/cn/linux/l-autoinstl/images/image004.jpg[/img][/color]

[/size][b][size=4]2. 网卡中的PXE代码会联系DHCP服务器来获取IP地址以及启动镜像,然后启动镜像被载入并运行,你可以看到你自己定义的一个Linux列表如图3,选择你需要安装的系统版本。[/size][/b]
[size=4]
[url=][color=#58657b]图3 网络启动后pxelinux.0的提示界面[/color][/url]
[color=#58657b][img=512,318]http://www-128.ibm.com/developerworks/cn/linux/l-autoinstl/images/image006.jpg[/img][/color]

[/size][b][size=4]3. 安装程序内核被启动(图4)。[/size][/b]
[size=4]
[url=][color=#58657b]图4 安装程序anaconda开始运行[/color][/url]
[color=#58657b][img=512,58]http://www-128.ibm.com/developerworks/cn/linux/l-autoinstl/images/image008.jpg[/img][/color]

[/size][b][size=4]4. 安装程序会读取kickstart配置文件开始无人值守安装。安装过程中它会根据kickstart配置文件中指定的安装介质地址,安装指定的[url=]软件[/url]包(图5)。[/size][/b]
[size=4]
[url=][color=#58657b]图5 安装程序在安装软件包[/color][/url]
[color=#58657b][img=512,415]http://www-128.ibm.com/developerworks/cn/linux/l-autoinstl/images/image010.jpg[/img][/color]

[/size][b][size=4]5. 直到安装结束(图6),你都不需要做任何工作。[/size][/b]
[size=4]
[url=][color=#58657b]图6 安装成功完成[/color][/url]
[color=#58657b][img=512,415]http://www-128.ibm.com/developerworks/cn/linux/l-autoinstl/images/image012.jpg[/img][/color]

[/size][b][size=4]6. 安装完成后,安装程序会提示你重新启动机器。重新启动机器时切记要在BIOS里改成从硬盘启动。如果仍然从光盘启动机器,又会重复前面的自动安装步骤。[/size][/b]
[size=4]
[/size][table=98%][tr][td][size=4][img=512,1]http://www.ibm.com/i/v14/rules/blue_rule.gif[/img]
[img=8,6]http://www.ibm.com/i/c.gif[/img][/size][/td][/tr][/table][table][tr][td][size=4][img]http://www.ibm.com/i/c.gif[/img]
[/size][table][tr][td][size=4][img=16,16]http://www.ibm.com/i/v14/icons/u_bold.gif[/img]
[/size][/td][td][size=4][color=#803d00][url=http://www-128.ibm.com/developerworks/cn/linux/l-autoinstl/index.html#main]回页首[/url][/color][/size][/td][/tr][/table][/td][/tr][/table][size=4]

[/size][b][size=4][color=#803d00]6. 总结[/color][/size][/b]
[b][size=4]本文介绍了一种基于网络(网络启动+网络安装)的无人值守Red Hat Linux安装方法。在需要安装大量机器的情况下,以及在需要提供自助安装服务的情况下,该方法可以节约大量人力。[/size][/b]
[b][size=4]本文中的示例只涉及了PC平台上的一种Red Hat Linux版本--RHEL AS 4。事实上,本文中的方法可以非常容易地推广到其它Red Hat Linux版本和其它[url=]硬件[/url]平台,如:[/size][/b]
[list][*][size=4]1. 其它Red Hat Linux版本 [/size][list][*][size=4]Red Hat Enterprise Linux 3, 4 的所有edition (AS, ES, WS, Desktop)[/size][*][size=4]Red Hat Linux 9[/size][*][size=4]Fedora Core 5[/size][/list][*][size=4]2. 其它硬件平台 [/size][list][*][size=4]64位Intel架构及兼容架构服务器(使用AMD64和EMT64处理器)[/size][/list][/list]

页: [1]

Powered by Discuz! Archiver 6.1.0  © 1999-2008 bbs.bitsCN.com