• Tidak ada hasil yang ditemukan

PRAKTIKUM SISTEM OPERASI : PANDUAN REMASTERING UBUNTU DENGAN SQUASHFS-TOOLS

N/A
N/A
Protected

Academic year: 2021

Membagikan "PRAKTIKUM SISTEM OPERASI : PANDUAN REMASTERING UBUNTU DENGAN SQUASHFS-TOOLS"

Copied!
9
0
0

Teks penuh

(1)

PRAKTIKUM SISTEM OPERASI : PANDUAN

REMASTERING UBUNTU DENGAN SQUASHFS-TOOLS

Rully Satri Yudha 1, M. Agung Nugroho, S. Kom 2

STMIK AMIKOM YOGYAKARTA

Jl. Ringroad Utara, Condong catur, Depok, Sleman, Yogyakarta

ruleenux@gmail.com1, m.agung@amikom.ac.id2

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 aplikasi;

6. Mengubah default sistem Desktop (theme, icons, desktop background, panels,halaman browser, dll).

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).

(2)

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 

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 

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 

MENGEKSTRAK DESKTOP SISTEM

1. Mount squashfs filesystem;

$ mkdir squashfs 

(3)

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 

PERSIAPAN DAN CHROOT

1. 1. Jika anda membutuhkan koneksi jaringan dengan chroot;

$ sudo cp /etc/resolv.conf work/etc/ 

2. 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

(4)

KOSTUMISASI

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 

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"). 

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/%gconf- tree.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 ­­type string ­­set 

(5)

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.

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 lang dalam direktori isolinux berisi nama lokal Anda.

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:

(6)

# 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 

KOSTUMISASI TINGKAT LANJUT

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 

Catatan: dalam hal ini memakai kernel 2.6.15-26-k7. Kernel yang anda gunakan bisa saja berbeda dari kernel di atas.

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 

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!

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 

(7)

/lib/modules") Keluar dari lingkungan chroot dan pindahkan file ini kedalam "cdrom/casper":

# exit 

$ mv work/initrd.gz cdrom/casper/ 

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

3. /etc/modules, untuk meload modul kernel saat booting

4. /etc/skel, semua file/direktori di dalamnya akan dikopi ke homedir user

5. /etc/gnome/default.list, untuk merubah file dengan ekstensi apa di buka aplikasi apa

6. /etc/xdg/user-dirs.defaults, ganti untuk menentukan direktori apa saja yang dibuat di homedir 7. /etc/xdg/menus/*.menu, untuk membuat pengaturan kategori menu sendiri

8. /usr/share/backgrounds/, wallpaper default

9. /usr/share/firefox/browserconfig.properties, Merubah alamat default yg dibuka saat start, misalnya ke "file:///usr/example-content/readme.html" atau "http://ruleenux.com"

10. /usr/share/gconf/default/* dan schemes/*, konfigurasi settingan desktop, menu, panel, dan lain-lain

11. /usr/share/ubuntu-artwork, tampilan awal firefox browser offline 12. /usr/share/example-content, direktori file-file example Ubuntu

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/* 

(8)

# rm /etc/resolv.conf 

sekarang unmount special filesystems dan keluar dari chroot

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

MENYATUKAN KE DALAM CD

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.manifest­desktop  $ sudo sed ­i '/ubiquity/d' cdrom/casper/filesystem.manifest­desktop 

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 ..

Create Iso

$ cd extract­cd 

(9)

$ 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 

TESTING CD

Test menggunakan Qemu emulator

$ qemu ­cdrom ubuntu­8.10­desktop­i386­custom.iso ­boot d ­m 512 

Anda juga dapat testing mengganakan Virtualbox.

BURNING IMAGE FILE KE CD

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

REFERENSI

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

Referensi

Dokumen terkait

Pada perintah diatas dibuat link z dari halo.txt, jadi kita membuat file dengan nama halo.txt yang berisi hallo apa kabar, lalu dilihat pada home, apa saja direktori yang

setiap terminal ketik pwd dan tekan Enter untuk melihat bahwa Anda sedang berada pada direktori /root.. Pada terminal keempat, ketik top dan

Karena semua file UNIX berada pada satu pohon direktori, operasi mount akan terlihat seperti isi dari sub direktory yang ada pada sistem file yang sudah dilakukan mounting.

rmmod < module - name> : Perintah ini adalah untuk menghapus modul dari kernel modprobe < module - name> : Ini bekerja sama dengan insmod tetapi menggunakan '

Symbolic Link diperlukan bila file tersebut di “link” dengan direktori /file yang berada pada partisi yang berbeda. Tipe file menjadi l (link) dan file tersebut menunjuk ke