Suatu ketika saya ingin bikin ubuntu yang sudah terinstall aplikasi-aplikasi tertentu saja saat digunakan melalui LiveCD ataupun sudah terinstall, untuk sistem operasi yang saya gunakan untuk melakukan remastering adalah Ubuntu 10.10 (Maverick Meerkat) versi netbook, dan yang saya remastering adalah Ubuntu 10.04 LTS (Lucid Lynx). Untuk persiapan, sediakan ISO ubuntu 10.04 terlebih dahulu.

Untuk remastering ada beberapa cara, yang pertama menggunakan UCK berbasis GUI/Desktop, di Ubuntu 10.10 ini saya menginstall UCK versi 2.4, akan tetapi setiap kali saya melakukan remastering menggunakan UCK tersebut, selalu saja gagal karena bermasalah dengan gfxboot :( . Akhirnya saya menyerah dan melakukan remastering secara manual lewat terminal/console.

Langkah-langkah remastering saya tulis dibawah ini:

Install tool-tool yang diperlukan:

user@user-netbook:~$sudo aptitude install squashfs-tools genisoimage

Bikin direktori livecdtmp/ untuk melakukan remastering

user@user-netbook:~$mkdir ~/livecdtmp

Pindahkan ISO Ubuntu 10.04 yang akan di remastering ke dalam folder livecdtmp/, kemudian masuk ke folder livecdtmp/:

user@user-netbook:~$cd ~/livecdtmp

Bikin folder mnt/ di dalam folder livecdtmp/ lalu mounting iso tersebut ke dalam folder mnt/:

user@user-netbook:~$mkdir mnt

user@user-netbook:~$sudo mount -o loop ubuntu-10.04-desktop-i386.iso mnt

Bikin lagi folder extract-cd/ di dalam folder livecdtmp/ lalu ekstrak isi ISO tersebut ke dalam folder extract-cd/

user@user-netbook:~$mkdir extract-cd

user@user-netbook:~$sudo rsync – - exclude=/casper/filesystem.squashfs -a mnt/ extract-cd

Ekstrak SquashFS system lalu ubah nama folder squashfs-root/ menjadi edit/

user@user-netbook:~$sudo unsquashfs mnt/casper/filesystem.squashfs

user@user-netbook:~$sudo mv squashfs-root edit

Sebelum melakukan chroot, apabila PC/Netbook yang anda gunakan untuk remastering terkoneksi internet, kopi dulu konfigurasi nya ke dalam hasil ekstraksi ISO dengan perintah-perintah di bawah:

user@user-netbook:~$sudo cp /etc/resolv.conf edit/etc/

user@user-netbook:~$sudo cp /etc/hosts edit/etc/

user@user-netbook:~$sudo mount –bind /dev/ edit/dev

Kemudian lakukan chroot untuk mulai melakukan kostumisasi aplikasi-aplikasi yang terinstall

user@user-netbook:~$sudo chroot edit

root@user-netbook:~#mount -t proc none /proc

root@user-netbook:~#mount -t sysfs none /sys

root@user-netbook:~#mount -t devpts none /dev/pts

root@user-netbook:~#export HOME=/root

root@user-netbook:~#export LC_ALL=C

root@user-netbook:~#dbus-uuidgen > /var/lib/dbus/machine-id

root@user-netbook:~#dpkg-divert – - local – - rename – - add /sbin/initctl

root@user-netbook:~#ln -s /bin/true /sbin/initctl

root@user-netbook:~#apt-get update

Setelah konfigurasi diatas dilakukan, sekarang saatnya melakukan kostumisasi aplikasi yang ingin diinstall dan dibuang, untuk melihat apa saja aplikasi yang diinstall, bisa melakukan perintah:

root@user-netbook:~#dpkg -l

Untuk melakukan instalasi dengan melakukan perintah:

root@user-netbook:~#apt-get install nama_aplikasi

Untuk melakukan penghapusan aplikasi yang tidak diperlukan bisa menggunakan perintah:

root@user-netbook:~#dpkg -P nama_aplikasi

Setelah selesai melakukan kostumisasi aplikasi, maka langkah selanjutnya adalah CleanUp hasil installer dan temporary file saat persiapan melakukan chroot (termasuk melakukan unmounting):

root@user-netbook:~#apt-get clean

root@user-netbook:~#rm -rf /tmp/* ~/.bash_history

root@user-netbook:~#rm /etc/resolv.conf

root@user-netbook:~#rm /var/lib/dbus/machine-id

root@user-netbook:~#rm /sbin/initctl

root@user-netbook:~#dpkg-divert  - – rename  - – remove /sbin/initctl

root@user-netbook:~#umount /proc

root@user-netbook:~#umount /sys

root@user-netbook:~#umount /dev/pts

Keluar dari mode chroot dengan perintah dibawah, dan lakukan unmounting folder dev/:

root@user-netbook:~#exit

user@user-netbook:~$sudo umount edit/dev

Setelah itu, saatnya melakukan penyusunan ISO dengan perintah-perintah dibawah:

user@user-netbook:~$chmod +w extract-cd/casper/filesystem.manifest

user@user-netbook:~$sudo chroot edit dpkg-query -W – - showformat=’${Package} ${Version}\n’ > extract-cd/casper/filesystem.manifest

user@user-netbook:~$sudo cp extract-cd/casper/filesystem.manifest extract-cd/casper/filesystem.manifest-desktop

user@user-netbook:~$sudo sed -i ‘/ubiquity/d’ extract-cd/casper/filesystem.manifest-desktop

user@user-netbook:~$sudo sed -i ‘/casper/d’ extract-cd/casper/filesystem.manifest-desktop

Kompressi filesystem sebelum dibuat ISO dengan perintah dibawah:

user@user-netbook:~$sudo rm extract-cd/casper/filesystem.squashfs

user@user-netbook:~$sudo mksquashfs edit extract-cd/casper/filesystem.squashfs

Set nama image di dalam README dengan perintah dibawah:

user@user-netbook:~$sudo vim extract-cd/README.diskdefines

Masuk ke folder extract-cd lalu hapus md5sum yang lama dan kalkukasi md5sum yang baru dengan perintah dibawah:

user@user-netbook:~$cd extract-cd

user@user-netbook:~$sudo rm md5sum.txt

user@user-netbook:~$find -type f -print0 | sudo xargs -0 md5sum | grep -v isolinux/boot.cat | sudo tee md5sum.txt

Kemudian bikin file ISO dengan perintah dibawah:

user@user-netbook:~$sudo mkisofs -o Ubuntu-10.04-Custom.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -r -V “Ubuntu Custom LiveCD” -cache-inodes -J -l ../extract-cd/

Finish, dan hasilnya bisa dicoba lewat Virtual Box, kalo lancar berarti anda sudah benar melakukan remastering, mudah bukan?
Semoga membantu dan terima kasih sudah berkunjung.

Referensi: