一、什麼是kickstart?
kickstart安裝是redhat開創的按照你設計好的方式全自動安裝系統的方式。安裝方式可以分為光碟、硬碟、和網路。此文將以網路安裝方式詳細介紹使用kickstart的安裝系統的方法。
二、製作kickstart啟動盤準備工作
首先將系統第一張的光碟/image/boot.iso複製到本地/tmp/iso。
#mount /dev/hdc /mnt/cdrom
#cp /mnt/cdrom/images/boot.iso ./
#umount /dev/hdc
#mount -o loop boot.iso /mnt/iso/
#cp -r /mnt/iso/* /tmp/iso
刪除/tmp/iso下的trans.tbl和/tmp/iso/isolinux/boot.cat檔案。
#rm /tmp/iso/trans.tbl
#rm /tmp/isolinux/boot.cat
三、編輯ks.cfg檔案
ks.cfg檔案是乙個簡單的文字檔案,包含乙個專案列表,每個專案都用關鍵字標明。一般情況下當作業系統完成後,會自動在/root/的目錄生成乙個anaconda-ks.cfg檔案。我們可用這個檔案為模板來按照需要編輯自己的ks.cfg檔案。主要修改安裝方式、ip位址、主機名、分割槽大小等。
1 #generated by kickstart configurator
2 #system language
3 lang en_us
4 #language modules to install
5 langsupport --default en_us en_us zh_cn.gb2312
6 #system keyboard
7 keyboard us
8 #system mouse
array mouse genericps/2
10 #system timezone
11 timezone --utc asia/shanghai
12 #root password
13 rootpw 12345
14 #system bootloader configuration
15 bootloader --location=mbr
16 #install red hat linux instead of upgrade
17 install
18 #use ftp installation media
1array url --url
20 #disk partitioning information
21 clearpart --all
22 part / --size 4200
23 part swap --size 300
24 #use dhcp networking
25 network --bootproto dhcp
26 #system authorization information
27 auth --useshadow --enablemd5
28 #firewall configuration
2array firewall --disabled
30 #xwindows configuration information
31 #probe for video card
32 #probe for monitor
33 xconfig --depth 16 --resolution 1024x768 --defaultdesktop=gnome
34 %packages
35 @kde
36 @emacs
37 lynx
38 %pre
3array echo " welcome to my kickstart"
40 %post
41 echo "1array2.168.10.55 server" >> /etc/hosts
所有以「#」號開頭的都是注釋,可以忽略
第2行指明了安裝時採用的語言。其實在配置正確的時候,kickstart安裝不需要人工干預,本文將其定為英語。
第4行指明了系統支援的語言環境,如果不安裝x-window,只需要英語即可。本文增加了對簡體中文的支援。
第6-array行指明了系統採用的鍵盤和滑鼠的型別,通常鍵盤都是us相容行的。帶滾輪的ps/2滑鼠應寫為:
mouse msintellips/2
第6-array行建議用ksconfig 程式配置。
第10-11行是時區,中國的使用者一般可以選擇上海。
第12-13行指明了root使用者的密碼,還有一種形式就是將密碼進行加密。
第16-17行指明了是安裝還是公升級,如果是公升級,第17行應該用upgrade代替install引數。
第18 -1array行指明了安裝介質所在的位置,這是kickstart安裝的關鍵之一。安裝介質可以放置在nfs/ftp/http伺服器上,也可以放置在本機硬碟上。本文不打算**硬碟安裝,只研究網路安裝。具體的辦法是把3張red hat安裝光碟中的red hat目錄拷貝到到伺服器的某個位置,比如說/tmp/install 下面,如果是用nfs安裝,則需要把/tmp/install 共享出去,同時要保證將要安裝red hat linux的客戶機可以訪問。
如果是ftp或者http安裝,則可以把red hat目錄放在ftproot或者httproot下。值得注意的是,在windows系統中,可能對「/」和「」產生歧意,如果ftp server 是windows系統,最好將red hat目錄放置到ftproot的再下一級目錄中。
第21-23行是描述linux將安裝到哪個分割槽,clearpart -all 的意思是清除所有分割槽。第22行新建乙個4.2gb的分割槽作為「/」分割槽。第23行新建立乙個300mb的swap分割槽。
如果使用已存在的分割槽,則寫為:
partition / --onpart sda1
partition swap -onpart sda2
注意:第21-23行最好不要用ksconfig程式自動設定引數,手工配置比較穩妥。
network --bootproto static --ip 1array2.168.10.55 --netmask 255.255.255.0
--gateway 1array2.168.11.1 --nameserver 202.array6.134.133
多網絡卡的機器稍微複雜一點,本文就不介紹了。
第27行指明了系統驗證使用者的方式。本文用的是預設shadow密碼,md5 方式加密,這是最常見的方式。
第28行把自定義的防火牆關閉。因為安裝red hat時用的是ipchains 防火牆,因此筆者建議安裝以後採用iptables防火牆。
第30-33行是關於x-window的配置。意思是使用系統自動偵測的配置。linux一般都能正確地檢測到顯示卡和顯示器的型號。
第33行的意思是以gnome做為預設的視窗管理器,顏色為16位色,螢幕分辨為1024×768。如果在末尾加上「--startxonboot」,就是開機後x-window登陸。
第34 -37行指明了安裝時候選擇安裝的軟體。前面有個「@」符號代表一組rpm包,每組包將安裝的軟體列表,這樣軟體可以在red hat第一張安裝光碟中的redhat/base/comps 檔案中找到。如果乙個組都不指定,則會安裝redhat/base/comps檔案中的base組合,也就是最基本的一些rpm包,如sendmail 等。寫乙個@everything 則是完全安裝。第37行中有單獨安裝了lynx的rpm包。
第38-3array行的%pre表示安裝之前執行的命令。
第40-41行%post以後代表安裝之後將要執行的命令。第40行執行了乙個簡單的命令。
四、製作啟動光碟
將第三步中編輯完成的ks.cfg檔案複製到/tmp/iso/下面。
#vi anaconda-ks.cfg
#cp anconda-ks.cfg /tmp/iso/ks.cfg
#mkisofs -r -j -t -v -no-emul-boot -boot-load-size 4 \
-boot-info-table -v ksboot -b isolinux/isolinux.bin \
-c isolinux/boot.cat -o /ksboot.iso /tmp/iso
執行上面的命令後會在/下生成ksboot.iso,將這個檔案刻盤。
五、用ks光碟啟動安裝
當出現boot:時
輸入linux ks=cdrom:/ks.cfg它就會按照ks.cfg檔案指定方式安裝。
Linux的kickstart安裝詳解
linux的kickstart安裝詳解 一 什麼是kickstart?kickstart安裝是redhat開創的按照你設計好的方式全自動安裝系統的方式。安裝方式可以分為光碟 硬碟 和網路。此文將以網路安裝方式詳細介紹使用kickstart的安裝系統的方法。作業系統選用redflag dc5.0 sp...
利用kickstart快速安裝Linux
在學習linux的階段可能需要不斷地重新安裝linux,或者你是學校計算教室的管理人員,需要大量安裝相同硬體配置的計算機.由於在安裝過程中需要重複的選擇所要的軟體包以及設定系統環境,這時只要利用redhat linux所提供的kickstart設定程式,就可以快速地安裝linux 你是使用redha...
Kickstart的高階應用
pre 和postinstall 指令碼 kickstart本身提供了一些對系統的基本調整和設定,例如設定root密碼,設定時區等等。但是它不能做某些更細緻的調整,比如通過chkconfig禁止某些服務,建立特定的目錄等等。因此,我們需要使用pre 和postinstall指令碼來完成這些任務。很明...