Ubuntu Customization Kit
ubuntu linux の Live CD をカスタマイズして、使いたいソフトウェアがインストールされた状態のブータブルな環境(CD/DVD/USBメモリ)を作ることができる。
- 参考までに Knoppix のリマスタリング http://d.hatena.ne.jp/nishimotz/20081005/1223171735
JA remix にちょっとでもパッケージを追加すると 700MB を越えてしまい、CD に収まらなくなるので、DVD or USB が現実的。。
Ubuntu 9.04 JA をカスタマイズ&リマスターした USB メモリでライブ環境を起動し、さらにハードディスクへのインストールが可能。だが頻繁に失敗しているのでお勧めできない。何かコツがあるのかも。。
作業環境の準備
$ sudo aptitude install bzr gfxboot squashfs-tools
以下の手順でカレントに uck ディレクトリを作る。
~/tmp に巨大な作業ファイルを作ろうとする。 十分に空き容量のあるパーティションを使う(あるいはシンボリックリンクで対応する)べき。
$ svn export https://uck.svn.sourceforge.net/svnroot/uck/trunk/uck $ cd uck
uck-gui がある。
リマスタリング
- dual core の両方がフルに使用される重い処理。できるだけ高性能のマシンで行うことが望ましい。
Ubuntu Linux 9.04 JA remix を使用。
試行錯誤に時間がかかるので、パッケージ選択をしないでまず全体を通して実行できることを確認するのがよさそう。
やり直すときは、その前に ~/tmp を掃除する
$ cd ~/tmp $ sudo rm -rf build.log customization-scripts remaster-apt-cache
<code>
rm: ディレクトリ`remaster-root/tmp/.X11-unix'を削除できません: Device or resource busy
となる場合は
$ sudo mv remaster-root /tmp
などしてごまかす
</code>
さきほど svn で取ってきたプログラム。
$ ./uck-gui
最初のダイアログ
* 1. about 5 GB of free disk space in /home/nishi/tmp
* 2. Internet access for fetching language packs
* 3. apt-source line "deb-src http://archive.ubuntu.com/ubuntu/ jaunty main" enabled (necessary for bootlogo building)
手順
- 言語環境とデスクトップ環境を選ぶ。
- language pack : en ja
- language : ja
- desktop : gnome
- iso image を選ぶ。ここでは ubuntu-ja-9.04-desktop-i386-20090510.iso
- タイトルをつける
- do you want to customize the CD manually ときかれるので yes
- windows 関連ファイル wibi などを消すか、ときかれるので no (wubiが不要ならyes?)
- ready to build ダイアログがでて、コンソールにもどって作業が進む。とても重い。
- やがてダイアログ。console 作業を選ぶ
- 黒い画面 = chroot された環境でコンソールが開く
- Running console application /usr/bin/gnome-terminal failed, trying the fallback xterm
- UTF-8 環境で使えば問題ないのかも。。
けずれそうなもの
# apt-get remove openoffice.org-common # ubuntu-docs # gnome-games gnome-games-data gnome-cards-data # gimp gimp-data evolution-common
- vi /etc/apt/sources.list でコメントアウトされている apt line を復活させる
- そうしないと libstdc++5 などを入れられない
- apt-get update
- 必要なパッケージの導入 apt-get install hogehoge
- 場合によっては容量節約 apt-get remove openoffice.org-core
- 自分で作ったパッケージ
- scp でトラブルが発生した
- http サーバに置いて、chroot 環境から wget して取得。
- 例:実際にこんなふうにスクリプトを wget して作業
# cd /tmp # aptitude install -y ruby # wget -O setup.rb http://sourceforge.jp/cvs/view/galatea/galatea-dialog-studio/files/misc/setup_ubuntu_linux.rb?revision=HEAD # ruby setup.rb password
- console を exit して continue building する。
bzr がないと怒られて失敗。
to be continued..
- 動いている。Running ISO customization script /home/nishi/tmp/customization-scripts/customize_iso…
「make: mkbootmsg: コマンドが見つかりませんでした」
失敗。gfxboot というパッケージに入っているらしい。
失敗。mksquashfs がない。
<code>
ls: /home/nishi/tmp/remaster-root/boot/vmlinuz*にアクセスできません: No such file or directory
</code>
と出てくるが、問題なさそう。
最後に下記のダイアログ:
Building was successful! You can find your live CD in: /home/nishi/tmp/remaster-new-files/livecd.iso If you have installed the \"qemu\" package, you can test the image by doing: qemu -cdrom /home/nishi/tmp/remaster-new-files/livecd.iso -boot d -m 256
このイメージは Brasero を使って DVD-ROM に焼くことが可能。
「USBスタートアップディスクの作成」で試してみる
~/tmp/remaster-new-files/livecd.iso
livecd.iso を 2GB の USB メモリに書き込んでみる。
完成したメモリで PC をブート。ライブ環境で使ってみる。
もともと ubuntu desktop CD には ruby が入っていないので、 カスタマイズのときに apt-get install ruby してあった。
リマスタリングした環境で、無事に「端末」から ruby -v が動くことを確認できた。
qemu を試す
成功していない。
$ sudo apt-get install qemu $ qemu -cdrom /home/nishi/tmp/remaster-new-files/livecd.iso -boot d -m 256 Could not open '/dev/kqemu' - QEMU acceleration layer not activated: No such file or directory
$ sudo apt-get install kqemu-common kqemu-source $ qemu -cdrom /home/nishi/tmp/remaster-new-files/livecd.iso -boot d -m 256 Could not open '/dev/kqemu' - QEMU acceleration layer not activated: Permission denied $ sudo qemu -cdrom /home/nishi/tmp/remaster-new-files/livecd.iso -boot d -m 256
いずれにしてもブートが先に進まない。仮想マシンの中でキーを押すと下記のエラー。
unknown keycodes `evdev(jp106)_aliases(qwerty)', please report to qemu-devel@nongnu.org
この方法での動作検証には成功していない。