2011/04/08

使用 Kickstart 自動安裝 RHEL

The Red Hat Kickstart installation method is used primarily (but not exclusively) by the Red Hat Enterprise Linux operating system to automatically perform unattended operating system installation and configuration.

【製作 Kickstart 光碟】

事前准備:
Red Hat Enterprise Linux 安裝光碟
一些編寫好的 kickstart 檔案(例如:rhel5.cfg)
一台可以燒錄 ISO 檔的 Linux 主機

首先,把 Red Hat Enterprise Linux 安裝光碟放到 Linux 主機。
到裏面找到 /images 這個資料夾,復制裏面的 boot.iso 到 Linux 主機上。

使用以下指令把 boot.iso 挂載到 /opt/boot_iso:
sudo su -
mkdir -p /opt/boot_iso
mount -o loop -t iso9660 boot.iso /opt/boot_iso

復制 /opt/boot_iso 裏面的 isolinux 資料夾:
cd /opt/boot_iso
cp -R isolinux /opt/

復制編寫好的 kickstart 檔案到 isolinux 資料夾:
cp rhel5.cfg /opt/isolinux

將 isolinux 資料夾制作成可開機的 boot.iso:
cd /opt/isolinux
mkisofs -r -T -J -V "kickstart" -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -v -o /opt/kickstart.iso .

[注意!]
RHEL 5 跟 RHEL 6 的光碟檢查碼與架構都不一樣!
每個不同的版號都得使用不同版本的 boot.iso 來制作 kickstart 光碟!
簡單說:
RHEL 5.5 得使用它自己的 boot.iso 制作自己的 kickstart 光碟。
RHEL 5.6 得使用它自己的 boot.iso 制作自己的 kickstart 光碟。
雖然它們的 rhel5.cfg 檔案可以共用。
這跟光碟的檢查碼有關系。

將產生的 /opt/kickstart.iso 檔案燒錄成光碟。

使用該光碟開機後,在安裝的 shell prompt 中輸入指定的 kickstart 檔名:
> linux ks=cdrom://rhel5.cfg

當開機檔案與指定的 kickstart 讀取到記憶體之後,開始安裝時,可能會碰到以下訊息:
The Red Hat Enterprise Linux CD was not found in any of your CDROM drives.
Please insert the Red Hat Enterprise Linux CD and press OK to retry.

此時,把 kickstart 光碟拿出來,放入原始的 RHEL 安裝光碟,壓 Enter。
順利的話,RHEL 就會照指定的 kickstart 檔的設定安裝了。

Reference:
01. http://en.wikipedia.org/wiki/Kickstart_(Linux)
02. http://junktrap.naihl.net/doku.php?id=redhat:kickstartbootcd