Anda di halaman 1dari 13

PANDUAN REMASTERING

UBUNTU

OLEH
RULLY SATRI YUDHA
(ruleenux@gmail.com)

DAFTAR ISI

DAFTAR ISI............................................................................................................ii
1. TUJUAN REMASTERING.................................................................................1
2. KEBUTUHAN SISTEM:.....................................................................................1
3. PROSES...............................................................................................................1
4. EKSTRAK CD CONTENT.................................................................................2
5. MEMBUAT VIRTUAL IMAGE..........................................................................2
6. MENGEKSTRAK DESKTOP SISTEM..............................................................2
7. PERSIAPAN DAN CHROOT.............................................................................3
8. KOSTUMISASI...................................................................................................4
8.1. Apt-get..........................................................................................................4
8.2. Kostumisasi background..............................................................................4
8.3. Merubah nilai gconf (font, panel dll.)..........................................................4
8.4. Membuat beberapa perubahan gconf............................................................5
8.5. Merubah default bahasa pada gfxboot..........................................................5
8.6. Batasan kostumisasi......................................................................................6
9. KOSTUMISASI TINGKAT LANJUT.................................................................6
9.1. Live CD Kernel............................................................................................6
9.2. Boot init........................................................................................................6
9.3. Membuat Ulang initrd..................................................................................7
9.4. Lain-lain.......................................................................................................7
10. CLEANUP.........................................................................................................8
11. MENYATUKAN KE DALAM CD....................................................................9
11.1. Regenerate manifest...................................................................................9
11.2. Kompres filesystem....................................................................................9
11.3. Create Iso..................................................................................................10
12. TESTING CD...................................................................................................10

ii

13. BURNING IMAGE FILE KE CD...................................................................10


14. REFERENSI....................................................................................................10

iii

1. TUJUAN REMASTERING
Tujuan kostumisasi Ubuntu Desktop (live) CD yang diharapkan adalah :
1. Membuat linux/Ubuntu distribusi anda sendiri;
2. Menunjukkan kelebihan aplikasi didalamnya;
3. Menghapus paket aplikasi;
4. Menambahkan paket aplikasi;
5. Update paket aplik asi;
6. Mengubah default sistem Desktop (theme, icons, desktop background,
panels,halaman browser, dll).

2. KEBUTUHAN SISTEM:
1. Minimal 5-7 GB free space;
2. Minimal 512 MB RAM dan 1 GB swap (recommended);
3. Paket squashfs-tools;
4. Paket genisoimage, yang mendukung mkisofs;
5. Sebuah Ubuntu kernel dengan dukungan squashfs (Ubuntu 7.04 atau yang
terbaru);
6. QEMU/KVM, VirtualBox atau VMware untuk testing (optional).

3. PROSES
1. Pertama, pastikan anda sudah meng-install tool yang dibutuhkan;
$ sudo apt-get install squashfs-tools
2. contoh di sini menggunakan ubuntu-8.10-desktop-i386.iso
3. Move atau copy ke dalam sebuah direktori kosong;
$ mkdir project
$ mv ubuntu-8.10-desktop-i386.iso project/

$ cd project/
4. Buat direktori "cdrom", "temp", dan "work ".
$ mkdir cdrom temp work

4. EKSTRAK CD CONTENT
1. Mount file .iso ;
$ sudo mount -o loop ubuntu-8.10-desktop-i386.iso temp
2. Ekstrak isi .iso ke dalam direktori "cdrom";
$ sudo rsync -av temp/ cdrom/
3. ubah akses permission seluruh direktori;
$ sudo chmod 777 -R cdrom/
4. lakukan unmounting.
$ sudo umount temp

5. MEMBUAT VIRTUAL IMAGE


1. melakukan disk dump, untuk membuat image;
$ sudo dd if=/dev/zero of=livecdfs.ext2 bs=1M count=4000
2. Memformat image.
$ sudo mke2fs livecdfs.ext2

6. MENGEKSTRAK DESKTOP SISTEM


1. Mount squashfs filesystem;
$ mkdir squashfs
$ sudo mount -t squashfs -o loop cdrom/casper/filesystem.squashfs temp/
2. Mounting image virtual;

$ sudo mount -o loop livecdfs.ext2 work/


3. Meng-copy isi dari direktori temp ke dalam direktori "work ";
$ sudo cp -av temp/* work/
4. Unmounting direktori "temp".
$ sudo umount temp

7. PERSIAPAN DAN CHROOT


1. Jika anda membutuhkan koneksi jaringan dengan chroot;
$ sudo cp /etc/resolv.conf work/etc/
2. Tergantung pada konfigurasi, anda juga mungkin perlu untuk menyalin file
hosts;
$ sudo cp /etc/hosts work/etc/
$ sudo mount --bind /dev/ work/dev
$ sudo mount -t proc -o bind /proc work/proc/
3. Chroot kedalam direktori "work ;
$ sudo chroot work
4. Jalankan dalam mode Chroot;
# mount -t proc none /proc
# mount -t sysfs none /sys
(ini penting me-mounting direktori sistem host Anda - jika Anda kemudian
memutuskan untuk menghapus mengedit / direktori, maka pastikan untuk
unmount sebelum melakukan hal tersebut, jika Anda akan menjadi host
sistem akan tidak berguna setidaknya untuk sementara sampai reboot)
5. Untuk menghindari masalah-masalah lokal, impor GPG key
# export HOME=/root
# export LC_ALL=C

8. KOSTUMISASI
8.1. Apt-get
1. Untuk melihat paket instalasi berdasarkan ukurannya;
# dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -nr | less
2. Ketika anda ingin menghapus paket, ingatlah untuk selalu menggunakan opsi
"purge";
# apt-get remove --purge nama-paket

8.2. Kostumisasi background


Pada umumnya file background berada pada "/usr/share/backgrounds". Copy file
gambar anda kedalamnya, pilih owner dan file access, dan edit file berikut :
-

/usr/share/gnome-background-properties/ubuntu-wallpapers.xml

/usr/share/gconf/defaults/16_ubuntu-artwork

atau file yang lain didalam direktori yang sama. Dengan merubah string /usr/share
/backgrounds/warty-final-ubuntu.png langsung kedalam file anda. Terkadang juga
merubah atau menambahkan atribut kedalam file konfigurasi yang lain seperti :
"/var/lib/gconf/debian.defaults/%gconf-tree.xml
"/etc/gconf/gconf.xml.defaults /%gconf-tree.xml").

8.3. Merubah nilai gconf (font, panel dll.)


Untuk membuat perubahan pada atribut gconf anda harus menambahkan nilai
yang dapat anda tambahkan pada file "/etc/gconf/gconf.xml.defaults/%gconftree.xml". Tambahkan sebuah nilai dalam file tersebut akan merubah nilai default
dari Gnome atau aplikasi yang lain, jadi anda dapat merubah font, background,
themes, cursor, dll. Daripada anda merubah file dengan gedit atau text editor yang
lain, anda dapat menggunakan gconftool-2, dibawah lingkungan chroot, jalankan
baris perintah berikut :
$ gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults
4

--type string --set


Dimana string, key anda dan value anda harus diketik sesuai key dan value yang
anda ingin rubah..

8.4. Membuat beberapa perubahan gconf


Editing gconf dengan setting tiap value terpisah akan memakan banyak waktu.
Ada cara yang lebih mudah : Buatlah sebuah user "test" dan sesuaikan pengaturan
yang anda inginkan. Jalankan
$ gconftool-2 --dump /the/settings/branch/you/need > your-new-settings.xml
$ sudo chown root:root your-new-settings.xml
$ sudo mv your-new-settings.xml work/your-new-settings.xml
kemudian, di dalam chroot environment, jalankan perintah:
$ gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults
--load your-new-set
$ rm your-new-settings.xml
Dengan cara ini Anda dapat mengimpor seluruh cabang /apps/panel - semua
pengaturan untuk Gnome panels.

8.5. Merubah default bahasa pada gfxboot


Customisasi ini harus dilakukan di luar chroot.
$ sudo apt-get install dpkg-dev
$ sudo apt-get source gfxboot-theme-ubuntu gfxboot
$ cd gfxboot-theme-ubuntu*/
$ make DEFAULT_LANG=fi
$ sudo cp -af boot/* ../cdrom/isolinux/
Ubah "fi" kedalam pilihan locale anda. Catatan bahwa ini tidak mengubah bahasa
yang tersedia dalam menu F2. Untuk info lebih lanjut gfxboot tentang
customisasi, lihat Ubuntu Customization Kit. Sebuah cara lain untuk mengubah
standar bahasa gfxboot tanpa membuat ulang paket adalah membuat nama file
5

lang dalam direktori isolinux berisi nama lokal Anda.

8.6. Batasan kostumisasi


Setelah customisasi pastikan bahwa tidak ada user dengan UID >= 1000. Dengan
kata lain image anda tidak akan boot karena tiak ada initial. User tersedia (lihat
/usr/lib/user-setup/functions.sh dan /usr/lib/user-setup/user-setup-apply). Ketika
dalam lingkungan chroot:
# grep '^[^:]*:[^:]*:[1-9][0-9][0-9][0-9]:' /etc/passwd
# grep '^[^:]*:[^:]*:[12][0-9][0-9][0-9][0-9]:' /etc/passwd
Jika anda mendapatkan banyak UID >=1000, coba untuk merubah UID-nya :
# usermod -u 500 $hit

9. KOSTUMISASI TINGKAT LANJUT


9.1. Live CD Kernel
Jika anda ingin meng-customisasi proses boot, anda dapat merubah livecd kernel,
dengan meng-copy vmlinuz dan initrd anda tempatkan di tempat salah satu
direktori yang dapat anda cari di "cdrom/casper".
$ sudo cp work/boot/vmlinuz-2.6.15-26-k7 cdrom/casper/vmlinuz
$ sudo cp work/boot/initrd.img-2.6.15-26-k7 cdrom/casper/initrd.gz
nb: dalam hal ini memakai kernel 2.6.15-26-k7. Kernel yang anda gunakan bisa
saja berbeda dari kernel di atas.

9.2. Boot init


Anda harus meng-edit file edit/usr/share/initramfs-tools/scripts/casper-bottom/*
Sebagai contoh anda dapat merubah hostname atau livecd user.
$ sudo nano edit/usr/share/initramfs-tools/scripts/casper
6

dan edit username atau hostname


$ sudo nano edit/usr/share/initramfs-tools/scripts/casper-bottom/10adduser
untuk mengedit livecd user password Catatan : untuk memperoleh password yang
dienkripsi, Anda harus menggunakan program mk passwd yang dikirimkan
dengan paket whois!

9.3. Membuat Ulang initrd


Setelah anda sudah me-modifikasi kernel, init scripts atau menambahkan modul
kernel, anda perlu membuat ulang file initrd.gz dan replace file initrd.gz yang
berada dalam direktori casper.
$ sudo chroot work/
# mkinitramfs -o initrd.gz 2.6.27-11-generic
(gantikan versi kernel dengan satunya dimana CD akan boot - ini dapat ditemukan
dalam "work /lib/modules") Keluar dari lingkungan chroot dan pindahkan file ini
kedalam "cdrom/casper":
# exit
$ mv work/initrd.gz cdrom/casper/

9.4. Lain-lain
1. /etc/casper.conf
mengedit username, user fullname, host, build system
2. /etc/bash.bashrc
merubah wellcome message ke ID
3. /etc/issue dan issue.net dan motd.tail
merubah pesan Ubuntu 8.10 ... saat masuk terminal
4. /etc/modules
untuk meload modul kernel saat booting
5. /etc/skel
7

semua file/direktori di dalamnya akan dikopi ke homedir user


6. /etc/gnome/default.list
untuk merubah file dengan ekstensi apa di buka aplikasi apa
7. /etc/xdg/user-dirs.defaults
ganti untuk menentukan direktori apa saja yang dibuat di homedir
8. /etc/xdg/menus/*.menu
untuk membuat pengaturan kategori menu sendiri
9. /usr/share/backgrounds/
wallpaper default
10. /usr/share/firefox/browserconfig.properties
Merubah alamat default yg dibuka saat start, misalnya k e file:///usr
/example-content/readme.html atau http://ruleenux.com
11. /usr/share/gconf/default/* dan schemes/*
konfigurasi settingan desktop, menu, panel, dan lain-lain
12. /usr/share/ubuntu-artwork
tampilan awal firefox browser offline
13. /usr/share/example-content
direktori file-file example Ubuntu

10. CLEANUP
Pastikan untuk menghapus setiap file temporary yang tidak lagi diperlukan,
karena ruang CD terbatas. Sebuah contoh klasik download paket file, yang dapat
dibersihkan dengan menggunakan :
# apt-get clean
atau hapus temporary file
# rm -rf /tmp/*
atau pengaturan nameserver
# rm /etc/resolv.conf
sekarang unmount special filesystems dan keluar dari chroot
# umount /proc
8

# umount /sys
# exit
$ sudo umount work/dev

11. MENYATUKAN KE DALAM CD


11.1. Regenerate manifest
$ chmod +w cdrom/casper/filesystem.manifest
$ sudo chroot work dpkg-query -W --showformat='${Package} ${Version}\n' >
cdrom/casper/filesystem.mani
$ sudo cp cdrom/casper/filesystem.manifest cdrom/casper/filesystem.manifestdesktop
$ sudo sed -i '/ubiquity/d' cdrom/casper/filesystem.manifest-desktop

11.2. Kompres filesystem


$ sudo rm cdrom/casper/filesystem.squashfs
$ sudo mksquashfs work cdrom/casper/filesystem.squashfs -nolzma
Catatan : opsi -nolzma hanya tersedia mulai dari Ubuntu 8.04 Hardy Heron
Atur sebuah nama image didalam direktori cdrom/README.disk defines
$ sudo vim cdrom/README.diskdefines
Hapus md5sum.txt yang lama dan kalkulasi menjadi md5sums yang terbaru
$ sudo rm cdrom/md5sum.txt
$ cd cdrom
$ sudo find . -type f -print0 |xargs -0 md5sum |sudo tee md5sum.txt
$ cd ..

11.3. Create Iso


$ cd extract-cd
$ sudo mkisofs -D -r -V "ubuntu-8.10-desktop-i386-custom" -cache-inodes -J -l
-b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4
-boot-info-table -o ubuntu-8.10-desk top-i386-custom.iso

12. TESTING CD
Test menggunak an Qemu emulator
$ qemu -cdrom ubuntu-8.10-desktop-i386-custom.iso -boot d -m 512
Anda juga dapat testing mengganakan Virtualbox.

13. BURNING IMAGE FILE KE CD


$ cdrecord dev=/dev/cdrom ubuntu-8.10-desktop-i386-custom.iso

14. REFERENSI
https://help.ubuntu.com/community/LiveCDCustomization
http://linuxindo.web.id/2007/10/27/me-remaster-ubuntu-livecd/
http://ugos.ugm.ac.id/wiki

10