1、生成ks.cfg 文件
安裝Kickstart
# yum install system-config-kickstart
8.2 在桌面環境下配置Kickstart
啟動X Windows 環境
# startx
配置Kickstart
# system-config-kickstart
A. 設置語言,鍵盤,時區,Root密碼,安裝完畢后重啟等。
B. 設置安裝方式,這篇文章介紹的是HTTP方式的安裝,故選擇HTTP
C. 安裝MBR
D. 設置分區
E. 分區總覽
F. 配置網絡
G. 認證配置
H. SELinux 和防火牆配置
I. 圖形環境配置
J. 軟件包安裝選擇
L. 生成ks.cfg 文件,保存在/var/www/html/ 文件夾下
我們可以打開/var/www/html/ks.cfg 文件進行查看並做修改。
platform=x86, AMD64, or Intel EM64T #version=DEVEL # Firewall configuration firewall --disabled # Install OS instead of upgrade install # Use network installation url --url=http://172.16.68.61/cobbler/ks_mirror/CentOS_6.5_x86_64-x86_64/ #這個選項告訴安裝程序:到服務器172.16.68.61 的HTTP根目錄下的cdrom 文件夾下尋找安裝介質 # Root password rootpw --iscrypted $1$vsvtP./e$6PVMNfJd.shq2LgFJjYfA1 # System authorization information auth --useshadow --enablemd5 # Use graphical install graphical firstboot --disable # System keyboard keyboard us # System language lang en_US # SELinux configuration selinux --disabled # Installation logging level logging --level=info # Reboot after installation reboot # System timezone timezone --isUtc Asia/Shanghai # Network information network --bootproto=dhcp --device=eth0 --onboot=on # System bootloader configuration key --skip bootloader --append="rhgb quiet" --location=mbr --driveorder=sda # Clear the Master Boot Record zerombr # Partition clearing information clearpart --all --initlabel # Disk partitioning information part / --fstype="ext4" --size=8192 part swap --fstype="swap" --size=1024 part /home --fstype="ext4" --size=2048 %packages @base %end
說明:key --skip 如果是紅帽系統,此選項可以跳過輸入序列號過程;如果是CentOS 系列,則可以不保留此項內容;
reboot 此選項必須存在,也必須文中設定位置,不然kickstart顯示一條消息,並等待用戶按任意鍵后才重新引導;
clearpart --all --initlabel 此條命令必須添加,不然系統會讓用戶手動選擇是否清除所有數據,這就需要人為干預了,從而導致自動化過程失敗;
創建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 --opts= ,用scsi或eth代替 ,使用應該被安裝的內核模塊的名稱來替換. --opts=,傳遞給內核模塊的選項.注意,如果把選項放在引號里,可以傳遞多個選項. 例如:--opts="aic152x=0x340 io=11" driverdisk(可選) 可以在kickstart安裝過程中使用驅動軟盤.必須把驅動軟盤的內容復制到系統的硬盤分區的根目錄下.然后必須使用driverdisk 命令來告訴安裝程序到哪去尋找驅動磁盤. driverdisk [--type=] 另外,也可以為驅動程序盤指定一個網絡位置: driverdisk --source=ftp://path/to/dd.img driverdisk --source=http://path/to/dd.img driverdisk --source=nfs:host:/path/to/img ,包含驅動程序盤的分區. --type=,文件系統類型(如:vfat,ext2,ext3). firewall(可選) 這個選項對應安裝程序里的「防火牆配置」屏幕: firewall --enabled|--disabled [--trust=] [--port=] --enabled或者--enable,拒絕不是答復輸出請求如DNS答復或DHCP請求的進入連接.如果需要使用在這個機器上運行的服務,可以選擇允許指定的服務穿過防火牆. --disabled或--disable,不要配置任何iptables規則. --trust=,在此列出設備,如eth0,這允許所有經由這個設備的數據包通過防火牆.如果需要列出多個設備,使用--trust eth0 --trust eth1.不要使用以逗號分隔的格式,如--trust eth0, eth1. ,使用以下服務中的一個或多個來替換,從而允許指定的服務穿過防火牆. --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:///> 或:url --url ftp://:@/> 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 --vgname= --size= --name= 這些選項如下所示: --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. ,是分區的掛載點,它必須是下列形式中的一種: /,例如,/,/usr,/home swap,該分區被用作交換空間,要自動決定交換分區的大小,使用--recommended選項. swap --recommended 自動生成的交換分區的最小值大於系統內存的數量,但小於系統內存的兩倍. raid.,該分區用於 software RAID(參考 raid). pv.,該分區用於 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 --level= --device= ,RAID文件系統被掛載的位置.如果是/,除非已經有引導分區存在(/boot),RAID級別必須是1.如果已經有引導分區,/boot分區必須是級別1且根分區(/)可以是任何可用的類型.(這表示可以有多個分區)列出了加入到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= [--baseline=| --mirrorlist=] --name=,repo id.這個選項是必需的. --baseurl=,庫的URL.這里不支持yum repo配置文件里使用的變量.可以使用它或者--mirrorlist,亦或兩者都不使用. --mirrorlist=,指向庫鏡像的列表的URL.這里不支持yum repo配置文件里可能使用的變量.可以使用它或者--baseurl,亦或兩者都不使用. rootpw(必需) 把系統的根口令設置為參數. rootpw [--iscrypted] --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(可選) 把系統時區設置為,它可以是timeconfig列出的任何時區. timezone [--utc] --utc,如果存在,系統就會假定硬件時鍾被設置為UTC(格林威治標准)時間. upgrade(可選) 告訴系統升級現有的系統而不是安裝一個全新的系統.必須指定 cdrom,harddrive,nfs或url(對於FTP和HTTP而言)中的一個作為安裝樹的位置.詳情請參考 install. user(可選) 在系統上創建新用戶. user --name= [--groups=] [--homedir=] [--password=] [--iscrypted] [--shell=] [--uid=] --name=,提供用戶的名字.這個選項是必需的. --groups=,除了缺省的組以外,用戶應該屬於的用逗號隔開的組的列表. --homedir=,用戶的主目錄.如果沒有指定,缺省為/home/. --password=,新用戶的密碼.如果沒有指定,這個帳號將缺省被鎖住. --iscrypted=,所提供的密碼是否已經加密? --shell=,用戶的登錄shell.如果不提供,缺省為系統的缺省設置. --uid=,用戶的UID.如果未提供,缺省為下一個可用的非系統 UID. vnc(可選) 允許通過VNC遠程地查看圖形化的安裝.文本模式的安裝通常更喜歡使用這個方法,因為在文本模式下有某些大小和語言的限制.如果為no,這個命令將啟動不需要密碼的VNC服務器並打印出需要用來連接遠程機器的命令. vnc [--host=] [--port=] [--password=] --host=,不啟動VNC服務器,而是連接至給定主機上的VNC viewer進程. --port=,提供遠程VNC viewer進程偵聽的端口.如果不提供,anaconda將使用VNC的缺省端口. --password=,設置連接VNC會話必需的密碼.這是可選的,但卻是我們所推薦的選項. volgroup(可選) 用來創建邏輯卷管理(LVM)組,其語法格式為: volgroup 這些選項如下所示: --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=] [--fcplun=] [--scsiid=] [--scsilun=] [--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 --ignoremissing kickstart預安裝腳本 可以在 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=,發送自定義的DHCP vendor class identifier.ISC的dhcpcd可以用"option vendor-class-identifier"來查看這個值. dns=,用逗號隔開的用於網絡安裝的命名服務器列表. driverdisk,和'dd'相同. expert,啟用特殊的功能,允許對可移除介質(removable media)進行分區和提示驅動盤 gateway=,用於網絡安裝的網關. graphical,強制圖形化安裝.ftp/http 安裝模式時必須使用圖形化界面. isa,提示用戶輸入ISA設備配置. ip=,用於網絡安裝的IP地址,對於DHCP使用'dhcp'. keymap=,使用的鍵盤格式.有效值是那些可以用於'keyboard' kickstart命令的值. ks=nfs::/,安裝程序在NFS服務器上的里尋找kickstart文件.安裝程序使用DHCP來配置以太網卡.例如,如果的NFS服務器是server.example.com且kickstart文件是NFS共享目錄的里/mydir/ks.cfg,正確的引導命令應該是ks=nfs:server.example.com:/mydir/ks.cfg. ks=http:///,安裝程序在HTTP服務器上的里尋找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:/,安裝程序在/dev/fd0里的軟盤上以尋找kickstart文件. ks=hd::/,安裝程序把文件系統掛載在(必須是vfat或ext2),而且在該文件系統里以來尋找 kickstart 文件,如ks=hd:sda3:/mydir/ks.cfg. ks=file:/,安裝程序試圖從文件系統里讀取;並沒有掛載任何文件.如果kickstart文件已經在initrd映像里時我們通常使用這個方法. ks=cdrom:/,安裝程序以在光盤上尋找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=,安裝程序使用這個網絡設備來連接網絡.如要使用通過eth1設備連接至系統的NFS服務器上的kickstart文件來啟動kickstart安裝,可以在boot:提示下使用ks=nfs::/ ksdevice=eth1命令. kssendmac,把HTTP頭加到對設置系統有幫助的ks=http://請求里.在CGI環境變量里包括所有網卡的MAC地址,如:"X-RHN-Provisioning-MAC-0: eth0 01:23:45:67:89:ab". lang=,安裝時使用的語言.這應該是'lang' kickstart命令可以使用的有效語言之一. loglevel=,設置記錄日志信息的最低級別.的值可以是debug,info,warning,error和critical.缺省值是info. lowres,強制圖形用戶界面安裝程序運行在640x480分辨率下. mediacheck,激活加載者代碼,可以允許用戶選擇測試安裝介質(如果是基於ISO的方法)的完整性. method=cdrom,執行基於光盤的安裝. method=ftp://,使用來進行FTP安裝. method=hd:///,用上的進行基於硬盤驅動器的安裝. method=http://,用來進行基於HTTP的安裝. method=nfs:,用來進行NFS安裝. netmask=,用於網絡安裝的掩碼. 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=,在指定模式下運行安裝程序,如'1024x768'模式. serial,啟用串行控制台支持. skipddc,跳過對顯示器的DDC探測,如果系統被掛起的這可能有幫助. syslog=[:],一旦安裝過程被啟動並運行,發送日志信息到的可選端口上的syslog進程.這要求遠程syslog進程接受連接(-r 選項). text,強制文本模式的安裝. updates,提示包含更新(bug修復)的軟盤. updates=ftp://,基於FTP的包含更新的映像文件. updates=http://,基於HTTP的包含更新的映像文件. upgradeany,不需要符合升級所期望的語法的/etc/redhat-release. vnc,啟用基於vnc的安裝.將需要連接到使用vnc客戶端程序的機器. vncconnect=[:],一旦安裝過程開始啟動並運行,連接到上的vnc客戶端,也可以使用可選端口.也要求'vnc' 選項被指定. vncpassword=,啟用vnc連接的密碼.這將阻止其他人無意地連接到基於vnc的安裝上.也要求'vnc'選項被指定. 一個簡單完整的實例 install cdrom key 2515dd4e215225dd lang en_US.UTF-8 keyboard us xconfig --startxonboot network --device eth0 --bootproto static --ip 192.168.100.8 --netmask 255.255.255.0 --gateway 192.168.100.2 --nameserver 122.70.138.10 --hostname test.huabo.org rootpw --iscrypted $1$BPHqwNav$CjjfBezv5OuecU3rNkdDb/ firewall --enabled --port=22:tcp authconfig --enableshadow --enablemd5 selinux --enforcing timezone Asia/Chongqing bootloader --location=mbr --driveorder=sda --append="rhgb quiet" clearpart --drives=sda,sdb,sdc,sdd --initlabel part /boot --fstype ext3 --size=100 --ondrive=sda part / --fstype ext3 --size=4000 --ondrive=sda part swap --size=512 --ondrive=sda part raid.11 --size=1 --grow --asprimary --ondrive=sdb part raid.21 --size=1 --grow --asprimary --ondrive=sdc part raid.31 --size=1 --grow --asprimary --ondrive=sdd raid pv.01 --device=md0 --level=RAID5 raid.11 raid.21 raid.31 volgroup vgname pv.01 logvol /home --fstype=ext3 --vgname=vgname --size=4000 --name=home %packages --ignoremissing
@gnome-desktop @core @base-x @chinese-support xorg-x11-utils xorg-x11-server-Xnest