ks全自动安装centos

1. 全新安装centos,选择好所需定制包

2. 完成安装后会在root下面生成一个install.log(rpm包列表)anaconda-ks.cfg(下文的ks.cfg基于此文件修改)

3. 将其简单编辑下保存起来 
node

1  cat /root/install.log | grep Installing | sed 's/Installing //g'|sed 's/\-[0-9].*$//g' > /tmp/rpm.log

4. 建立存放rpm包的目录
   mkdir -p /tmp/cdrom/CentOS

5. 将centos光盘或iso文件挂在到mnt下
python

1 mount -o loop CentOS-5.5-i386-bin-DVD.iso /mnt
2    mount /dev/cdrom /mnt/

6. 将所需软件包(rpm.log 列出的)copy到 /tmp/cdrom/CentOS/ 下
linux

使用shell以下(网上找到的,不是本人写的):
ios

01 #!/bin/bash
02 DEBUG=0
03 LT_CD=/mnt
04 ALL_RPMS_DIR=/mnt/CentOS
05 LT_RPMS_DIR=/tmp/cdrom/CentOS/
06 packages_list=/tmp/rpm.log
07 number_of_packages=`cat $packages_list | wc -l`
08 i=1
09 while [ $i -le $number_of_packages ] ; do
10 line=`head -n $i $packages_list | tail -n -1`
11 name=`echo $line | awk '{print $1}'`
12 version=`echo $line | awk '{print $3}' cut -f 2 -d :`
13 if [ $DEBUG -eq "1" ] ; then
14 echo $i: $line
15 echo $name
16 echo $version
17 fi
18 if [ $DEBUG -eq "1" ] ; then
19 ls $ALL_RPMS_DIR/$name-$version*
20 if [ $? -ne 0 ] ; then
21 echo cp $ALL_RPMS_DIR/$name-$version* ”
22 fi
23 else
24 echo cp $ALL_RPMS_DIR/$name-$version* $LT_RPMS_DIR/”
25 cp $ALL_RPMS_DIR/$name-$version* $LT_RPMS_DIR/
26 # in case the copy failed
27 if [ $? -ne 0 ] ; then
28 echo cp $ALL_RPMS_DIR/$name-$version* ”
29 cp $ALL_RPMS_DIR/$name* $LT_RPMS_DIR/
30 fi
31 fi
32 i=`expr $i + 1`
33 done

7. 赋予执行权限redis

1  chmod 777 rpm.sh

   执行shell  
shell

1  ./rpm.sh


8. 将除CentOS目录之外的文件同步到cdrom文件夹里
centos

1  rsync -avpz --exclude=CentOS /mnt/ /tmp/cdrom/

9. 更新光盘软件包结构
缓存

1 cd /tmp/cdrom/CentOS
2 createrepo -g ../repodata/comps.xml .
3 rm -rf ../repodata/*
4 mv repodata/* ../repodata/

9. 设定为自动安装模式,修改/tmp/cdrom/CentOS/isolinux/isolinux.cfg文件,改成以下
安全

01 cat /tmp/cdrom/CentOS/isolinux/isolinux.cfg
02 default linux
03 display boot.msg
04 F1 boot.msg
05 F2 options.msg
06 F3 general.msg
07 F4 param.msg
08 F5 rescue.msg
09 label linux
10   kernel vmlinuz
11   append initrd=initrd.img ramdisk_size=8192 ks=cdrom:/ks.cfg
12 label text
13   kernel vmlinuz
14   append initrd=initrd.img text 
15 label ks
16   kernel vmlinuz
17   append ks initrd=initrd.img
18 label local
19   localboot 1
20 label memtest86
21   kernel memtest
22   append -

10.生成ks.cfg文件
bash

1 cat /tmp/cdrom/CentOS/ks.cfg
01 install
02 cdrom
03 lang en_US.UTF-8
04 keyboard us
05 network --device=eth0 --bootproto static --ip 192.168.0.6 --netmask 255.255.255.0 --gateway 192.168.0.1 --nameserver 8.8.8.8 --hostname csys
06 rootpw --iscrypted $1$ioa/i9np$zbOdjS52XKA62z7NC5KwN/
07 firewall --enabled --port=22:tcp
08 authconfig --enableshadow --enablemd5
09 selinux --enforcing
10 timezone Asia/Shanghai
11 bootloader --location=mbr --driveorder=hdb
12 text
13 firstboot --disable
14 logging --level=info
15 reboot
16 zerombr
17 clearpart --all --initlabel 
18 part swap --fstype="swap" --size=2000
19 part /boot --fstype="ext3" --size=100
20 part / --fstype="ext3" --size=20000
21 part /opt --fstype="ext3" --grow --size=1
22 skipx
23 %packages --resolvedeps
24 @base
25 @core
26 @dialup
27 @editors
28 @text-internet
29 keyutils
30 trousers
31 fipscheck
32 device-mapper-multipath
33 %post
34 echo "nameserver 202.106.46.151" >> /etc/resolv.conf
35 /sbin/chkconfig microcode_ctl off
36 /sbin/chkconfig lvm2-monitor off
37 /sbin/chkconfig readahead_early off
38 /sbin/chkconfig kudzu off
39 /sbin/chkconfig mcstrans off
40 /sbin/chkconfig isdn off
41 /sbin/chkconfig auditd off
42 /sbin/chkconfig restorecond off
43 /sbin/chkconfig cpuspeed off
44 /sbin/chkconfig irqbalance off
45 /sbin/chkconfig portmap off
46 /sbin/chkconfig nfslock off
47 /sbin/chkconfig mdmonitor off
48 /sbin/chkconfig rpcidmapd off
49 /sbin/chkconfig rpcgssd off
50 /sbin/chkconfig messagebus off
51 /sbin/chkconfig bluetooth off
52 /sbin/chkconfig netfs off
53 /sbin/chkconfig pcscd off
54 /sbin/chkconfig acpid off
55 /sbin/chkconfig apmd off
56 /sbin/chkconfig haldaemon off
57 /sbin/chkconfig hidd off
58 /sbin/chkconfig autofs off
59 /sbin/chkconfig cups off
60 /sbin/chkconfig rawdevices off
61 /sbin/chkconfig sendmail off
62 /sbin/chkconfig gpm off
63 /sbin/chkconfig anacron off
64 /sbin/chkconfig atd off
65 /sbin/chkconfig yum-updatesd off
66 /sbin/chkconfig avahi-daemon off
67 /sbin/chkconfig firstboot off
68 /sbin/chkconfig local off
69 /sbin/chkconfig smartd off
70 /usr/sbin/eject

11.制做iso文件

1 mkisofs -r -T -J -V CentOS -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o /tmp/CentOS5.5-i386.iso /tmp/cdrom/

#参考资料:kickstart是什么        许多系统管理员宁愿使用自动化的安装方法来安装红帽企业 Linux.为了知足这种须要,红帽建立了kickstart安装方法.使用kickstart,系统管理员能够建立一个文件,这个文件包含了在典型的安装过程当中所遇 到的问题的答案.        Kickstart文件能够存放于单一的服务器上,在安装过程当中被独立的机器所读取.这个安装方法能够支持使用单一kickstart文件在多台机器上安装红帽企业Linux,这对于网络和系统管理员来讲是个理想的选择.        Kickstart给用户提供了一种自动化安装红帽企业Linux的方法.如何执行kickstart安装        kickstart 安装可使用本地光盘,本地硬盘驱动器,或经过 NFS,FTP,HTTP 来执行.        要使用 kickstart,必须:                1.建立一个kickstart文件.                2.建立有kickstart文件的引导介质或者使这个文件在网络上可用.                3.筹备安装树.                4.开始kickstart安装.建立kickstart文件        kickstart文件是一个简单的文本文件,它包含了一个项目列表,每一个项目由一个关键字来识别.能够用「Kickstart 配置」应用程序建立它或是本身从头编写.红帽企业Linux安装程序也根据在安装过程当中的选择建立一个简单的kickstart文件,这个文件被写入到 /root/anaconda-ks.cfg.能够用任何可以把文件保存为ASCII文本的文本编辑器或字处理器来编辑它.        首先,在建立kickstart文件时留意下列问题:                1.每节必须按顺序指定.除非特别申明,每节内的项目则没必要按序排列.小节的顺序为:                        命令部分,这里应该包括必需的选项.                        %packages部分,这部分选择须要安装的软件包.                        %pre和%post部分,这两个部分能够按任何顺序排列并且不是必需的.                2.没必要需的项目能够被省略.                3.若是忽略任何须需的项目,安装程序会提示用户输入相关的项目的选择,就象用户在典型的安装过程当中所遇到的同样.一旦用户进行了选择,安装会以非交互的方式(unattended)继续(除非找到另一个没有指定的项目).                4.以井号("#")开头的行被看成注释行并被忽略.        对于 kickstart 升级,下列项目是必需的:                1.语言                2.安装方法                3.设备规格(若是这个设备是在安装过程当中所须要的)                4.键盘设置                5.upgrade 关键字                6.引导装载程序配置                7.若是任何其余的项目被指定为upgrade,这些项目将被忽略(注意这包括了软件包选择).kickstart命令选项        下面的选项能够放入kickstart文件.若是喜欢使用图形化的界面来建立kickstart文件,可使用"Kickstart 配置"应用程序.(注:若是某选项后面跟随了一个等号(=),它后面就必须指定一个值.在示例命令中,括号([])中的选项是命令的可选参数.)        autopart(可选)                自动建立分区,大于1GB的根分区(/),交换分区和适合于不一样体系结构的引导分区.一个或多个缺省分区的大小能够用part指令从新定义.        ignoredisk(可选)                致使安装程序忽略指定的磁盘.若是使用自动分区并但愿忽略某些磁盘的话,这就颇有用.                        例如,没有ignoredisk,如要试图在SAN-cluster系统里部署,kickstart就会失败,由于安装程序检测到SAN不返回分区表的被动路径(passive path).                若是有磁盘的多个路径时,ignoredisk选项也有用处.                语法是:                        ignoredisk --drives=drive1,drive2,...                        这里driveN是sda,sdb... hda等等中的一个.        autostep(可选)                和interactive类似,除了它进入下一屏幕,它一般用于调试.                --autoscreenshot,安装过程当中的每一步都截屏并在安装完成后把图片复制到/root/anaconda-screenshots.这对于制做文档颇有用.        auth或authconfig(必需)                为系统设置验证选项.这和在安装后运行的authconfig命令类似.在缺省状况下,密码一般被加密但不使用影子文件(shadowed).                --enablemd5,每一个用户口令都使用md5加密.                --enablenis,启用NIS支持.在缺省状况下,--enablenis使用在网络上找到的域.域应该老是用--nisdomain=选项手工设置.                --nisdomain=,用在NIS服务的NIS域名.                --nisserver=,用来提供NIS服务的服务器(默认经过广播).                --useshadow或--enableshadow,使用屏蔽口令.                --enableldap,在/etc/nsswitch.conf启用LDAP支持,容许系统从LDAP目录获取用户的信息(UIDs,主目录,shell 等等).要使用这个选项,必须安装nss_ldap软件包.也必须用--ldapserver=和--ldapbasedn=指定服务器和base DN(distinguished name).                --enableldapauth,把LDAP做为一个验证方法使用.这启用了用于验证和更改密码的使用LDAP目录的pam_ldap模块.要使用这个选项,必须安装nss_ldap软件包.也必须用--ldapserver=和--ldapbasedn=指定服务器和base DN.                --ldapserver=,若是指定了--enableldap或--enableldapauth,使用这个选项来指定所使用的LDAP服务器的名字.这个选项在/etc/ldap.conf文件里设定.                --ldapbasedn=,若是指定了--enableldap或--enableldapauth,使用这个选项来指定用户信息存放的LDAP目录树里的DN.这个选项在/etc/ldap.conf文件里设置.                --enableldaptls,使用TLS(传输层安全)查寻.该选项容许LDAP在验证前向LDAP服务器发送加密的用户名和口令.                --enablekrb5,使用Kerberos 5验证用户.Kerberos本身不知道主目录,UID或shell.若是启用了Kerberos,必须启用LDAP,NIS,Hesiod或者使用 /usr/sbin/useradd命令来使这个工做站获知用户的账号.若是使用这个选项,必须安装pam_krb5软件包.                --krb5realm=,工做站所属的Kerberos 5领域.                --krb5kdc=,为领域请求提供服务的KDC.若是的领域内有多个KDC,使用逗号(,)来分隔它们.                --krb5adminserver=,领域内还运行kadmind的KDC.该服务器处理改变口令以及其它管理请求.若是有不止一个KDC,该服务器必须是主KDC.                --enablehesiod,启用Hesiod支持来查找用户主目录,UID 和 shell.在网络中设置和使用 Hesiod 的更多信息,能够在 glibc 软件包里包括的 /usr/share/doc/glibc-2.x.x/README.hesiod里找到.Hesiod是使用DNS记录来存储用户,组和其余信息的 DNS 的扩展.                --hesiodlhs,Hesiod LHS("left-hand side")选项在/etc/hesiod.conf里设置.Hesiod 库使用这个选项来决定查找信息时搜索DNS的名字,相似于LDAP对 base DN的使用.                --hesiodrhs,Hesiod RHS("right-hand side")选项在/etc/hesiod.conf里设置.Hesiod 库使用这个选项来决定查找信息时搜索DNS的名字,相似于LDAP对base DN的使用.                --enablesmbauth,启用对SMB服务器(典型的是Samba或Windows服务器)的用户验证.SMB验证支持不知道主目录,UID 或 shell.若是启用SMB,必须经过启用LDAP,NIS,Hesiod或者用/usr/sbin/useradd命令来使用户账号为工做站所知.要使用这个选项,必须安装pam_smb软件包.                --smbservers=,用来作SMB验证的服务器名称.要指定不止一个服务器,用逗号(,)来分隔它们.                --smbworkgroup=,SMB服务器的工做组名称.                --enablecache,启用nscd服务.nscd服务缓存用户,组和其余类型的信息.若是选择在网络上用NIS,LDAP或hesiod分发用户和组的信息,缓存就尤为有用.        bootloader(必需)                指定引导装载程序怎样被安装.对于安装和升级,这个选项都是必需的.                --append=,指定内核参数.要指定多个参数,使用空格分隔它们.                        例如:bootloader --location=mbr --append="hdd=ide-scsi ide=nodma"                --driveorder,指定在BIOS引导顺序中居首的驱动器.                        例如:bootloader --driveorder=sda,hda                --location=,指定引导记录被写入的位置.有效的值以下:mbr(缺省),partition(在包含内核的分区的第一个扇区安装引导装载程序)或none(不安装引导装载程序).                --password=,若是使用GRUB,把GRUB引导装载程序的密码设置到这个选项指定的位置.这应该被用来限制对能够传入任意内核参数的GRUB shell的访问.                --md5pass=,若是使用GRUB,这和--password=相似,只是密码已经被加密.                --upgrade,升级现存的引导装载程序配置,保留其中原有的项目.该选项仅可用于升级.        clearpart(可选)                在建立新分区以前,从系统上删除分区.默认不会删除任何分区.                注:若是使用了clearpart命令,--onpart命令就不可以用在逻辑分区上.                --all,删除系统上全部分区.                --drives=,指定从哪一个驱动器上清除分区.                        例如,下面的命令清除了主IDE控制器上的前两个驱动器上全部分区                        clearpart --drives=hda,hdb --all                --initlabel,根据不一样体系结构把磁盘标签初始化为缺省设置(例如,msdos用于x86而gpt用于Itanium).当安装到一个崭新的硬盘时,这颇有用,安装程序不会询问是否应该初始化磁盘标签.                --linux,删除全部Linux分区.                --none(缺省),不要删除任何分区.        cmdline(可选)                在彻底的非交互式的命令行模式下进行安装.任何交互式的提示都会终止安装.这个模式对于有x3270控制台的IBM System z系统颇有用.        device(可选)                在多数的PCI系统里,安装程序会正确地自动探测以太网卡和SCSI卡.然而,在老的系统和某些PCI系统里,kickstart须要提示来找到正确的设备.device命令用来告诉安装程序安装额外的模块,它有着这样的格式:                device <type><moduleName> --opts=<options>                <type>,用scsi或eth代替                <moduleName>,使用应该被安装的内核模块的名称来替换.                --opts=,传递给内核模块的选项.注意,若是把选项放在引号里,能够传递多个选项.                        例如:--opts="aic152x=0x340 io=11"                                                          driverdisk(可选)                能够在kickstart安装过程当中使用驱动软盘.必须把驱动软盘的内容复制到系统的硬盘分区的根目录下.而后必须使用driverdisk 命令来告诉安装程序到哪去寻找驱动磁盘.                driverdisk <partition> [--type=<fstype>]                另外,也能够为驱动程序盘指定一个网络位置:                driverdisk --source=ftp://path/to/dd.img                driverdisk --source=http://path/to/dd.img                driverdisk --source=nfs:host:/path/to/img                        <partition>,包含驱动程序盘的分区.                        --type=,文件系统类型(如:vfat,ext2,ext3).        firewall(可选)                这个选项对应安装程序里的「防火墙配置」屏幕:                firewall --enabled|--disabled [--trust=] <device> [--port=]                --enabled或者--enable,拒毫不是答复输出请求如DNS答复或DHCP请求的进入链接.若是须要使用在这个机器上运行的服务,能够选择容许指定的服务穿过防火墙.                --disabled或--disable,不要配置任何iptables规则.                --trust=,在此列出设备,如eth0,这容许全部经由这个设备的数据包经过防火墙.若是须要列出多个设备,使用--trust eth0 --trust eth1.不要使用以逗号分隔的格式,如--trust eth0, eth1.                <incoming>,使用如下服务中的一个或多个来替换,从而容许指定的服务穿过防火墙.                        --ssh                        --telnet                        --smtp                        --http                        --ftp                --port=,能够用端口:协议(port:protocal)格式指定容许经过防火墙的端口.                        例如,若是想容许IMAP经过的防火墙,能够指定imap:tcp.还能够具体指定端口号码,要容许UDP分组在端口1234经过防火墙,输入 1234:udp.要指定多个端口,用逗号将它们隔开.        firstboot(可选)                决定是否在系统第一次引导时启动"设置代理".若是启用,firstboot软件包必须被安装.若是不指定,这个选项是缺省为禁用的.                --enable或--enabled,系统第一次引导时,启动"设置代理".                --disable或--disabled,系统第一次引导时,不启动"设置代理".                --reconfig,在系统引导时在重配置(reconfiguration)模式下启用"设置代理".这个模式启用了语言,鼠标,键盘,根密码,安全级别,时区和缺省网络配置以外的选项.        halt(可选)                在成功地完成安装后关闭系统.这和手工安装类似,手工安装的anaconda会显示一条信息并等待用户按任意键来重启系统.在kickstart安装过程当中,若是没有指定完成方法(completion method),将缺省使用reboot选项.                halt选项基本和shutdown -h命令相同.                关于其余的完成方法,请参考kickstart的poweroff,reboot和shutdown选项.        graphical(可选)                在图形模式下执行kickstart安装.kickstart安装默认在图形模式下安装.        install(可选)                告诉系统来安装全新的系统而不是在现有系统上升级.这是缺省的模式.必须指定安装的类型,如cdrom,harddrive,nfs或url(FTP 或HTTP安装).install命令和安装方法命令必须处于不一样的行上.        cdrom                从系统上的第一个光盘驱动器中安装.        harddrive                从本地驱动器的vfat或ext2格式的红帽安装树来安装.                --biospart=,从BIOS分区来安装(如82).                --partition=,从分区安装(如sdb2).                --dir=,包含安装树的variant目录的目录.                        例如:harddrive --partition=hdb2 --dir=/tmp/install-tree        nfs                从指定的NFS服务器安装.                        --server=,要从中安装的服务器(主机名或IP).                        --dir=,包含安装树的variant目录的目录.                        --opts=,用于挂载NFS输出的Mount选项(可选).                                例如:nfs --server=nfsserver.example.com --dir=/tmp/install-tree        url                经过FTP或HTTP从远程服务器上的安装树中安装.                        例如:url --url http://<server>/<dir>                        或:url --url ftp://<username>:<password>@<server>/<dir>        ignore disk(可选)                用来指定在分区,格式化和清除时anaconda不该该访问的磁盘.这个命令有一个必需的参数,就是用逗号隔开的须要忽略的驱动器列表.                例如:ignoredisk --drives=[disk1,disk2,...]        interactive(可选)                在安装过程当中使用kickstart文件里提供的信息,但容许检查和修改给定的值.将遇到安装程序的每一个屏幕以及kickstart文件里给出的值.经过点击"下一步"接受给定的值或是改变值后点击"下一步"继续.请参考autostep命令.        iscsi(可选)                issci --ipaddr= [options].                --target                --port=                --user=                --password=        iscsiname(可选)        key(可选)                指定安装密钥,它在软件包选择和获取支持时设别系统的时候是必需的.这个命令是红帽企业Linux-specific,它对Fedora来讲没有意义而且会被忽略.                --skip,跳过输入密钥.一般,若是没有key命令,anaconda将暂停并提示输入密钥.若是没有密钥或不想提供它,这个选项容许继续自动化安装.        keyboard(必需)                设置系统键盘类型.这里是 i386,Itanium,和 Alpha 机器上可用键盘的列表:                be-latin1, bg, br-abnt2, cf, cz-lat2, cz-us-qwertz, de, de-latin1,                de-latin1-nodeadkeys, dk, dk-latin1, dvorak, es, et, fi, fi-latin1,                fr, fr-latin0, fr-latin1, fr-pc, fr_CH, fr_CH-latin1, gr, hu, hu101,                is-latin1, it, it-ibm, it2, jp106, la-latin1, mk-utf, no, no-latin1,                pl, pt-latin1, ro_win, ru, ru-cp1251, ru-ms, ru1, ru2,  ru_win,                se-latin1, sg, sg-latin1, sk-qwerty, slovene, speakup,  speakup-lt,                sv-latin1, sg, sg-latin1, sk-querty, slovene, trq, ua,  uk, us, us-acentos                文件/usr/lib/python2.2/site-packages/rhpl/keyboard_models.py 也包含这个列表并且是 rhpl 软件包的一部分.        lang(必需)                设置在安装过程当中使用的语言以及系统的缺省语言.例如,要把语言设置为英语,kickstart文件应该包含下面的一行:                lang en_US                文件/usr/share/system-config-language/locale-list里每一行的第一个字段提供了一个有效语言代码的列表, 它是system-config-language软件包的一部分.                文本模式的安装过程不支持某些语言(主要是中文,日语,韩文和印度的语言).若是用lang命令指定这些语言中的一种,安装过程仍然会使用英语,可是系统会缺省使用指定的语言.        langsupport(不同意)                langsupport关键字已经被取消并且使用它将致使屏幕出现错误信息及终止安装.做为代替,应该在kickstart文件里的%packages 部分列出所支持的语言的支持软件包组.例如,要支持法语,应该把下面的语句加入到                %packages:                @french-support        logvol(可选)                使用如下语法来为逻辑卷管理(LVM)建立逻辑卷:                logvol <mntpoint> --vgname=<name> --size=<size> --name=<name><options>                这些选项以下所示:                --noformat,使用一个现存的逻辑卷,不进行格式化.                --useexisting,使用一个现存的逻辑卷,从新格式化它.                --fstype=,为逻辑卷设置文件系统类型.合法值有:ext2,ext3,swap和vfat.                --fsoptions=,为逻辑卷设置文件系统类型.合法值有:ext2,ext3,swap和vfat.                --bytes-per-inode=,指定在逻辑卷上建立的文件系统的节点的大小.由于并非全部的文件系统都支持这个选项,因此在其余状况下它都被忽略.                --grow=,告诉逻辑卷使用全部可用空间(如有),或使用设置的最大值.                --maxsize=,当逻辑卷被设置为可扩充时,以MB为单位的分区最大值.在这里指定一个整数值,不要在数字后加MB.                --recommended=,自动决定逻辑卷的大小.                --percent=,用卷组里可用空间的百分比来指定逻辑卷的大小.                首先建立分区,而后建立逻辑卷组,再建立逻辑卷.                        例如:                        part pv.01 --size 3000                        volgroup myvg pv.01                        logvol / --vgname=myvg --size=2000 --name=rootvol        logging(可选)                这个命令控制安装过程当中anaconda的错误日志.它对安装好的系统没有影响.                --host=,发送日志信息到给定的远程主机,这个主机必须运行配置为可接受远程日志的syslogd进程.        --port=,若是远程的syslogd进程没有使用缺省端口,这个选项必须被指定.                --level=,debug,info,warning,error或critical中的一个.                指定tty3上显示的信息的最小级别.然而,不管这个级别怎么设置,全部的信息仍将发送到日志文件.        mediacheck(可选)                若是指定的话,anaconda将在安装介质上运行mediacheck.这个命令只适用于交互式的安装,因此缺省是禁用的.        monitor(可选)                若是monitor命令没有指定,anaconda将使用X来自动检测的显示器设置.请在手工配置显示器以前尝试这个命令.                --hsync=,指定显示器的水平频率.                --vsync=,指定显示器的垂直频率.                --monitor=,使用指定的显示器;显示器的名字应该在hwdata软件包里的/usr/share/hwdata/MonitorsDB列表上. 这个显示器的列表也能够在Kickstart Configurator的X配置屏幕上找到.若是提供了--hsync或--vsync,它将被忽略.若是没有提供显示器信息,安装程序将自动探测显示器.                --noprobe=,不要试图探测显示器.        mouse(已取消)                mouse 关键字已经被取消,使用它将致使屏幕出现错误信息并终止安装.        network(可选)                为系统配置网络信息.若是 kickstart安装不要求联网(换句话说,不从NFS,HTTP或FTP安装),就不须要为系统配置网络.若是安装要求联网而kickstart文件里没有提供网络信息,安装程序会假定从eth0经过动态IP地址(BOOTP/DHCP)来安装,并配置安装完的系统动态决定IP地址.network选项为经过网络的kickstart安装以及所安装的系统配置联网信息.                --bootproto=,dhcp,bootp或static中的一种,缺省值是dhcp.bootp和dhcp被认为是相同的.                        static方法要求在kickstart文件里输入全部的网络信息.顾名思义,这些信息是静态的且在安装过程当中和安装后全部.静态网络的设置行更为复杂,由于必须包括全部的网络配置信息.必须指定IP地址,网络,网关和命名服务器.                        例如("/"表示连续的行):                        network --bootproto=static --ip=10.0.2.15 --netmask=255.255.255.0 /                        --gateway=10.0.2.254 --nameserver=10.0.2.1                        若是使用静态方法,请注意如下两个限制:                                全部静态联网配置信息都必须在一行上指定,不能使用反斜线来换行.                                在这里只可以指定一个命名服务器.然而,若是须要的话,可使用kickstart文件的%post段落来添加更多的命名服务器.                --device=,用来选择用于安装的特定的以太设备.注意,除非kickstart文件是一个本地文件(如ks=floppy),不然 --device=的使用是无效的.这是由于安装程序会配置网络来寻找kickstart文件.                        例如: network --bootproto=dhcp --device=eth0                --ip=,要安装的机器的IP地址.                --gateway=,IP地址格式的默认网关.                --nameserver=,主名称服务器,IP地址格式.                --nodns,不要配置任何 DNS 服务器.                --netmask=,安装的系统的子网掩码.                --hostname=,安装的系统的主机名.                --ethtool=,指定传给ethtool程序的网络设备的其余底层设置.                --essid=,无线网络的网络ID.                --wepkey=,无线网络的加密密钥.                --onboot=,是否在引导时启用该设备.                --class=,DHCP类型.                --mtu=,该设备的MTU.                --noipv4=,禁用此设备的IPv4.                --noipv6=,禁用此设备的IPv6.        multipath(可选)                multipath --name= --device= --rule=        part或partition(对于安装是必需的,升级可忽略).                在系统上建立分区.                若是不一样分区里有多个红帽企业Linux系统,安装程序会提示用户升级哪一个系统.                警告:做为安装过程的一部分,全部被建立的分区都会被格式化,除非使用了--noformat和--onpart.                <mntpoint>,<mntpoint>是分区的挂载点,它必须是下列形式中的一种:                        /<path>,例如,/,/usr,/home                        swap,该分区被用做交换空间,要自动决定交换分区的大小,使用--recommended选项.                                swap --recommended                                自动生成的交换分区的最小值大于系统内存的数量,但小于系统内存的两倍.                        raid.<id>,该分区用于 software RAID(参考 raid).                        pv.<id>,该分区用于 LVM(参考 logvol).                --size=,以MB为单位的分区最小值.在此处指定一个整数值,如500.不要在数字后面加MB.                --grow,告诉分区使用全部可用空间(如有),或使用设置的最大值.                --maxsize=,当分区被设置为可扩充时,以MB为单位的分区最大值.在这里指定一个整数值,不要在数字后加MB.                --noformat,用--onpart命令来告诉安装程序不要格式化分区.                --onpart=或--usepart=,把分区放在已存在的设备上.                        例如:partition /home --onpart=hda1,把/home置于必须已经存在的/dev/hda1上.                --ondisk=或--ondrive=,强迫分区在指定磁盘上建立.                        例如:--ondisk=sdb把分区置于系统的第二个SCSI磁盘上.                --asprimary,强迫把分区分配为主分区,不然提示分区失败.                --type=(用fstype代替),这个选项再也不可用了.应该使用fstype.                --fstype=,为分区设置文件系统类型.有效的类型为ext2,ext3,swap和vfat.                --start=,指定分区的起始柱面,它要求用--ondisk=或ondrive=指定驱动器.它也要求用--end=指定结束柱面或用 --size=指定分区大小.                --end=,指定分区的结束柱面.它要求用--start=指定起始柱面.                --bytes-per-inode=,指定此分区上建立的文件系统的节点大小.不是全部的文件系统都支持这个选项,因此在其余状况下它都被忽略.                --recommended,自动决定分区的大小.                --onbiosdisk,强迫在 BIOS 找到的特定磁盘上建立分区.                注:若是由于某种缘由分区失败了,虚拟终端3上会显示诊断信息.        poweroff(可选)                在安装成功后关闭系统并断电.一般,在手工安装过程当中,anaconda会显示一条信息并等待用户按任意键来从新启动系统.在kickstart的安装过程当中,若是没有指定完成方法,将使用缺省的reboot选项.        raid(可选)                组成软件RAID设备.该命令的格式是:                raid <mntpoint> --level=<level> --device=<mddevice><partitions*>                <mntpoint>,RAID文件系统被挂载的位置.若是是/,除非已经有引导分区存在(/boot),RAID级别必须是1.若是已经有引导分区,/boot分区必须是级别1且根分区(/)能够是任何可用的类型.<partitions*>(这表示能够有多个分区)列出了加入到RAID阵列的RAID标识符.                --level=,要使用的RAID级别(0,1,或5).                --device=,要使用的RAID设备的名称(如md0或md1).RAID设备的范围从md0直到md7,每一个设备只能被使用一次.                --bytes-per-inode=,指定RAID设备上建立的文件系统的节点大小.不是全部的文件系统都支持这个选项,因此对于那些文件系统它都会被忽略.                --spares=,指定RAID阵列应该被指派N个备用驱动器.备用驱动器能够被用来在驱动器失败时重建阵列.                --fstype=,为RAID阵列设置文件系统类型.合法值有:ext2,ext3,swap和vfat.                --fsoptions=,指定当挂载文件系统时使用的free form字符串.这个字符串将被复制到系统的/etc/fstab文件里且应该用引号括起来.                --noformat,使用现存的RAID设备,不要格式化RAID阵列.                --useexisting,使用现存的RAID设备,从新格式化它.        reboot(可选)                在成功完成安装(没有参数)后从新启动.一般,kickstart会显示信息并等待用户按任意键来从新启动系统.        repo(可选)                配置用于软件包安装来源的额外的yum库.能够指定多个repo行.                repo --name=<repoid> [--baseline=<url>| --mirrorlist=<url>]                --name=,repo id.这个选项是必需的.                --baseurl=,库的URL.这里不支持yum repo配置文件里使用的变量.可使用它或者--mirrorlist,亦或二者都不使用.                --mirrorlist=,指向库镜像的列表的URL.这里不支持yum repo配置文件里可能使用的变量.可使用它或者--baseurl,亦或二者都不使用.        rootpw(必需)                把系统的根口令设置为<password>参数.                rootpw [--iscrypted] <password>                --iscrypted,若是该选项存在,口令就会假定已被加密.        selinux(可选)                在系统里设置SELinux状态.在anaconda里,SELinux缺省为enforcing.                selinux [--disabled|--enforcing|--permissive]                --enforcing,启用SELinux,实施缺省的targeted policy.                        注:若是kickstart文件里没有selinux选项,SELinux将被启用并缺省设置为--enforcing.                --permissive,输出基于SELinux策略的警告,但实际上不执行这个策略.                --disabled,在系统里彻底地禁用 SELinux.        services(可选)                修改运行在缺省运行级别下的缺省的服务集.在disabled列表里列出的服务将在enabled列表里的服务启用以前被禁用.                --disabled,禁用用逗号隔开的列表里的服务.                --enabled,启用用逗号隔开的列表里的服务.        shutdown(可选)                在成功完成安装后关闭系统.在kickstart安装过程当中,若是没有指定完成方法,将使用缺省的reboot选项.        skipx(可选)                若是存在,安装的系统上就不会配置X.        text(可选)                在文本模式下执行kickstart安装. kickstart安装默认在图形模式下安装.        timezone(可选)                把系统时区设置为<timezone>,它能够是timeconfig列出的任什么时候区.                timezone [--utc] <timezone>                --utc,若是存在,系统就会假定硬件时钟被设置为UTC(格林威治标准)时间.        upgrade(可选)                告诉系统升级现有的系统而不是安装一个全新的系统.必须指定 cdrom,harddrive,nfs或url(对于FTP和HTTP而言)中的一个做为安装树的位置.详情请参考 install.        user(可选)                在系统上建立新用户.                user --name=<username> [--groups=<list>] [--homedir=<homedir>] [--password=<password>] [--iscrypted] [--shell=<shell>] [--uid=<uid>]                --name=,提供用户的名字.这个选项是必需的.                --groups=,除了缺省的组之外,用户应该属于的用逗号隔开的组的列表.                --homedir=,用户的主目录.若是没有指定,缺省为/home/<username>.                --password=,新用户的密码.若是没有指定,这个账号将缺省被锁住.                --iscrypted=,所提供的密码是否已经加密?                --shell=,用户的登陆shell.若是不提供,缺省为系统的缺省设置.                --uid=,用户的UID.若是未提供,缺省为下一个可用的非系统 UID.        vnc(可选)                容许经过VNC远程地查看图形化的安装.文本模式的安装一般更喜欢使用这个方法,由于在文本模式下有某些大小和语言的限制.若是为no,这个命令将启动不须要密码的VNC服务器并打印出须要用来链接远程机器的命令.                vnc [--host=<hostname>] [--port=<port>] [--password=<password>]                --host=,不启动VNC服务器,而是链接至给定主机上的VNC viewer进程.                --port=,提供远程VNC viewer进程侦听的端口.若是不提供,anaconda将使用VNC的缺省端口.                --password=,设置链接VNC会话必需的密码.这是可选的,但倒是咱们所推荐的选项.        volgroup(可选)                用来建立逻辑卷管理(LVM)组,其语法格式为:                volgroup <name><partition><options>                这些选项以下所示:                --noformat,使用一个现存的卷组,不要格式化它.                --useexisting,使用一个现存的卷组,从新格式化它.                --pesize=,设置物理分区(physical extent)的大小.                首先建立分区,而后建立逻辑卷组,再建立逻辑卷.例如:        xconfig(可选)                配置X Window 系统.若是没有指定这个选项且安装了X,用户必须在安装过程当中手工配置X;若是最终系统里没有安装X,这个选项不该该被使用.                --driver,指定用于视频硬件的 X 驱动.                --videoram=,指定显卡的显存数量.                --defaultdesktop=,指定GNOME或KDE做为缺省的桌面(假设已经经过%packages安装了GNOME或KDE桌面环境).                --startxonboot,在安装的系统上使用图形化登陆.                --resolution=,指定安装的系统上X窗口系统的默认分辨率.有效值有:640x480,800x600,1024x768,1152x864, 1280x1024,1400x1050,1600x1200.请肯定指定与视频卡和显示器兼容的分辨率.                --depth=,指定安装的系统上的 X 窗口系统的默认色彩深度.有效值有:8,16,24,和 32.请肯定指定与视频卡和显示器兼容的色彩深度.        zerombr(可选)                若是指定了zerombr且yes是它的惟一参数,任何磁盘上的无效分区表都将被初始化.这会毁坏有无效分区表的磁盘上的全部内容.这个命令的格式应该以下:                zerombr yes                其它格式均无效.        zfcp(可选)                zfcp [--devnum=<devnum>] [--fcplun=<fcplun>] [--scsiid=<scsiid>] [--scsilun=<scsilun>] [--wwpn=<wwpn>]        %include                使用 %include/path/to/file命令能够把其余文件的内容包含在kickstart文件里,就好像这些内容出如今kickstart文件的%include命令后同样.kickstart的软件包选择        在kickstart文件里使用%packages命令来列出想安装的软件包(仅用于全新安装,升级安装时不支持软件包指令).        能够指定单独的软件包名或是组,以及使用星号通配符.安装程序能够定义包含相 关软件包的组.关于组的列表,请参考第一张红帽企业 Linux光盘里的 variant/repodata/comps-*.xml. 每一个组都有一个编号,用户可见性的值,名字,描述和软件包列表.在软件包列表里,若是这个组被选择的话,组里的标记为"mandatory"的软件包就必须被安装;标记为"default"的软件包缺省被选择;而标记为"optional"的软件包必须被明确地选定才会被安装.        多数状况下,只须要列出想安装的组而不是单个的软件包.注意Core和Base组老是缺省被选择,因此并不须要在%packages部分指定它们.        这里是一个 %packages 选择的示例:        %packages        @ X Window System        @ GNOME Desktop Environment        @ Graphical Internet        @ Sound and Video dhcp        如所看到的,组被指定了,每一个占用一行,用@符号开头,后面是comps.xml文件里给出的组全名.组也能够用组的id指定,如gnome- desktop.不须要额外字符就能够指定单独的软件包(上例里的dhcp行就是一个单独的软件包).        %packages 指令也支持下面的选项:                --nobase,不要安装@Base 组.若是想建立一个很小的系统,可使用这个选项.                --resolvedeps,选项已经被取消了.目前依赖关系能够自动地被解析.                --ignoredeps,选项已经被取消了.目前依赖关系能够自动地被解析.                --ignoremissing,忽略缺乏的软件包或软件包组,而不是暂停安装来向用户询问是停止仍是继续安装.                        例如:%packages --ignoremissingkickstart预安装脚本        能够在 ks.cfg文件被解析后立刻加入要运行的命令.这个部分必须处于kickstart文件的最后(在命令部分以后)并且必须用%pre命令开头.能够在%pre部分访问网络;然而,此时命名服务还未被配置,因此只能使用IP地址.        注:预安装脚本不在改换了的根环境(chroot)中运行.        --interpreter /usr/bin/python,容许指定不一样的脚本语言,如Python.把/usr/bin/python替换成想使用的脚本语言.kickstart安装后脚本        也能够加入在系统安装完毕后运行的命令.这部份内容必须在kickstart的最后并且用%post命令开头.它被用于实现某些功能,如安装其余的软件和配置其余的命名服务器.        注:若是用静态IP信息和命名服务器配置网络,能够在%post部分访问和解析IP地址.若是使用DHCP配置网络,当安装程序执行到%post部分时,/etc/resolv.conf文件尚未准备好.此时,能够访问网络,可是不能解析IP地址.所以,若是使用DHCP,必须在%post部分指定IP地址.        注:post-install 脚本是在 chroot 环境里运行的.所以,某些任务如从安装介质复制脚本或RPM将没法执行.        --nochroot,容许指定想在chroot环境以外运行的命令.                下例把/etc/resolv.conf文件复制到刚安装的文件系统里.                %post --nochroot cp /etc/resolv.conf /mnt/sysimage/etc/resolv.conf        --interpreter /usr/bin/python                容许指定不一样的脚本语言,如Python.把/usr/bin/python替换成想使用的脚本语言.开始kickstart安装        要开始kickstart安装,必须从制做的引导介质或红帽企业Linux光盘引导系统,并输入在引导提示下输入特殊的引导命令.若是ks命令行参数被传递给内核,安装程序将寻找kickstart文件.        第一张光盘和软盘                若是ks.cfg文件位于软盘的vfat或ext2文件系统里,并且从红帽企业Linux光盘引导的话,也可使用linux ks=floppy命令.                另一个引导方法是,从红帽企业Linux光盘引导并使用软盘上的vfat或ext2文件系统里的kickstart文件.要实现这样的方法,在 boot:提示下输入下面的命令:linux ks=hd:fd0:/ks.cfg        使用驱动程序盘                若是要使用带有kickstart的驱动盘,须要指定dd选项.                        例如,从软盘引导并使用驱动盘,能够在boot:提示下输入命令linux ks=floppy dd        引导光盘                若是kickstart文件位于引导光盘上,把光盘插入机器,引导系统并在boot:提示下输入命令linux ks=cdrom:/ks.cfg        其它启动 kickstart 安装的方法以下列举:                askmethod,若是咱们没有在的光驱里检测到红帽企业Linux光盘的话,请不要自动地把光盘做为安装来源.                autostep,使kickstart成为非交互式的.                debug,立刻启动pdb.                dd,使用驱动盘.                dhcpclass=<class>,发送自定义的DHCP vendor class identifier.ISC的dhcpcd能够用"option vendor-class-identifier"来查看这个值.                dns=<dns>,用逗号隔开的用于网络安装的命名服务器列表.                driverdisk,和'dd'相同.                expert,启用特殊的功能,容许对可移除介质(removable media)进行分区和提示驱动盘                gateway=<gw>,用于网络安装的网关.                graphical,强制图形化安装.ftp/http 安装模式时必须使用图形化界面.                isa,提示用户输入ISA设备配置.                ip=<ip>,用于网络安装的IP地址,对于DHCP使用'dhcp'.                keymap=<keymap>,使用的键盘格式.有效值是那些能够用于'keyboard' kickstart命令的值.                ks=nfs:<server>:/<path>,安装程序在NFS服务器<server>上的<path& amp; gt;里寻找kickstart文件.安装程序使用DHCP来配置以太网卡.例如,若是的NFS服务器是server.example.com且 kickstart文件是NFS共享目录的里/mydir/ks.cfg,正确的引导命令应该是ks=nfs:server.example.com: /mydir/ks.cfg.                ks=http://<server>/<path>,安装程序在HTTP服务器<server>上的< path>里寻找kickstart文件.安装程序使用DHCP来配置以太网卡.例如,若是的HTTP服务器是 server.example.com且kickstart文件是HTTP目录的里/mydir/ks.cfg,正确的引导命令应该是ks=http: //server.example.com/mydir/ks.cfg.                ks=floppy,安装程序在/dev/fd0里的软盘上的vfat或ext2文件系统里寻找ks.cfg文件.                ks=floppy:/<path>,安装程序在/dev/fd0里的软盘上以<path>寻找kickstart文件.                ks=hd:<device>:/<file>,安装程序把文件系统挂载在<device>(必须是vfat或 ext2),并且在该文件系统里以<file>来寻找 kickstart 文件,如ks=hd:sda3:/mydir/ks.cfg.                ks=file:/<file>,安装程序试图从文件系统里读取<file>;并无挂载任何文件.若是kickstart文件已经在initrd映像里时咱们一般使用这个方法.                ks=cdrom:/<path>,安装程序以<path>在光盘上寻找kickstart文件.                ks,若是单独使用ks,安装程序将配置以太网卡使用DHCP.kickstart文件从DHCP应答的"bootServer"里读取,就像是NFS服务器共享kickstart文件同样.在缺省状况下,bootServer与DHCP服务器是同一个.kickstart文件的名字是下列之一:                        若是指定了DHCP且引导文件以/开头,DHCP提供的引导文件将在NFS服务器上寻找.                        若是指定了DHCP且引导文件不以/开头,DHCP提供的引导文件将在NFS服务器的/kickstart目录里寻找.                        若是DHCP没有指定引导文件,安装程序将试图读取/kickstart/1.2.3.4-kickstart,这里的1.2.3.4是被安装的机器的数字化IP地址.                ksdevice=<device>,安装程序使用这个网络设备来链接网络.如要使用经过eth1设备链接至系统的NFS服务器上的 kickstart文件来启动kickstart安装,能够在boot:提示下使用ks=nfs:<server>:/<path& amp; gt; ksdevice=eth1命令.                kssendmac,把HTTP头加到对设置系统有帮助的ks=http://请求里.在CGI环境变量里包括全部网卡的MAC地址,如:"X-RHN- Provisioning-MAC-0: eth0 01:23:45:67:89:ab".                lang=<lang>,安装时使用的语言.这应该是'lang' kickstart命令可使用的有效语言之一.                loglevel=<level>,设置记录日志信息的最低级别.<level>的值能够是 debug,info,warning,error和critical.缺省值是info.                lowres,强制图形用户界面安装程序运行在640x480分辨率下.                mediacheck,激活加载者代码,能够容许用户选择测试安装介质(若是是基于ISO的方法)的完整性.                method=cdrom,执行基于光盘的安装.                method=ftp://<path>,使用<path>来进行FTP安装.                method=hd://<dev>/<path>,用<dev>上的<path>进行基于硬盘驱动器的安装.                method=http://<path>,用<path>来进行基于HTTP的安装.                method=nfs:<path>,用<path>来进行NFS安装.                netmask=<nm>,用于网络安装的掩码.                nofallback,若是图形化用户界面退出时失败.                nofb,不要载入某些语言进行文本安装时所须要的 VGA16 帧缓冲.                nofirewire,不要装载对防火墙设备的支持.                noipv6,在安装过程当中禁用 IPv6 网络.                nokill,当发生致命错误时,阻止anaconda终止全部运行程序的调试选项.                nomount,不要在救援模式下自动挂载任何已安装的Linux分区.                nonet,不要自动探测网络设备.                noparport,不要试图装载对并行端口的支持.                nopass,不要把键盘和鼠标信息传递给安装程序的第二阶段.当执行网络安装时,它能够用来在安装的第二阶段测试鼠标和键盘配置屏幕.                nopcmcia,忽略系统上的任何PCMCIA控制器.                noprobe,提示用户输入而不要试图检测硬件.                noshell,安装过程当中tty2上不要出现shell.                nostorage,不要自动探测存储设备(SCSI,IDE,RAID).                nousb,不要装载USB支持(若是安装过程在早些时候挂起,这会有帮助).                nousbstorage,不要在安装程序的载入程序中禁止载入usbstorage模块.它对SCSI系统上的设备排序可能有帮助.                rescue,运行救援环境.                resolution=<mode>,在指定模式下运行安装程序,如'1024x768'模式.                serial,启用串行控制台支持.                skipddc,跳过对显示器的DDC探测,若是系统被挂起的这可能有帮助.                syslog=<host>[:<port>],一旦安装过程被启动并运行,发送日志信息到<host>的可选端口<port>上的syslog进程.这要求远程syslog进程接受链接(-r 选项).                text,强制文本模式的安装.                updates,提示包含更新(bug修复)的软盘.                updates=ftp://<path>,基于FTP的包含更新的映像文件.                updates=http://<path>,基于HTTP的包含更新的映像文件.                upgradeany,不须要符合升级所指望的语法的/etc/redhat-release.                vnc,启用基于vnc的安装.将须要链接到使用vnc客户端程序的机器.                vncconnect=<host>[:<port>],一旦安装过程开始启动并运行,链接到<host>上的 vnc客户端,也可使用可选端口<port>.也要求'vnc' 选项被指定.                vncpassword=<password>,启用vnc链接的密码.这将阻止其余人无心地链接到基于vnc的安装上.也要求'vnc'选项被指定.

相关文章
相关标签/搜索