LiveCDを使っています。今回はこの便利なLiveCDイメージをカスタム化してみましたので記録しておきます。カスタムLiveCDは何がうれしいかというと、以下の通り。LiveCDをベースにしてカスタムイメージを作る、という方法はなかなか見つかりません(私は見つけられませんでした...)。私の場合、「LiveCDをベースにして追加のパッケージをインストールしたもの」を作りたかったのでいろいろと試してみました。以下のような感じです。[追加でインストールしたいパッケージ&設定]これを作るためには以下の物が必要です。作成は以下の手順で行います。追加パッケージRPMファイルまたはリポジトリの用意livecd-creatorを実行するinitramfsの落とし穴livecd-creatorは処理の途中で/boot/initramfs-2.6.32-rel.el6.x86_64.imgをisolinux/initrd0.imgにコピーします。foundエラーで処理が止まってしまいます。この問題を回避するためにinitramfsをインストールするRPMパッケージが必要になります。ファイルをコピーするなどの手段が使えないのは以下の理由によります。livecd-creatorはimgcreateモジュールを使用しますが、その中では以下の順で処理が実行されます。foundエラーが出るので、1.の%packageセクションでインストールするしかないのです(ベースイメージを使う場合%preセクションは実行されないようです)。3.0のUSBメモリからは起動できないようです(6.7では未確認)。initramfsを作成するRPMパッケージを用意するRPM自体にソースファイルを含まないポストインストール/ポストアンインストール時にスクリプトを実行するRPMパッケージを作成しました。このパッケージはインストール時の%postセクション(インストール後の処理)でdracutを用いてinitramfsを作成します。この処理は存在する全てのvmlinuzのバージョンに対して行われます。アンインストール時にはinitramfsを全て削除します。従って、実環境には絶対にインストールしないで下さい。LiveCDを作成する時のみに使用します。参考:ベースとしているdracut.conf。コマンドラインに記述しているので不要このlivecd-create-initramfsをKickstart設定ファイルに追加すればLiveCD作成プロセス中にinitramfsファイルが作成されます。上記のlivecd-create-initramfsパッケージなどをローカルに準備します。httpdを用意してもいいのですが、お手軽にローカルファイルシステム上に用意します。リポジトリを作成この場所が/home/dobuo/mylocalrepoとするとKickstartのrepo設定では以下のようになります。--baseurl=file:///home/dobuo/mylocalrepoローカルにファイルを用意すれば必要なパッケージを簡単に追加する事ができます。Kickstart設定ファイル続いてKickstartファイルを用意します。ベースイメージを使う場合は記述する内容に難しい点はありません。LiveCDを起動initramfsを作成するための環境としてLiveCDを起動します。以下の内容でファイル(livecd-dracut.conf)を作成します。