Ubuntu Weekly Recipe

第114回 Debian Liveのlive-helperを使ってUbuntu Liveを作成する (2)

この記事を読むのに必要な時間:およそ 5.5 分

前回最小のUbuntuライブCDを作りましたが,最後に「出来上がったライブCDを起動して『あれっ!?』と思った方もいるかもしれません。」と書きました。おそらくこの画面を見て「あれっ!?」と思ったのではないかと思います。

図1 Ubuntu Liveの起動画面

図1 Ubuntu Liveの起動画面

Ubuntu LiveなのにDebianの画面ですね。live-helperを使ったUbuntu Live作成の2回目はlive-helperのカスタマイズについて解説します。

live-helperカスタマイズの基礎知識

カスタマイズの解説の前にlive-helperの基礎知識を説明してから,カスタマイズの解説に入ります。

live-helperの設定はlh_configコマンドにオプションを与えておこないます。オプションの一覧は--helpオプションで見られますが,非常に長いのでlvなどのページャを通して見るとよいでしょう。

 $ lh_config --help 

lh_configは,初めて実行するとconfigディレクトリを作成して,その中に全体設定のcommonと,bootstrap,chroot,binary,sourceという設定ファイルを作ります。

ライブシステムを構築するlh_buildコマンドは内部で,ベースシステムのインストール(lh_bootstrap)→ベースシステムにchrootして必要なソフトのインストールと設定(lh_chroot)→作成したシステムを一つにまとめ起動可能なバイナリファイルの作成(lh_binary)→ソースアーカイブの作成(lh_source)の4つの段階を経てライブシステムを構築します。bootstrap,chroot,binary,source,4つの設定ファイルはそれぞれの段階に対応しています。設定ファイルはテキストで書かれていますが,lh_configコマンドで自動的に更新されるので,手動で編集してはいけません。

configディレクトリには設定ファイル以外に「chroot_」「binary_」とプリフィクスのついたディレクトリがあります。ここにはlh_chrootとlh_binary実行時に使うファイルを置きます。

他にincludesとtemplatesというディレクトリがありますが,inculedeにはライブシステムのバイナリイメージに含めるドキュメントなどのファイルを置き,templatesにはブートローダーのテンプレートを置きます。includesとtemplatesディレクトリについては,システムが使用しているファイルが/usr/share/live-helper/ディレクトリにあるので参考にしてください。

ライブシステムをカスタマイズをする

それでは場面別にライブシステムカスタマイズの解説をします。

Ubuntuモードとリリースの設定

live-helperのモード初期設定はDebianなので,Ubuntuライブシステムを作成するにはubuntuと設定します。

 $ lh_config --mode "ubuntu"

作成するディストリビューションのリリースは,初期設定では使っているディストリビューションのリリースが使われます。他のリリースのライブシステムを作る場合は変更します。

 $ lh_config --distribution "Karmic"

ミラーサイトとパッケージセクションの設定

パッケージを取得するミラーサイトを指定します。初期設定ではarchive.ubuntu.comに設定されているので日本のサイトを指定します。bootstrap,chroot,binaryそれぞれの設定をします。

 $ lh_config --mirror-bootstrap "http://jp.archive.ubuntu.com/ubuntu/"
 $ lh_config --mirror-chroot "http://jp.archive.ubuntu.com/ubuntu/"
 $ lh_config --mirror-chroot-security "http://security.ubuntu.com/ubuntu/"
 $ lh_config --mirror-binary "http://jp.archive.ubuntu.com/ubuntu/"
 $ lh_config --mirror-binary-security "http://security.ubuntu.com/ubuntu/"

パッケージのセクションは初期設定では自由に再配布ができるmainとuniverseが設定されます。例ではrestrictedとmultiverseも指定していますが,作成したライブシステムの再配布を考えている場合は使用するパッケージの制限を確認しましょう。

 $ lh_config --categories "main restricted universe multiverse"

パッケージのインストール

パッケージのインストールはlh_configの--packagesオプションを使います。パッケージが複数ある場合はパッケージ名をスペースで区切って列挙します。

 $ lh_config --packages "パッケージ名 …"

インストールするパッケージが多い場合は,パッケージ名を列挙したファイルをconfig/chroot_local-packageslists/ディレクトリに置いておくと自動的にインストールされます。パッケージリストの書き方は,/usr/share/live-helper/listsにあるリストを参考にしてください。

--tasksオプションを使うとタスクを指定して一度にパッケージをインストールできます。タスク名も列挙できます。

 $ lh_config --tasks "タスク名 …"

タスク名はtaskselコマンドで調べられます。

 $ tasksel --list-tasks

次のようにタスクを指定するとUbuntuインストールCDと同じパッケージ構成のライブシステムが作成できます。

 $ lh_config --tasks "ubuntu-desktop ubuntu-live"

著者プロフィール

のがたじゅん

Debian JP Projectメンバー。普段は関西Debian勉強会やDebian Liveで活動中。いくやさんの紹介により今回ゲスト参加。

コメント

コメントの記入