2009年11月8日日曜日

KNOPPIX 6.0.1にScratch 1.4とEtoys 3.0を入れたISOイメージ作り

KNOPPIX 6.0.1をベースにした、ISOイメージ作りに挑戦してみました。
#「KNOPPIX HACKS(オライリー)」を参考にしました。

はじめに、用意したHDD(今回はUSB接続の40GB HDDを用意)をext3でフォーマットしてからルートに移動し、このHDD内に「source/KNOPPIX」というディレクトリを作成し、CD-ROMから起動したKNOPPIX 6.0.1の「/KNOPPIX/*」をコピーします。

# cp -Rp /KNOPPIX/* source/KNOPPIX

続けて、カスタマイズ作業の準備に入ります。まず、「/home/knoppix/」に入れておいて直接動かすScratchMyuRobo 1.4を、「source/KNOPPIX/home/knoppix」にコピーしました。合わせて、作業中に必要になるであろう「Desktop」「Documents」フォルダを「source/KNOPPIX/home/knoppix」内に作成し、Desktopフォルダには、ScratchMyuRobo 1.4を動かすシェルスクリプトをコピーしておきました。EtoysとScratchのdebパッケージとScratchの日本語版で使われるpoファイルは、「source/KNOPPIX/root」にコピーしておきました。

この後、chrootで「source/KNOPPIX」をルートとして起動し、カスタマイズ作業を開始します。はじめに、「mount -t proc /proc proc」とおまじないをかけます。(元の環境で作業をしたいときは、「umount /proc」をしてから「Control + D」でchrootを抜け出します。)次に、十分なディスク領域を確保するために、OpenOffice.org関連のファイルを削除することにしました。

# apt-get --purge remove openoffice.org-core
# apt-get --purge remove openoffice.org-common
# apt-get --purge remove openoffice.org-l10n-ja

※OOoを削除した後は、LXDEデスクトップマネージャーのタスクバーから、OOo関連の設定を削除する必要があります。「/home/knoppix/.config/lxpanel/LXDE/panels/panel」を開いてOOoに関する設定を削除しました。

次にEtoysScratchのdebパッケージを「dpkg -i」でインストールし、poファイルを「/usr/share/scratch/locale/」フォルダにコピーしました。仕上げに「# apt-get clean」でゴミを削除します。さらに細かなカスタマイズも可能ですが、KNOPPIXのカスタマイズは今回が初めての作業でもあり、早く動作実験をしたいこともあって、ここまででchrootでの作業を終了しました。

HDD内に「master」フォルダを作成し、ISOディスクイメージを作成するために、KNOPPIX CD-ROM内の/bootフォルダと/KNOPPIX/KNOPPIX以外の/KNOPPIXフォルダ以下のファイルをmasterフォルダにコピー(同期)します。

# rsync -a --exclude "/KNOPPIX/KNOPPIX" /mnt-system/ master/

続いて、source内に作ったKNOPPIXフォルダを圧縮イメージに変換します。恐ろしく長いコマンドを正確に打ち込む必要があるので、特に注意が必要です。

# mkisofs -R -U -V "〈任意の名前〉(filesystem)" -P "〈任意の名前〉" -hide-rr-moved -cache-inodes -no-bak -pad source/KNOPPIX | nice -5 /usr/bin/create_compressed_fs - 65536 > master/KNOPPIX/KNOPPIX

さらに、md5sumsのチェックサムリストを作るために、次のように打ち込みます。

[master]# find -type f -not -name md5sums -not -name boot.cat -exec md5sum {} \; >> KNOPPIX/md5sums

さて、いよいよISOイメージの作成です。このコマンドも長いので、正確に打ち込むよう注意が必要です。

# mkisofs -pad -l -r -J -v -V "KNOPPIX" -no-emul-boot -boot-load-size 4 -boot-info-table -b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat -hide-rr-moved -o knoppix.iso master/

これで、カスタマイズしたKNOPPIXのISOイメージが完成しました。CD-Rに焼いて動作確認しましたが、問題ありませんでした。時間はかかりますが、それほど難しくないところがありがたいです。これで、オープンソースを活用したコンピュータ制御(プログラミング)の学習環境が手軽に持ち運べるようになりました。

0 件のコメント: