LiveCDとは、FreeBSDのFreeSBIE、Linuxでいえば、Knoppix, SlaxやCD-Plamoなど、ハードディスクに
インストールせずにCDブート媒体のみで使えるシステムのこと。
OpenBSDでこれをやってみた;
作成のポイント†
- 作成手順をスクリプト/Makefile化し、簡単にCDを作成できるようにする
- 現用のシステムなどになるべく手を加えずにCD化できるように工夫してみる。
Live CDの動く仕組み†
OpenBSDインストールディスクが使用している方法
→ rd (RAM Disk)デバイスをルートファイルシステムとしてマウントする
- ルートファイルシステムは、カーネル組込み
- CD-ROMはその下のサブディレクトリにマウントする
- 書き込み可能領域は、mfsにより確保。内容はCD-ROMからコピー
- CD-ROMおよびmfsをシンボリックリンクでつないでいき、最終的な運用状態のファイルツリーを完成させる。
Live CDを作成する手順の概要†
- rdデバイスをカーネルに組込み。起動時rdをルートファイルスシテムとしてマウントするカーネルを作成
- vnodeデバイス上に起動時にマウントされるファイルツリーのイメージを作成
- 作成したカーネルにファイルイメージをrdsetrootで組込み
- ベースとなるシステムの全ファイルツリーを作業用ディレクトリにコピー
- 作業用ディレクトリに作成したカーネルをコピー。OpenBSDの配布物からCD-ROMのブートローダをコピー。
- 作業用ファイルツリーをISOイメージに変換し、CD-Rに焼く。
成果物†