Costumisasi Distro Linux Ubuntu Desktop

Costumisasi Distro Linux Ubuntu Desktop

Customisasi atau dikenal dengan istilah remaster adalah sebuah teknik untuk mengubah, menambahkan, dan mengurangi paket dan aplikasi yang terdapat pada suatu Sistem Operasi, sedangkan metode remaster yang digunakan adalah dengan mengedit filesystem.squashfs yang terdapat pada iso CD/DVD Linux. Tujuan customisasi 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, panel,halaman browser, dll).

Kebutuhan Sistem :

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

Proses

  1. Pertama, pastikan Anda sudah meng-install tool yang di butuhkan;

    $ sudo apt-get install squashfs-tools
  2. Download official Desktop CD dari http://repo.ugm.ac.id/iso/ubuntu, contoh di sini menggunakan ubuntu-8.04.1-desktop-i386.iso
  3. Pindahkan atau copy file iso ke dalam sebuah direktori kosong;

    $ mkdir project
    $ mv ubuntu-8.04.1-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 kedalam 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 

Extracting the Desktop system

  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 

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 

Customisasi Desktop dan System

Untuk customisasi desktop dan system bisa di baca di bab tersendiri di sini;

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 
# umount /sys 
# exit 
$ sudo umount work/dev 

Menyatukan kedalam CD

Regenerate manifest
$ chmod +w cdrom/casper/filesystem.manifest 
$ sudo chroot work dpkg-query -W --showformat='${Package} ${Version}n' > cdrom/casper/filesystem.manifest 
$ 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.diskdefines
$ 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 .. 
Membuat File Iso
$ cd extract-cd 
$ sudo mkisofs -D -r -V "ubuntu-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-custom.iso .

Testing CD

Test menggunakan Qemu emulator
$ qemu -cdrom ubuntu-8.04.1-desktop-i386-custom.iso -boot d -m 512 
Anda juga dapat melakukan testing dengan menggunakan Virtualbox.

Membakar Image File kedalam CD

Cukup Mudah, lakukan perintah sebagai berikut :
$ cdrecord dev=/dev/cdrom ubuntu-8.04.1-desktop-i386-custom.iso 

Referensi

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *