概要
- タイトル通りの手順です。
- できあがったisoファイルを使うと操作ゼロ(=ディスクブートしたあと、「完了しました!」の画面まで無操作)でOSをインストールできました。
資材
- CentOS-7-x86_64-Minimal-1511.iso
手順
キックスタートファイルを用意する
- 手動でCentOSをインストールする
-
/root/anaconda_ks.cfg
というファイルを回収しておく
- RHEL7ではキックスタートファイルをGUIで編集するツール(Kickstart Configurator)の使用は推奨されなくなったとのことなので、CentOS 7でも調整するなら上記のファイルを直接書き換えると良いと思います。
CentOSのisoファイルを展開する
mount -r /root/CentOS-7-x86_64-Minimal-1511.iso /mnt
mkdir -p /tmp/centos7/ks
cp -rp /mnt/* /tmp/centos7
キックスタートファイルを置く
ls -l /tmp/centos7/ks/anaconda-ks.cfg
自動インストールのメニューを追加する
-
ファイルを開く
vi /tmp/centos7/isolinux/isolinux.cfg
```
-
既存のメニューの定義から
menu default
を削除する -
以下の内容を追記する
label centos7auto
menu label ^Auto Install CentOS 7
menu default
kernel vmlinuz
append initrd=initrd.img inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 inst.ks=cdrom:/ks/anaconda-ks.cfg
```
- 同じファイル内の
label linux
の定義をベースにしました。 -
menu default
でこのメニュー項目を初期選択します。 -
inst.ks
でキックスタートファイルを読み込みます。 -
inst.stage2
で"CentOS 7 x86_64"というラベルのデバイスを指定しているため、isoファイルを作成する時は同じラベル名を設定する必要があります。なお、代わりにinst.stage2=cdrom
に書き換えても動きました。
自動インストール用のisoファイルを作成する
-
mkisofsを使えるようにする
yum -y install mkisofs
```
-
isoファイルを作成する
cd /tmp/centos7/
mkisofs -o ../CentOS-7-x86_64-Minimal-1511_Auto.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -T -V "CentOS 7 x86_64" ./
```
参考
-
Red Hat Enterprise Linux 7 インストールガイド
第23章 キックスタートを使ったインストール
https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/7/html/Installation_Guide/chap-kickstart-installations.html -
Red Hat Enterprise Linux 5 インストールガイド
2.4.2. インストールブート CD-ROM の作成
https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/5/html/Installation_Guide/s2-steps-make-cd.html