VirtualBoxとCentOSでkickstartしてみた

こんにちは、河野です。

開発用の仮想環境構築のためpackerを試そうとしていたんですが、それ以前にkickstartのところで躓いてしまったのでした。

最初の設定ファイル

手動でインストールしたCentOS6.5の環境にあるanaconda-ks.cfgを利用します。

とりあえずこのファイルをhttpでアクセスできる場所に設置して、kickstartのオプションを指定して起動します。tabを押してから、ks=anaconda-ks.cfgのURL を入力します。

こんな感じです。

boot option

これでkickstart自体は上手く開始されたのですが、

1. パーティションの設定が必要
2. CentOSってRepoないと怒られる

という現象がおきました。

パーティションの設定

kickstartの設定で、パーティション設定をお任せにするオプションがあるので、コメントアウトされているパーティション設定部分を削除し、代わりに以下を追加しました。

リポジトリの設定

anaconda-ks.cfgには記載されていても、実際にはマウントされていないとか、そういう問題があるそうです。

CentOS • View topic - Kickstart install error - Cannot find a valid baseurl for repo: CentOS

Try removing the following line from your kickstart file:

repo --name="CentOS" --baseurl=cdrom:sr0 --cost=100

Anaconda should find the repodata without this line if the repodata is located on the CD that you just booted from.

削除してみたら?と書いてあったので、repoの行を削除しました。

変更後の設定

コメントも削除して、以下のようになりました。これでもう一度試してみます。

この設定でパッケージもインストールされ、一通りのセットアップが完了したのですが、最後に再起動を促す画面で止まってしまいました。

インストール後に再起動する

%packages の直前にrebootと追加しました。

他、気になったところの修正

network, fiewall, selinux の設定を修正しました。

再度変更した設定

以下のようになりました。

これで再度インストールしてみたところ、最後の再起動も自動で行われるようになりました。

セットアップできたのに上手く起動しない!!!

再起動後、また起動オプションの画面になったので、boot from local driveを選択します。

boot

すると、boot failureになってしまいました…

boot failure

boot failureの解決策

エラーメッセージでググったところ、以下のページを発見しました。
https://www.virtualbox.org/ticket/2680

回避策は2つあるようです。

1. VMの起動時にCentOSのisoファイルを、仮想ドライブから除去しておく
2. システムの起動順序を変えて、HDDをCD-ROMより優先しておく

とりあえず、isoファイルを仮想ドライブから除去したところ、問題なく起動しました!

と、あっさり書いていますが、このエラーが起きてから原因がわかるまで、kickstartの方でインストールが上手く行っていないんだと思い込んでいて、何度もanaconda-ks.cfgを書き換えたりして、数時間を無駄にしたのでした。

まとめ

エラーが起きたら、エラーメッセージでググりましょう。思い込み良くない。

Enjoy kickstart!


パーティションの設定画面で止まってしまう(2014/01/28 追記)

↑上の設定で最初は上手く行っていたのですが、環境によってはパーティション初期化の設定画面で止まってしまうことがありました。

色々とググってみたところ、zerombrという設定を追加することで解決できました。

[CentOS] unexpected 'reinitialize disk?' prompt form anaconda during kickstart with zerombr
16.13. ハードディスクの初期化

Comments are closed, but you can leave a trackback: Trackback URL.