制作适用于离线自动安装的 CentOS 7 iso 文件
概要
-
- タイトル通りの手順です。
- できあがった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