独自にカスタマイズしたUbuntu Live CDを作成する

ここでGhacksについて、さまざまなタイプのLinux CDを作成できるいくつかのツールについて述べました。これらのツールのほとんどを使用すると、現在動作しているディストリビューションのイメージであるLive CDを作成したり、特別なパッケージを含むLive CDを作成したりできます。しかし、これまでのところ、これらのツールを使用して、Live CDで実際にカスタマイズすることはできません。デスクトップの背景やその他の構成オプションを指定することはできません。これらは、カスタマイズされたLive CDを作成するのに役立つ作業です。

この記事では、ダウンロードしたUbuntu 9.10 isoイメージを取得してマウントし、カスタマイズして、新しくカスタマイズしたイメージからLive CDを再構築する方法を紹介します。このプロセスには時間がかかる場合がありますが、それだけの価値があります。このプロセス全体はコマンドラインから実行されるため、指で入力する準備をします。

最初に必要になるのは、最近のリリースのISOイメージです。に飛び乗る UbuntuのWebサイト 9.10の新しいコピーをダウンロードします。これが完了すると、作業を開始する準備が整います。

カスタマイズを続ける前に、必要になるいくつかのツールをインストールする必要があります。コマンドラインから次のコマンドを発行します。

sudo aptitude install squashfs-tools genisoimage

次に、ISOイメージの操作に使用する空のディレクトリを作成します。これをユーザーのホームディレクトリに作成してみましょう。次のコマンドを発行します。

mkdir〜/ LIVECD

新しくダウンロードしたisoイメージを新しいディレクトリに移動して、作業の準備をします。

最初に行うことは、コマンドを使用してISOイメージをマウントすることです。イメージをマウントするサブディレクトリを作成する必要があるため、次のコマンドを発行します。

mkdir〜/ LIVECD / mount

次のコマンドでisoをマウントします。

sudoマウント-oループubuntu-9.10-desktop-i386.iso〜/ LIVECD / mount /

次に、〜/ LIVECD / mountの内容を抽出するさらに別のディレクトリを作成する必要があります。次のコマンドを発行します。

mkdir〜/ LIVECD / extract-cd

そして、次のコマンドで抽出します:

rsync --exclude = / casper / filesystem.squashfs -a mnt / extract-cd

次のコマンドでsquashfsファイルシステムを抽出します。

sudo unsquashfs mount / casper / filesystem.squashfs

sudo mv squashfs-root編集

上記の2つのコマンドの前者は、しばらく時間がかかります。それは正常です。
このシステムでネットワークアクセスが必要な場合(そしておそらく必要になる場合)は、 /etc/resolv.conf 適切なDNSアドレスが含まれているファイル。これを行うには、現在の作業をコピーするだけです resolve.conf にファイル 〜/ LIVECD / edit / etc 次のコマンドを使用したディレクトリ:

sudo cp /etc/resolve.conf〜/ LIVECD / edit / etc /

次に、システムにいくつかの重要なディレクトリをマウントします。

sudoマウント--bind / dev / edit / dev
sudo chroot編集
mount -t proc none / proc
mount -t sysfs none / sys
mount -t devpts none / dev / pts

これらのディレクトリをアンマウントすることは後で非常に重要になります。

次に、ロケールの問題を回避し、GPGキーをインポートできるようにする(必要な場合)コマンドを発行します。

HOME = / rootをエクスポート

LC_ALL = Cをエクスポート

次のコマンドを使用して、マウントされたISOにインストールされているすべてのパッケージを表示できます。

dpkg-query -W --showformat = '$ {Package} n' |ソート-nr |もっと少なく

次のコマンドを使用して、そのリストを確認し、Live CDから不要なパッケージを削除できます。

aptitudeの削除PACKAGE_NAME

どこ パッケージ名 削除するパッケージの名前です。その後、次のコマンドを発行して、Live CDに新しいパッケージをインストールできます。

aptitudeインストールPACKAGE_NAME

どこ パッケージ名 インストールするパッケージの名前です。

デスクトップの背景画像はどうですか?はい、これもカスタマイズできます。ファイルを見ると /usr/share/gnome-background-properties/ubuntu-wallpapers.xml デフォルトの背景が設定されている場所が表示されます。そのファイルを編集できますが、使用する.pngファイルが次の場所にあることを確認する必要があります / usr / share / gconf / defaults / 16_ubuntu-wallpapers

編集することもできます /etc/gconf/gconf.xml.defaults/%gconf-tree.xml そのファイル内で追加のカスタマイズ変更(フォント、色、パネルオプションなど)を行うファイル。このファイルは、新しいデフォルト値を追加する空のファイルであることを理解してください。 gconftoolを使用してこれらの値を編集するだけの場合は、次のようなコマンドで編集できます。

gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type string --set KEY 'VALUE'

ここで、KEYは変更するキーで、VALUEはキーに設定する値です。

ここで行うことができる他の可能な構成がたくさんあります。しかし、この記事の範囲については、私たちが持っているものでそれを残します。

次のコマンドを使用して、パッケージのインストールから残っている可能性のある一時ファイルを必ず削除してください。

きれいな適性

次のコマンドで追加した/etc/resolv.confファイルを削除することもできます。

rm /etc/resolv.conf

ディレクトリをアンマウントする時間:

umount / proc
umount / sys
umount / dev / pts
出口
sudo umount編集/開発

すべてを元に戻す

今こそ、すべてをつなぎ合わせる時です。まず、マニフェストを再生成する必要があります。

chmod + w抽出-cd / casper / filesystem.manifest
sudo chroot edit dpkg-query -W --showformat = '$ {Package} $ {Version} n'> extract-cd / casper / filesystem.manifest
sudo cp extract-cd / casper / filesystem.manifest extract-cd / casper / filesystem.manifest-desktop
sudo sed -i '/ ubiquity / d' extract-cd / casper / filesystem.manifest-desktop
sudo sed -i '/ casper / d' extract-cd / casper / filesystem.manifest-desktop

次に、ファイルシステムを圧縮します。

sudo rm extract-cd / casper / filesystem.squashfs
sudo mksquashfs edit extract-cd / casper / filesystem.squashfs

上記のコマンドには時間がかかります。

〜/ LIVECD / extract-cd / README.diskdefinesファイルを開いて、必要な変更を加えます。

次のステップでは、古いmd5の合計を削除し、新しい合計を計算する必要があります。これを行うには、次のコマンドを使用します。

CD抽出CD
sudo rm md5sum.txt
find -type f -print0 | xargs -0 md5sum | grep -v isolinux / boot.cat | sudo tee md5sum.txt

次に、ISOイメージを作成します。次のコマンドでそれを行います:

sudo mkisofs -D -r -V '$ IMAGE_NAME' -cache-inodes -J -l -b isolinux / isolinux.bin -c isolinux / boot.cat -no-emul-boot -boot-load-size 4 -boot- info-table -o ../ubuntu-9.04.1-desktop-i386-custom.iso。

これで、〜/ LIVECDディレクトリに、新しいISOがディスクに書き込まれて使用できるようになります。

おめでとうございます。これで、独自にカスタマイズしたUbuntu Live CDが作成されました。