Ubuntu Live CD カスタマイズ

Knoppix のカスタマイズは何度かこなしているが、Ubuntu は未経験なので試してみた。

パッケージのカスタマイズだけなら cloop と squashfs くらいしか違いは無いはずだが、
こういうものは実際に手を動かしてみないと分からない。

という訳で、以下を参考に CD 作成。

http://www.linuxjournal.com/article/10038
http://www.linuxjournal.com/article/10076
http://www.linuxjournal.com/article/10099
How-To: Customize your Ubuntu Live CD - Debuntu

Ubuntu-ja-8.04.1-desktop Live CD (Hardy Heron) と VMware Player 2.0.5 を利用して ISO イメージを作成したので、
上記参照 URL とは少し手順が異なっている。

Ubuntu Desktop 日本語 Remixのダウンロード | Ubuntu Japanese Team
VMware Workstation Player | VMware

実際の手順は以下の通り。

まずカスタマイズするためにファイルを準備。
(Ubuntu Live CD で boot 後、/media/livecd に仮想ディスクをマウントしてある。)

00-$ cd /media/livecd

01-$ mkdir -p ./isomount ./isonew/squashfs ./isonew/cd ./isonew/custom

02-$ rsync --exclude=/casper/filesystem.squashfs -a /cdrom/ /isonew/cd

03-$ sudo mount -t squashfs -o loop /cdrom/casper/filesystem.squashfs ./isonew/squashfs/

04-$ sudo rsync -a ./isonew/squashfs/ ./isonew/custom

05-$ sudo cp /etc/resolv.conf /etc/hosts ./isonew/custom/etc/

Mick Bauer 風に言えば、ここから the Blue Pill。(the Matrix)

06-$ sudo chroot ./isonew/custom

07-# mount -t proc none /proc/

08-# mount -t sysfs none /sys/

09-# export HOME=/root

ここで必要なパッケージのカスタマイズを行う。

openoffice を削除すると ubuntu-desktop-ja や language-support-ja も消えるので注意。

マニアックに tor と privoxy を入れている。

10-# apt-get remove --purge `dpkg-query -W --showformat='${Package}\n'|grep openoffice`

11-# apt-get autoremove

12-# apt-get remove --purge `dpkg-query -W --showformat='${Package}\n'|grep gimp`

13-# apt-get update

14-# apt-get install tor privoxy

15-# apt-get dist-upgrade

16-# apt-get clean

後片付けをして the Red Pill を飲む。

17-# rm -rf /tmp/*

18-# umount /proc/

19-# umount /sys/

20-# exit

ISO イメージに固める。

21-$ chmod +w ./isonew/cd/casper/filesystem.manifest

22-$ sudo chroot ./isonew/custom dpkg-query -W --showformat='${Package}${Version}\n' > ./isonew/cd/casper/filesystem.manifest

23-$ sudo cp ./isonew/cd/casper/filesystem.manifest ./isonew/cd/casper/filesystem.manifest-desktop

24-$ sudo apt-get update

25-$ sudo apt-get install squashfs-tools

26-$ sudo mksquashfs ./isonew/custom ./isonew/cd/casper/filesystem.squashfs -noappend

27-$ sudo rm ./isonew/cd/md5sum.txt

28-$ sudo -s

29-# cd ./isonew/cd

30-# find . -type f -print0 | xargs -0 md5sum > md5sum.txt

31-# exit

32-$ cd ./isonew/cd

33-$ sudo mkisofs -r -V "Ubuntu-Live-PrivateSurf" -b
↪isolinux/isolinux.bin -c isolinux/boot.cat -cache-inodes -J -l
↪-no-emul-boot -boot-load-size 4 -boot-info-table -o
↪~/Ubuntu-Live-8.04-PrivateSurf.iso .