Tag Archives

10 Articles
WordPress JP: Installing LAMP Stack with ZFS

WordPress JP: Installing LAMP Stack with ZFS


I’m in fast writing mode as this is probably won’t intended to be understood by most people. I’m writing in this blog as I moving forward installing. To keep writing  and translating from my tacit into Bahasa Indonesia is kind of laboring. Perhaps, if you want, I would reiterate what I do here with better Bahasa Indonesia. But, now, let’s live speed writing.


I’ve got Ubuntu 14.04 Live USB on my arsenal. Boot it up and setup some trivial like IP, DNS and stuff. I modify APT sources.list to match my nearest server.

deb http://kambing.ui.ac.id/ubuntu/ trusty main restricted
deb http://kambing.ui.ac.id/ubuntu/ trusty-security main restricted
deb http://kambing.ui.ac.id/ubuntu/ trusty-updates main restricted

Do the update and install SSH and VIM.

sudo -i
apt-get update
apt-get install ssh vim
passwd ubuntu

I need SSH because I can’t stand on server room too long. I’m not going to go on religious war on ViM vs Emacs. Last, change ubuntu user password.

And now the show live from my comfy SSH terminal laptop.

Install Ubuntu ZFS for Ubuntu Live Session

Straight from the doc.

sudo -i
apt-add-repository --yes ppa:zfs-native/stable
apt-get update
apt-get install debootstrap spl-dkms zfs-dkms ubuntu-zfs
modprobe zfs

You may wondering why I’m not upgrading first. Upgrading a temporary system is wasting time, especially one with GUI installed. Okay, now we get to the formatting.

Create A ZFS Pool

I have 2 SATA and 1 SSD. The best for server should be two SSDs. But, hey, beggar can’t choose.

ZFS config: 2 Disks + 1 SSD.

ZFS config: 2 Disks + 1 SSD.

Using GParted, I turned SSD into GPT with 3 partitions:

  • The first 200MB for /boot partition. Some twisted soul refused to use separated partition for /boot, well, good for you! I go with the conservative.
  • 8GB used for ZIL (ZFS Intent Log) drive. ZFS usually use 8GB max for journaling.
  • The rest used for ZFS Cache (ZARC).

But, hey, where is the EFI partition?

I’ve just recently found out that when you give your whole disk to ZFS, it would format the disk into two partitions. One big partition (sX1) for the use of ZFS and one 8MB partition (sdX9) for EFI partition (FAT). Yeah, ZFS automatically turn the disk into GPT partitioning scheme. After adding the two disks into a ZFS pool, the partitions will be like this:

sda: sda1 sda9, sdb: sdb1 sdb9

I’m doing mirroring for sda and sdb. I wish I have one more SSD. I would mirror two partitions on separated SSDs for ZIL. If you are luckier than me, do it! It is for safety measure. But, don’t mirror the cache because it’s wasting space.

Here’s the reality:

zpool  create -f -o ashift=12 -o altroot=/mnt -m none rpool mirror sda sdb log sdc2 cache sdc3

If I may have a dream with two SSDs:

zpool create -f -o ashift=12 -o altroot=/mnt -m none rpool mirror sda sdb log mirror sdc2 sdd2 cache sdc3 sdd3

Disable access time, enable relative time and enable LZ4 compression on tanks.

zfs set atime=off rpool
zfs set relatime=on rpool
zfs set compression=lz4 rpool

If nothing is wrong, we would got:

# zpool status rpool
  pool: rpool
 state: ONLINE
  scan: none requested

    rpool       ONLINE       0     0     0
      mirror-0  ONLINE       0     0     0
        sda     ONLINE       0     0     0
        sdb     ONLINE       0     0     0
      sdc2      ONLINE       0     0     0
      sdc3      ONLINE       0     0     0

errors: No known data errors

Next, the partitioning. After this, I’m doing things from Crossroad’s tutorial with some tweaks.

Create Partition

As Debian configuration:

zfs create -o mountpoint=none rpool/ROOT
zfs create -o mountpoint=/ rpool/ROOT/debian-1
zpool set bootfs=rpool/ROOT/debian-1 rpool

What? Yes, I’m installing Debian not Ubuntu.

Last, export the pool we’ve created for later import. We do this so that the ZFS config would read from disk by ID instead of common UDEV naming. Believe me, you don’t want to use UDEV naming (sda, sdb, etc.) on ZFS.

zpool export rpool

Now, we can start installing Debian system.

Install Debian

Reimport ZFS pool and create a ZFS configuration cache file.

zpool import -d /dev/disk/by-id -R /mnt rpool
mkdir -p /mnt/etc/zfs
zpool set cachefile=/mnt/etc/zfs/zpool.cache rpool

REMEMBER: (Straight from the ZFS FAQ)

Run update-initramfs -c -k all after any /sbin/zpool command changes the /etc/zfs/zpool.cache file.

This is the reason of random failures from mounting ZFS root partition.

Install the system and mount all the basic system partitions.

debootstrap --arch=amd64 jessie /mnt http://kambing.ui.ac.id/debian/

And now, configure.

Configure Debian


echo gantenghost > /mnt/etc/hostname
sed -i -Ee "s#(127.+)#\1 gantenghost#" /mnt/etc/hosts

Create configuration for network interfaces. In the spirit of new configuration scheme, I put two files in /etc/network/interfaces.d/

# cat > /mnt/etc/network/interfaces.d/eth0 << .
auto eth0
iface eth0 inet dhcp


# cat > /mnt/etc/network/interfaces.d/lo << .
auto lo
iface lo inet loopback

Mount all the system filesystems.

for f in dev dev/pts proc sys; do mount -v --bind {,/mnt}/$f; done

Chroot there

chroot /mnt /bin/bash

In Debian Configuration


apt-get install locales
sed -i -Ee 's/# (en_US.UTF+)/\1/' /etc/locale.gen


dpkg-reconfigure tzdata
apt-get install ntp
/etc/init.d/ntp stop

Remember when I said I’m going to put /boot on different partition? Now is the time.

echo "/dev/sdc1 /boot ext4 rw,relatime,stripe=4,data=ordered 0 0" >> /etc/fstab
mount /boot

Remember also what I said about using the ninth partition of the first disk? Now is the time.

apt-get install dosfstools
mkdir /boot/efi
mkfs.vfat /dev/sda9
echo "/dev/sda9 /boot/efi vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 0" >> /etc/fstab

Install ZFS packages with Debian style. ZFS needs lsb-release package.

cd /tmp
wget http://archive.zfsonlinux.org/debian/pool/main/z/zfsonlinux/zfsonlinux_6_all.deb
apt-get install lsb-release
dpkg -i zfsonlinux_6_all.deb
apt-get update && apt-get install linux-image-amd64 debian-zfs
apt-get install grub2-common grub-efi zfs-initramfs

Last, add a login.

apt-get install sudo vim ssh
adduser user
adduser user sudo

Setup GRUB For ZFS Boot

There is a bug in Debian’s GRUB that makes the system unbootable. First, let’s reconfigure GRUB Default command line:

sudo dpkg-reconfigure grub-efi-amd64

Change Linux default command line (second screen after Linux command line) from



root=ZFS=rpool/ROOT/debian-1 rpool=rpool bootfs=rpool/ROOT/debian-1 quiet

After this, update grub and we are done.

sudo update-grub

Booting to New System

After all preparations, unmount all the filesystems

umount /boot/efi/ /boot
for f in dev/pts dev proc sys; do umount /mnt/$f; done
zfs umount -a
zfs export rpool


Final Thought

Well, you might find some faults here and there. If not, everything after this is straightforward.

Bacaan Lebih Lanjut

Memasang BlankOn Tambora dengan UEFI

Memasang BlankOn Tambora dengan UEFI

Saya butuh destop yang stabil. Destop KF5 dari Neon Desktop yang saya pasang belum stabil. Wajar, masih versi GIT, sih.

Sepengalaman saya, BlankOn menawarkan kestabilan itu pada versi Suroboyo. Saya pun mencoba memasang Tambora yang dari tahun lalu Beta 1. Mungkin Beta 1 ini sudah terlalu stabil makanya tidak ada pembaharuan lagi.

Saatnya memasang BlankOn Tambora! Saya hendak memasang ini di laptop saya tercinta. Kebetulan kali ini bukan laptop kantor sehingga partisinya bisa saya atur seenak jidat. Merek yang saya pakai tapi masih sama, hanya saja dari model AMD A10-7300.

Saya sudah pernah membahas memasang pada laptop kantor. Saya akan melewati penjelasan detail pada beberapa bagian karena sudah dibahas di tulisan itu. Saya menggunakan HP Pavilion 15 Notebook PC.


Saya menggunakan Installer Kubuntu 15.10 untuk memasang BlankOn. Untuk itu, saya harus menyesuaikan beberapa hal.

Saya asumsikan Anda sudah mengerti tata letak partisi yang Anda buat. Sebagai referensi, saya membuat tata letak mirip dengan artikel saya terdahulu.

  • /dev/sda1 – FAT32 (UEFI) – /boot/efi (200MB)
  • /dev/sda2 – LVM – LVM (Sisanya)
    • /dev/HP/root – EXT4 – / (20GB)
    • /dev/HP/rumah – EXT4 – /home (20GB)

Anda bisa menyusahkan diri dengan cara heker yang ada di artikel saya sebelum ini, atau menggunakan KDE Partition Manager untuk konfigurasi partisi biasa. Lalu,  system-config-lvm untuk membuat partisi LVM. Aplikasi system-config-lvm perlu dipasang karena belum ada pada Installer Kubuntu 15.10.

sudo apt-get install system-config-lvm

Selanjutnya, buka KDE Partition Manager dan bagi dua ruang penyimpan menjadi /dev/sda1 (FAT32/UEFI) dan /dev/sda2 (LVM). Lalu, setelah itu jalankan system-config-lvm untuk membuat volum logikal /dev/HP/root dan /dev/HP/rumah.

Memasang debootstrap

sudo apt-get install debootstrap

Memasang Aturan debootstrap untuk Tambora

Om Aftian pernah menyediakan aturan untuk memasang BlankOn untuk Debian. Nampaknya belum diterima untuk ada d paket resmi Debian. Untuk itu, saat ini gunakan saja versi kontribusi Beliau untuk memasang Tambora.

sudo wget http://pastie.org/pastes/9640013/download -O /usr/share/debootstrap/scripts/tambora

Sekarang sudah siap untuk memasang Tambora.

Memasang Tambora

Memasang Tambora:

mount /dev/HP/root /mnt
debootstrap tambora /mnt http://kambing.ui.ac.id/blankon/

Ingat, pemasangan kali ini menggunakan UEFI. Jadi, mari lakukan hal-hal yang biasa dilakukan untuk UEFI.

Memasang Sistem Berkas

Mari pasang sistemberkas sistem:

mount none /mnt/proc -t proc
mount none /mnt/sys -t sysfs
mount /dev /mnt/dev -o bind
mount none /mnt/dev/pts -t devpts
mount none /mnt/sys/firmware/efi/efivars/ -t efivarfs
mount /run /mnt/run -o bind

Sekalian pasang direktori untuk partisi EFI (/dev/sda1). Partisi EFI berisi semua binari EFI, termasuk GRUB dan Windows Boot Manager.

mkdir -p /mnt/boot/efi
mount /dev/sda1 /mnt/boot/efi/
mkdir -p /mnt/boot/efi/EFI

Lalu pasang juga partisi yang lain, misalnya rumah (/home)

mount /dev/HP/rumah /mnt/home

Pasang semua yang diperlukan dan sekali lagi, sesuaikan dengan cetakan partisi yang Anda telah pilih.

Dan setelah itu, mari masuk ke sistem.

chroot /mnt /bin/bash

Pemasangan Biasa

Konfigurasi nama laptop:

echo "nama-laptop" > /etc/hostname
sed -i 's/\(localhost\)/\1 nama-laptop /' /etc/hosts

Ganti “nama-laptop” dengan sesuatu yang lebih kreatif sebagai nama laptop.

Buat daftar sistemberkas yang harus terpasang ke /etc/fstab. Anda bisa melihat satu-satu di /proc/mounts, tetapi saya menggunakan cara heker: (REGEX FTW!)

grep ^\/dev /proc/mounts  > /etc/fstab

Mari betulkan daftar repositori /etc/apt/sources.list dengan daftar yang lebih lengkap.

cat > /etc/apt/sources.list << EOF
deb http://kambing.ui.ac.id/blankon tambora main extras restricted extras-extricted
deb-src http://kambing.ui.ac.id/blankon tambora main extras 

deb http://kambing.ui.ac.id/blankon tambora-updates main extras restricted extras-extricted
deb-src http://kambing.ui.ac.id/blankon tambora-updates main extras 

deb http://kambing.ui.ac.id/blankon tambora-security main extras restricted extras-extricted
deb-src http://kambing.ui.ac.id/blankon tambora-security main extras

Saya pakai cara heker.  Silakan gunakan cara-cara yang lebih beradab misalnya menggunakan ViM atau membukanya pada aplikasi penyunting pada sistem operasi inang.

Setelah itu, pasang destop BlankOn. Paket blankon-desktop memasang banyak sekali aplikasi.

apt-get update
apt-get install blankon-desktop

Anehnya juga termasuk memasang GDM dan LightDM.

BlankOn menyediakan dua.

BlankOn menyediakan dua.

Saya memilih menggunakan LightDM. Lalu, saya kembali membaca novel. Saya putuskan saya terlalu malas untuk menghapus satu pun. Tapi, kalau Anda butuh ruang penyimpan, Anda dapat memasang GDM.

Konfigurasi Locale untuk menggunakan ID_id.UTF-8

dpkg-reconfigure locales

Konfigurasi zona waktu: (Asia/Jakarta)

dpkg-reconfigure tzdata

Pasang berkas-berkas yang perlu:

apt-get install lvm2
apt-get install vim ssh

Baris pertama untuk perkakas sistemberkas yang tak lazim (tak ikut dalam ketergantungan blankon-desktop). Baris kedua adalah untuk aplikasi favorit yang tidak terpasang pada normalnya.

Setelah itu, memasang kernel. Sebenarnya inilah penyebab saya memilih memasang lewat bootstrap. Terakhir saya memasang BlankOn belum ada dukungan pemasangan UEFI.

apt-get install linux-image-amd64 grub-efi-amd64
grub-install /dev/sda

Terakhir, tambahkan satu atau dua pengguna:

adduser user
usermod -aG sudo,adm,audio,video user

Selesai. Kalau sudah sampai sini, berarti pemasangan lancar. Saatnya menyalakan ulang laptop dan masuk ke BlankOn yang sudah terpasang.

Tambahan untuk Pemilik Laptop dengan Realtek RTL8723BE yang Malang Seperti Saya

Saya tidak tahu apakah HP Indonesia menyediakan fasilitas pengembalian barang. Saya tidak punya waktu untuk itu. Tapi, WiFi RTL8723BE yang tertanam pada laptop saya (nomor SKU: M2W18PA#AR6) atau laptop kantor tidak bisa dijalankan langsung dari Kubuntu 15.10 maupun BlankOn Tambora. Pada artikel sebelumnya, saya mengakali dengan menonaktifkan perangkat keras IOMMU di kernel (iommu=soft).

Waktu itu laptop kantor masih menggunakan Intel. Tapi, sekarang saya menggunakan AMD A10 7300. Laptop saya diiklankan memiliki 10 unit komputasi dengan menggunakan 4 unit dari prosesor dan 6 unit dari keping grafik. Dengan mematikan IOMMU, saya akan kehilangan 6 unit komputasi dari GPU!

HSA harus ada! Kali ini saya tak mau kompromi. Setelah berjibaku dengan kestresan tingkat tinggi, saya pun menemukan proyek penggerak Realtek di Github. Pada salah satu forumnya, ada yang membahas mengenai laptop HP yang menggunakan RTL8723BE.

Sebelum memulai, pasang paket yang perlu:

sudo apt-get install linux-headers-amd64 build-essential git

Pada forum Realtek di Github diberikan tambahan sulaman untuk Realtek. Untuk itu, mari mengunduh dari Github kode sumber penggerak yang sudah ditambal dengan sulaman itu:

git clone git://github.com/lwfinger/rtlwifi_new.git && cd rtlwifi_new
git checkout rock.new_btcoex

Lakukan stanza kompilasi dan pasang seperti biasa.

make && sudo make install

Selanjutnya, tambahkan parameter untuk modul kernel. Ini yang berlaku untuk laptop saya (nomor SKU: M2W18PA#AR6)

echo "options rtl8723be ips=0 ant_sel=1 msi=1" | sudo tee  /etc/modprobe.d/50-rtl8723be.conf

Perhatikan pada ant_sel=1. Pada beberapa laptop, ada yang harus mengaktifkan antena kedua sebagai penghubung radio WiFi agar lancar. Untuk itu, parameter perlu diubah menjadi ant_sel=2. 

Laptop siap dinyalakan ulang untuk mendapatkan perubahan parameter ini. Saya akhirnya bisa mendapatkan HSA dan radio WiFi akur.

Hasil Akhir

Sepertinya memang kualitas masih beta. Atau, bisa jadi ada paket-paket yang belum terpasang kalau hanya memasang blankon-desktop. Berikut yang bisa saya simpulkan dari hasil debootstrap ini:

  1. Ikon-ikon di taskbar menumpuk. Untuk berpindah tugas, hanya antar 2 aplikasi saja. Jadi, kalau ada aplikasi yang ketiga, harus diklik. Ada galat yang terbuka, sih, di situs pengembangan BlankOn. ikon-rusak
  2. Applet Network Manager dan OSD belum jalan. Sepertinya ada XDG autostart yang tidak berjalan di sesi BlankOn.
  3. Bluetooth belum ada applet, bluemoon tidak dapat dijalankan. Diakali dengan memasang Bluetooth Manager:
    sudo apt-get install blueman obexpushd
  4. Tidak ada peluncur aplikasi. Saya suka itu! Saya jadi bisa memasang Synapse kesukaan saya:
    sudo apt-get install synapse
  5. Seperti biasa, BlankOn Tambora menghabiskan memori relatif kecil. Hanya sekitar 1GB (termasuk Chromium)! Untuk aplikasi desktop masa kini, ini sudah sangat wah.
  6. Untuk memperlengkapi, cari semua paket berawalan blankon-branding-* yang belum terpasang dan mau dipasang. Saya lihat ada paket Cinnamon untuk BlankOn juga. Untuk kali ini, saya belum membahas apa saja.

Selanjutnya, saya akan coba belajar memperlengkapi BlankOn Tambora yang saya pasang ini dan mencoba memasang yang lain.

browser: Chromium, console: Gnome Terminal, pemasang: Synaptic

browser: Chromium, console: Gnome Terminal,
pemasang: Synaptic


Memasang Ubuntu Wily (15.04) Pada HP Probook 440 G2 (HP EFI)
Wily Broke The Window

Memasang Ubuntu Wily (15.04) Pada HP Probook 440 G2 (HP EFI)

Ini adalah perjalanan JP memasang Kubuntu Wily dasar pada sistem HP Probook 440 G2. Mesin ini memiliki implementasi UEFI yang salah sehingga memerlukan ketekunan dalam membuat pemasangan berjalan baik.

Informasi Sistem

Informasi sistem yang didapatkan dari dmidecode.

Manufacturer: Hewlett-Packard
Product Name: HP ProBook 440 G2
Version: A3009DD10303
Serial Number: CND5325G0B
UUID: 9A822FFF-61BB-11E5-A123-9023330000FF
Wake-up Type: Power Switch
SKU Number: L7Z17PT#AR6
Family: 103C_5336AN G=N L=BUS B=HP S=PRO

Saya menjalankan LiveCD Kubuntu Wily. Jangan lupa pasang dulu debootstrap sebelum lanjut. Lalu, supaya tidak pusing, langsung jalan sebagai root saja.

sudo apt-get update && sudo apt-get install debootstrap
sudo su -

Saya agak curang sedikit. Sebelum kedua langkah tersebut, saya mengubah /etc/apt/sources.list mengarahkan ke KAMBING.ui.ac.id. Hal ini mengingat peladen fisiknya ada di ruang sebelah.


Sistem ini dijangkiti oleh WIndows 7 sebesar satu tera. Dengan konfigurasi sebagai berikut:

Original HP Partition

Original HP Partition

Jadi kira-kira seperti ini:

/dev/sda1 ntfs primary “SYSTEM”
/dev/sda2 ntfs primary “WINDOWS XXX”
/dev/sda3 ntfs primary “HP_RECOVERY”
/dev/sda4 fat32 primary “HP_TOOLS”

Berhubung laptop ini sudah dibeli dengan perangkat lunaknya, saya memutuskan untuk tidak menghapus Recovery. Saya hanya perlu menghapus Windows.

Saya bingung dan memutuskan untuk menggunakan LVM. Satu tera untuk sistem agak berlebihan menurut saya. Cara berikut bisa dilakukan dengan GParted atau KDE Partition Manager. Akan tetapi, saya mau terlihat seperti heker:

parted -s /dev/sda set 2 lvm on
pvcreate /dev/sda2
vgcreate HP /dev/sda2

Saya kasih label “HP”, tapi Anda boleh beda. Kemudian, saya putuskan untuk buat partisi dasar 20G dan partisi rumah 20G.

lvcreate -L 20G -n root HP
lvcreate -L 20G -n rumah HP

mkfs.ext4 -L "Pusat Kehidupan" /dev/HP/root
mkfs.ext4 -L "Rumah Kita" /dev/HP/rumah

Selanjutnya proses pemasangan.


Pasang debootstrap seperti biasa:

mount /dev/HP/root /mnt
debootstrap wily /mnt http://kambing.ui.ac.id/ubuntu/
mount /dev/HP/rumah /mnt/home

Saya sengaja memisahkan direktori rumah ke partisi berbeda. Mungkin butuh di kemudian hari.

Pasang Sebelum CHROOT

Karena sistem yang hendak dipasang menggunakan UEFI, mari kita lihat apakah ada UEFI.

ls -al /sys/firmware/efi/efivars/

Seharusnya ada isinya. Kalau tidak, berarti belum menggunakan UEFI. Silakan gunakan prosedur pemasangan yang biasa saja.

Selanjutnya, mari pasang beberapa sistem berkas:

mount none /mnt/proc -t proc
mount none /mnt/sys -t sysfs
mount /dev /mnt/dev -o bind
mount none /mnt/dev/pts -t devpts
mount none /mnt/sys/firmware/efi/efivars/ -t efivarfs

Baris terakhir diperlukan agar dapat mendaftarkan GRUB ke sistem UEFI.

Si HP ini menggunakan partisi EFI dengan NTFS. Padahal, UEFI bersabda harus menggunakan partisi FAT16/FAT32. Untungnya, ada 4 partisi dan salah satunya memakai FAT32. Jadi, saya buat saja satu direktori efi ke partisi ke-4 itu.

mkdir -p /mnt/boot/efi
mount /dev/sda4 /mnt/boot/efi/
mkdir -p /mnt/boot/efi/efi

Sekarang kita masuk ke sistem.

chroot /mnt /bin/bash

Selanjutnya, mari memasang sistem.

Memasang Bootloader dan Kernel

Yang lain mudah, tetapi yang ini agak sulit. Berikut hasil kalau proses sebelumnya berhasil:

# mount
/dev/mapper/HP-root on / type ext4 (rw,relatime,data=ordered)
none on /proc type proc (rw,relatime)
none on /sys type sysfs (rw,relatime)
udev on /dev type devtmpfs (rw,nosuid,relatime,size=4018096k,nr_inodes=1004524,mode=755)
none on /dev/pts type devpts (rw,relatime,mode=600,ptmxmode=000)
none on /sys/firmware/efi/efivars type efivarfs (rw,relatime)
/dev/sda4 on /boot/efi type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)

Mari pasang LVM2

apt-get install lvm2

Lalu pasang GRUB dan kernel.

apt-get install linux-generic grub-efi-amd64

Sayangnya, karena implementasi HP yang unik dan menyalahi aturan UEFI, Kubuntu akan gagal mendaftarkan sistemnya dengan benar. Apalagi, secara sotoy [slang: sok tahu] skrip grub-install mengira bahwa UEFI ada di direktori pertama. Tetapi, Anda bisa juga beruntung mendapatkan skrip membaca dengan benar.

Saya tidak suka digantung. Mari lihat entri ubuntu dipasang pada UEFI:

# efibootmgr
Timeout: 0 seconds
BootOrder: 0000
Boot0000* ubuntu

Selain saya tidak tahu entri “ubuntu” mengarah ke mana, saya juga tidak suka dengan label yang hanya “ubuntu”. Mari pasang secara benar.

Pertama-tama, hapus “ubuntu”. Perhatikan bahwa entri Ubuntu ada pada indeks 0000.

efibootmgr -b 0000 -B

Selanjutnya, mari pasang label yang baik dan benar.

efibootmgr  -c -d /dev/sda -p 4 -l "\efi\ubuntu\grubx64.efi" -L "OS Sesungguhnya"

Berikut penjelasan parameter:

  • -c, buat entri baru.
  • -d /dev/sda, EFI yang ada di perangkat /dev/sda (harddisk utama).
  • -p 4, aplikasi EFI ada di partisi keempat.
  • -L “OS Sesungguhnya”, label entri. Anda bisa mengubah yang lainnya.

Selanjutnya saat menyalakan laptop, entri “OS Sesungguhnya” sudah ada di dalam OS.

Dan Pemasangan pun Berlanjut Normal

Selanjutnya membosankan seperti bootstrap yang lainnya.

sudo apt-get install ssh vim sudo
sudo adduser pengguna
sudo adduser pengguna sudo
sudo apt-get install kubuntu-desktop yakuake

Terakhir, muat ulang dan masuk ke sistem.


Saya tidak tahu kelakuan HP ini. Pertama-tama saya harus boot dengan USB Kubuntu Live terpasang. Kemudian, ketika sudah masuk ke sistem terpasang, USB dilepas. Saya lalu kembali menjalankan efibootmgr untuk menghapus entri yang sudah ada dan memasang kembali entri “OS Sesungguhnya”.

Do I have to write this on English?

Tak Ada Rotan Akar Pun Jadi (debootstrap)

Tak Ada Rotan Akar Pun Jadi (debootstrap)

Sepertinya pada hari ini paket BlankOn Suroboyo tidak menyediakan paket debootstrap yang berisi BlankOn. Saya lihat di direktori bersangkutan (/usr/share/debootstrap/scripts/) hanya berisi skrip-skrip Debian dan Ubuntu.

Ya, sudah, berhubung saya mau memasang sistem baru, saya pun menggunakan trik berikut:

# apt-get install deboostrap
# cd /usr/share/debootstrap/scripts/
# ln -sf sid suroboyo

Jadi, deh, selanjutnya saya tinggal melangkah seperti biasa:

# deboostrap suroboyo /mnt http://kambing.ui.ac.id/blankon/

Semua ini dilakukan di Root Terminal yang disediakan oleh CD BlankOn Suroboyo Jahitan 2.

Oh, iya, mengapa saya nekat menggunakan skrip Debian? Karena BlankOn dibangun berdasarkan Debian.

Yak, sekarang lanjut pasang-pasang.

Bacaan Lebih Lanjut

Debootstrap BlankOn 9 Suroboyo

Debootstrap BlankOn 9 Suroboyo

Saya rasa sudah saatnya saya menjalankan ritual untuk setiap distro yang ada di Kambing: Debootstrap! Mengapa saya bisa? Karena pelayannya ada di ruang sebelah. Tapi, kalau Anda bukan fakir pita jaringan, Anda bisa juga, kok. Apalagi BlankOn itu tidak matre.

Diasumsikan Anda sudah membuat partisi dengan GParted/FDisk atau apa pun. Saya anggap partisinya sudah jadi. Saya menggunakan ISO DVD BlankOn Suroboyo Jahitan 1 sebagai sistem operasi utama. Di DVD itu tersedia juga GParted. Saya menjalankan semua ini di VirtualBox, aplikasi penyedia mesin maya yang gratis dan murah meriah.


Buka Root Terminal supaya tidak usah susah payah menggunakan sudo. Pertama-tama pasang debootstrap pada BlankOn Live yang sedang dipakai:

# apt-get install debootstrap

Lalu, pasang direktori utama yang akan dipasang sistem:

# mount /dev/sda1 /mnt

Jalankan Debootstrap Seperti Biasa (Termasuk Kesalahannya)

Setelah itu, jalankan debootstrap:

# debootstrap suroboyo /mnt http://kambing.ui.ac.id/blankon/

Yak, seperti sebelumnya, selalu ada galat seperti ini:

E: Couldn't download packages: libdb5.1

Setelah saya periksa, sepertinya satu direktori berikut tidak di-rsync oleh Kambing:


Ya, sudah, pindahkan repositori ke situs BlankOn yang utama:

# debootstrap suroboyo /mnt http://arsip.blankonlinux.or.id/blankon/

Hmm… ingatkan saya untuk periksa skrip sedot. Ha… ha… ha….

Pasang Sistem-sistem Berkas yang Perlu


# mount -o bind /dev /mnt/dev
# mount -t proc none /mnt/proc
# mount -t sysfs none /mnt/sys
# mount -t devpts none /mnt/dev/pts

Masuk ke dalam sistem BlankOn:

# chroot /mnt /bin/bash

Konfigurasi Sistem Dasar

Ada beberapa konfigurasi berkas.

Pasang Berkas sources.list

Berkas ini berisi repositori yang akan dipakai oleh BlankOn untuk memasang perangkat lunak.

Kata Om Larry Wall, kemalasan adalah sebuah kebijaksanaan. Maka, berbeda dengan tulisan terdahulu, saya gunakan versi yang sudah jadi. Selain itu, saya ganti dari repositori utama ke KAMBING. Saya pilih KAMBING karena fisiknya ada di ruang sebelah, buat saya lebih cepat.

# wget http://dev.blankonlinux.or.id/export/current%3A/suroboyo/blankon-repository-setup/sources.list -O- | sed 's/arsip.blankonlinux.or/kambing.ui.ac/' > /etc/apt/sources.list

Sekalian saja diperbaharui sistem ini:

# apt-get update && apt-get dist-upgrade


Pasang Berkas fstab

Saya berniat memasang systemd. Seperti pada temuan saya yang lalu, maka perlu menaruh sistem berkas utama ke fstab. Kebetulan saya hanya ada satu partisi saja (/dev/sda1). Jadi, saya pasanglah itu ke fstab:

# cat /proc/mounts | grep sda1 > /etc/fstab


Pasang Yang Penting-penting

Ada beberapa yang penting seperti penyunting, sudo, dan lain sebagainya.

# apt-get install vim sudo e2fsprogs

Tambahkan reiserfsprogs dan *progs lainnya untuk sistem berkas kesukaan Anda. Perkakas-perkakas ini diperlukan untuk memanipulasi sistem berkas Anda.

Konfigurasi Waktu dan Lokalitas

Ubah zona waktu.

# dpkg-reconfigure tzdata

Ubah lokalitas menjadi Bahasa Indonesia. Pilih id-ID.UTF8 saja!

# apt-get install locales && dpkg-reconfigure locales

Tambahkan Pengguna Utama

# adduser jp

Tambahkan ke grup sudo agar bisa jadi admin:

# adduser jp sudo

Pasang Kernel

Terakhir pasang kernel. Saat penulisan, di repositori kernel Linux terbaru versi 3.10-3. Ya, saya pasang itu saja:

# apt-get install linux-image-3.10-3-amd64

Pasang Bootloader

Pasang GRUB2:

# apt-get install grub2

Beres. Sampai sini sudah sistem dasar, berikutnya adalah terserah saya.

.—::: TAMAT :::—.

Tambahan 0: Pasang Penggerak VirtualBox

Kebetulan BlankOn saya berjalan di VirtualBox. Saya perlu memasang penggerak untuk VirtualBox:

# apt-get install virtualbox-guest-x11


Tambahan 1: Pasang KDE SC

Kali ini saya mau iseng memasang KDE SC sebagai destop saya. Saya senang KDE SC.

# apt-get install kde-full

Peringatan dari saya:

0 upgraded, 1125 newly installed, 0 to remove and 0 not upgraded.
Need to get 944 MB of archives.
After this operation, 2518 MB of additional disk space will be used.

Ya, kalau memang kuat, silakan saja lanjut.

Di masa jeda pemasangan ini, Apakah Anda sudah menyapa anak dan istri Anda? Ataukah sudah Anda sungkeman ke orang tua Anda? Hari ini cerah, loh, silakan keluar sebentar main layang-layang.

Eh, sudah tak bisa lagi? Ya, sudah, silakan menatap proses pemasangan.

Debootstrap BlankBerry pada Gentoo

Debootstrap BlankBerry pada Gentoo

Halaman membangun BlankBerry hanya memberikan asumsi bahwa kita menggunakan BlankOn atau sistem berbasis Debian lainnya. Untuk sistem Gentoo, ada caranya. Terinspirasi dari halaman ini. Saya mengasumsikan bahwa:

  1. Debootstrap telah terpasang.
  2. Direktori yang akan dipasangi BlankBerry sudah siap (maksudnya drive-nya sudah di-mountpada direktori tersebut, dsb.).
    export rootfs=/mnt/sysroot
  3. Akses Internet mumpuni atau Anda sudah menyiapkan repo lokal.

Persiapan dari sisi Gentoo

USE="static" emerge -b1 qemu-user

Ini akan memasang “/usr/bin/qemu-static-arm” dan “qemu-static-arm-binfmt” dan seabrek-abrek arsitektur lainnya.

Sekarang saatnya berpesta! Debootstrap seperti biasa.

debootstrap --verbose --arch armhf --no-check-gpg --foreign rote $rootfs http://arsip-dev.blankonlinux.or.id/raspbian /usr/share/deboostrap/scripts/wheezy

Pasang sistem-sistemberkas yang perlu.

mount -t proc none $rootfs/proc
mount -t sysfs none $rootfs/sys
mount -o bind /dev $rootfs/dev
mount -t devpts none $rootfs/dev/pts

Mari persiapkan “binfmt_misc”.  Modul “binfmt_misc” adalah sebuah fasilitas kernel Linux untuk menjalankan sebuah binari kepada sebuah aplikasi, misalnya emulator. Mari pasang modul ini untuk menjalankan ARM.

modprobe binfmt_misc
mount binfmt_misc -t binfmt_misc /proc/sys/fs/binfmt_misc

Beritahu emulator untuk ARM.

echo ':arm:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-static-arm:' > /proc/sys/fs/binfmt_misc/register

Salin kedua berkas emulator ARM.

cp /usr/bin/qemu-static-arm $rootfs/usr/bin/qemu-static-arm-binfmt
cp /usr/bin/qemu-static-arm-binfmt $rootfs/usr/bin/qemu-static-arm-binfm

Yak, sudah selesai.

Lanjutkan Debootstrap:

LC_ALL=C chroot $rootfs /debootstrap/debootstrap --second-stage

Yak, ini semua untuk menggantikan satu baris berikut yang ada pada halaman WIKI BlankOn:

qemu-debootstrap --arch armhf rote $rootfs http://arsip-dev.blankonlinux.or.id/raspbian /usr/share/debootstrap/scripts/wheezy

Selanjutnya terserah Anda.

Jurnal Debootstrap BlankBerry

Jurnal Debootstrap BlankBerry


Uh, nampaknya tulisan ini sudah terpublikasi di Planet. Sepertinya saya salah memencet tombol. Ya, sudah, berhubung tulisan ini ditujukan bagi pemakai lanjut yang beruntung memiliki Raspberry Pi. Sebelumnya, saya menggunakan repositori BlankOn dan harus memakai cara yang hancur-hancuran. Beruntung, @aftian memberikan tautan yang benar mengenai repositori BlankOn yang sebenarnya.


Uh, seandainya kamu adalah wanita cantik akan kukecup mesra. Ha… ha… ha….

kabur takut kena gaplok

Sekilas Raspberry

Raspberry menggunakan ARM dengan tambahan prosesor untuk menghitung floating point. Firmware yang ia gunakan mengasumsikan bahwa SDCard memiliki setidaknya hal berikut:

  • Partisi pertama harus FAT32 (VFAT) dan berisi firmware yang akan dijalankan pertama kali.
  • Partisi kedua biasanya berisi sistem berkas utama. Biasanya formatnya EXT4.

Di dalam BlankOn, SDCard terpasang sebagai mmcblk0. Dengan demikian, partisi pertama disebut /dev/mmcblk0p1 dan partisi kedua bernama /dev/mmcblk0p2.

Saya mengasumsikan kartu memori (SDCard) sudah terpartisi dan terformat dengan baik. Gampang, tinggal menggunakan gparted.

Saya membagi beberapa pekerjaan ini menjadi beberapa bagian:

  • Awalan: mempersiapkan partisi yang hendak ditulisi dan variabel rootfs agar memudahkan.
  • Pasang Awal: proses debootstrap. Dilakukan dua kali karena kita menggunakan arsitektur yang berbeda
  • Konfigurasi: pasang sandi, jaringan, waktu, lokalisasi, dsb.
  • Pasang kernel: memasang kernel yang telah disertakan oleh Hexxeh.
  • Bersih-bersih: menghapus paket-paket dan melepaskan partisi.

Ada beberapa proses yang terlewat, seperti membuat pengguna biasa baru. Nanti saya perbaiki lagi tulisan ini, saya hendak mengulang apa yang saya kerjakan.

Tulisan ini sudah berhasil dan diujicobakan pada dapur Fem*na… hahaha…. 🙂


export rootfs=/mnt
mount /dev/mmcblk0p2 $rootfs

Pasang Awal

debootstrap --verbose --arch armhf --variant=minbase --no-check-gpg --foreign rote $rootfs http://arsip-dev.blankonlinux.or.id/raspbian
cp $(which qemu-arm-static) $rootfs/usr/bin
mkdir $rootfs/dev/pts
mount -t devpts none $rootfs/dev/pts
mount -t proc none $rootfs/proc
LC_ALL=C chroot $rootfs /debootstrap/debootstrap --second-stage


echo "deb http://arsip-dev.blankonlinux.or.id/raspbian rote main" > $rootfs/etc/apt/sources.list
echo "blankjp" > $rootfs/etc/hostname
cat > $rootfs/etc/hosts << EOF    localhost.localdomain    localhost blankjp
::1     localhost6.localdomain6    localhost6 blankjp

cat > $rootfs/etc/network/interfaces << EOF
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

cat >> $rootfs/etc/modules << EOF
echo vchiq

LC_ALL=C chroot $rootfs /usr/bin/apt-get update
LC_ALL=C chroot $rootfs /usr/bin/apt-get -y --force-yes install binutils kmod
LC_ALL=C chroot $rootfs 
/usr/bin/apt-get -y --force-yes install apt-utils dialog locales
&& dpkg-reconfigure locales && dpkg-reconfigure tzdata
LC_ALL=C chroot $rootfs 
/usr/bin/apt-get -y --force-yes install
dhcp3-client udev netbase ifupdown iproute ssh iputils-ping wget net-tools ntpdate vim less LC_ALL=C chroot $rootfs su -c "echo \"root:blankon\" | chpasswd" LC_ALL=C chroot $rootfs su -c "sed -i -e 's/KERNEL\!=\"eth\*|/KERNEL\!=\"/' /lib/udev/rules.d/75-persistent-net-generator.rules"
LC_ALL=C chroot $rootfs dpkg-reconfigure locales
LC_ALL=C chroot $rootfs dpkg-reconfigure tzdata

cat > $rootfs/etc/fstab << EOF
/dev/mmcblk0p2 / ext4 noatime,nodiratime  0  0
/dev/mmcblk0p1 /boot vfat defaults  0   0

Pasang Kernel

mount /dev/mmcblk0p1 $rootfs/boot
touch $rootfs/boot/start.elf
mkdir $rootfs/lib/modules
ROOT_PATH=$rootfs BOOT_PATH=$rootfs/boot rpi-update
echo "dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait" > $rootfs/boot/cmdline.txt

Bonus: Menambah Satu Pengguna

LC_ALL=C chroot $rootfs 
/usr/bin/apt-get -y --force-yes install
sudo LC_ALL=C chroot $rootfs addgroup blankon LC_ALL=C chroot $rootfs chroot $rootfs useradd blankon -g blankon -G adm,disk,sudo,audio,video,plugdev -m LC_ALL=C chroot $rootfs su -c "echo \"blankon:blankon\" | chpasswd"


LC_ALL=C chroot $rootfs /usr/bin/apt-get clean
umount $rootfs/boot
umount $rootfs/dev/pts
umount $rootfs/proc
umount $rootfs


Colok ke Raspberry Pi dan berharap tidak ada masalah.

Debootstrap Blankon 8.0

Debootstrap Blankon 8.0

BlankOn Glow On The Dark

Saya mengunduh dan memasang berkas paket debian debootstrap dari repositori BlankOn di Kambing (versi 1.0.42 saat penulisan). Sayangnya, paket deboostrap tersebut tidak mengandung BlankOn. Tidak terima dengan keadaan itu, saya pun mencari berkas konfigurasi Rote. Saya sudah menghapus satu partisi penting dengan iman teguh bahwa  Rote sudah tersedia. Harus!

Dari daftar perubahan, nampak bahwa skrip Rote merupakan sebuah symlink dari Ombilin. Yak, saya pun berbinar-binar. Berikut cara pasang Rote ala saya.

Lengkapi Skrip Debootstrap Rote

Pertama, pasang deboostrap:

$ sudo apt-get install debootstrap

Kedua, unduh skrip Ombilin dan buat symlink Rote ke berkas Ombilin tersebut.

$ wget http://dev.blankonlinux.or.id/export/rote%2Cdebootstrap%2C29/rote/debootstrap/scripts/ombilin
$ sudo mv ombilin /usr/share/debootstrap/scripts
$ sudo ln -s /usr/share/debootstrap/scripts/ombilin /usr/share/debootstrap/scripts/rote

Ya, begitu, deh. Dengan ini, kita sudah siap memasang Rote dengan skrip baru. Asumsi saya, sebuah partisi kosong telah dikaitkan ke “/mnt”.

Debootstrap Seperti Biasa (Tidak Juga, Sih)

Saat penulisan, menggunakan repositori Kambing terjadi kegagalan dengan pesan sebagai berikut:

E: Couldn't download packages: libdb5.1

Malas juga mensinkron ulang Kambing. Apalagi ini sudah malam, Kambing biasanya lagi sinkron dengan banyak repositori. Ya, sudah, saya menggunakan repositori utama BlankOn:

$ sudo debootstrap rote /mnt http://arsip.blankonlinux.or.id/blankon/

Setelah selesai, seperti biasa kaitkan beberapa direktori khusus:

$ sudo mount -o bind /dev /mnt/dev
$ sudo mount -t proc none /mnt/proc
$ sudo mount -t sysfs none /mnt/sys
$ sudo mount -t devpts none /mnt/dev/pts

Yak, selanjutnya tinggal pasang-pasang.


Eh, iya, lupa… masuk dulu:

$ sudo chroot /mnt /bin/bash

Pada saat penulisan ini, paket “blankon-desktop” tidak dapat terpasang karena membutuhkan paket-paket di luar repositori “main”. Ini wajar, karena berbeda dengan Ubuntu, Debian memutuskan untuk tidak memasukkan paket-paket firmware perangkat keras yang tidak bebas ke repositori utama. Mungkin karena Rote baru saja transisi dari Ubuntu ke Debian, maka berkas-berkas demikian tidak disunting terlebih dahulu.

Hey, sebuah desktop yang keren bukan berarti sudah sempurna. Mungkin di rilis berikutnya akan lebih sempurna. Sekarang saja sudah keren, apa lagi nanti? 🙂

Ya, sudah, saya tambahkan saja beberapa repositori sekaligus. Saya menggunakan Kambing baru kalau tak ada mencari ke Arsip Blankon. Itu sebabnya, Kambing di urutan pertama. Ini isi “sources.list” saya:

deb http://kambing.ui.ac.id/blankon rote main restricted extras extras-restricted
deb http://arsip.blankonlinux.or.id/blankon rote main restricted extras extras-restricted

deb http://kambing.ui.ac.id/blankon rote-security main restricted extras extras-restricted
deb http://arsip.blankonlinux.or.id/blankon rote-security main restricted extras extras-restricted

deb http://kambing.ui.ac.id/blankon rote-updates main restricted extras extras-restricted
deb http://arsip.blankonlinux.or.id/blankon rote-updates main restricted extras extras-restricted

Yak, perbaharui daftar paket:

# apt-get update

Pasang BlankOn:

# apt-get install blankon-desktop

Yak, pada tahap ini saatnya menyapa anak, kekasih, atau orang tua Anda. Sudahkah Anda bersosialisasi hari ini?

Pasang Paket-paket Penting


Ada “linux-image-generic” atau “linux-image-686”. Kalau yang pertama bakal memasang kernel versi 3.0 dan terakhir memasang 3.2. Saya lebih suka kernel terbaru, apalagi ada regresi pengaturan daya di kernel-kernel terdahulu.

# apt-get install linux-image-686

Ada 24,8 MB paket yang hendak diunduh. Santai lagi….

Perkakas Sistemberkas

Yak, saya menggunakan LVM2 dan ReiserFS. Jadi, saya perlu menambahkan keduanya:

# sudo apt-get install reiserfsprogs lvm2

Saya tidak yakin apa perlu memasang “ntfs-3g” untuk membaca partisi NTFS. Nanti saja. Saya memiliki skema partisi LVM, jadi agak ribet. Mungkin Anda memiliki satu partisi khusus yang berdedikasi sehingga proses ini tidak perlu dilakukan.

Persiapan Untuk Menyalakan Ulang Komputer

Keluar dari CHROOT

Keluar dari “chroot” dan lepas semua kaitan.

# exit
$ sudo umount /mnt/proc
$ sudo umount /mnt/sys
$ sudo umount /mnt/dev/pts
$ sudo umount /mnt/dev
$ sudo umount /mnt

Saya tetap memilih GNU/Linux Ubuntu 12.04 saya sebagai sistem operasi utama. Jadi, saya perlu mengonfigurasi ulang GRUB2 saya:

$ sudo dpkg-reconfigure grup-pc

Yak, tinggal “next”-“next” saja.  Nanti pengonfigurasi akan menemukan partisi BlankOn dan entri GRUB-nya.

Dunia Tak Seindah Itu Tapi Bersyukurlah

Yak, ternyata ada konfigurasi-konfigurasi tambahan yang harus digunakan. Beberapa paket sepertinya harus dipasang. Yang pasti, shortcut tidak berfungsi di Manokwari. Namun, saya terkagum-kagum betapa cepatnya BlankOn dari posisi mati ke DM. Wow!

Kudos buat pengembang. Saya masih ingin eksplorasi lagi, tapi mata sudah berat. Ini sudah jam setengah tiga pagi. Caw!

Skrinsut BlankOn

Skrinsut BlankOn minimalis belum diperlakukan. 🙂

Memasang Ubuntu Precise dari BlankOn Pattimura

Memasang Ubuntu Precise dari BlankOn Pattimura


Inti dari tulisan ini adalah memasang menggunakan debootstrap. Ada beberapa alasan yang menyebabkan memasang Ubuntu Precise dengan menggunakan metode ini. Kalau saya:

  1. Saya menggunakan LVM dan CD pemasang Ubuntu tidak mendukung LVM.
  2. Saya suka menggunakan debootstrap.
  3. Beberapa konfigurasi dasar di BlankOn disalin oleh debootstrap sehingga saya terbantu.
  4. Saya ingin mencoba yang baru dan proses ini mengedukasi saya.
  5. Saya kurang kerjaan dan pengen iseng-iseng.

Persiapan Sebelum Debootstrap

Ada beberapa langkah persiapan:

  1. Memasang paket debootstrap dari Ubuntu Precise.
  2. Mempersiapkan partisi yang dibutuhkan.

Memasang Paket Debootstrap dari Ubuntu Precise

Paket debootstrap dari Pattimura belum memuat Precise. Untuk itu, kita perlu memasangnya dari repositori Precise. Hal ini bisa dilakukan karena debootstrap dapat dipasang di semua arsitektur (arch=All). Anda dapat mengunduh sendiri lalu menggunakan dpkg atau cukup klik tautan ini di peramban Anda agar otomatis terpasang. Kalau saya, sih, memilih cara yang kedua. 🙂

Mempersiapkan Partisi

Saya asumsikan partisi telah tersedia. Dalam contoh saya, saya memberi partisi sebagai “/dev/mapper/Linux_LVM-UbuntuLucid”. Biasalah, sebelumnya saya coba-coba Ubuntu Lucid. Biar afdol, format dengan sistemberkas kesukaan: [Hati-hati, perintah ini menghapus isi partisi. PASTIKAN TIDAK ADA DATA PENTING]

$ sudo mkfs.reiserfs /dev/mapper/Linux_LVM-UbuntuLucid -l "Ubuntu 12.04"

Saya suka sekali memberi label pada setiap partisi. Praktik ini sangat berguna bila Anda bekerja di Pusat Data dan melibatkan banyak partisi. Kali ini saya memberi label “Ubuntu 12.04” untuk membedakan Pattimura dengan Precise.

Lanjut Debootstrap

Lakukan langkah-langkah yang biasa dilakukan saat debootstrap, yakni:

  1. Mengaitkan (mount) partisi yang mau dipakai ke sebuah direktori.
  2. Melakukan debootstrap ke direktori tersebut.
  3. Mengaitkan sistemberkas khusus ke sub-sub direktori yang diperlukan.

Mengaitkan Partisi

Kaitkan partisi yang telah dipersiapkan ke sebuah direktori kosong; saya menggunakan “/mnt”:

$ sudo mount /dev/mapper/Linux_LVM-UbuntuLucid /mnt/

Pasang Paket Dasar Ubuntu

Memasang paket-paket dasar Ubuntu Precise dengan debootstrap.

sudo debootstrap precise /mnt/ http://kambing.ui.ac.id/ubuntu/

Kaitkan Sistemberkas Khusus

Sebelum melakukan modifikasi lebih lanjut, pasang sistemberkas khusus. Hal ini diperlukan karena ada beberapa paket yang membutuhkan informasi kernel yang berjalan. Mereka memerlukan akses ke perangkat keras agar dapat terpasang dengan baik. Untuk itu, ada tiga buah sistemberkas khusus yang diperlukan:

Dulu ada sistemberkas devfs yang mengonfigurasi direktori dev. Lalu ada juga skrip MAKEDEV yang mengisi direktori tersebut dengan berkas-berkas khusus. Sekarang, kita hanya perlu menautkan /dev saja karena sistem modern sudah menggunakan udev.
Sistem berkas ini digunakan untuk mengemulasi lingkungan terminal. Biasanya digunakan oleh XTerm, SSHd, dan bahkan aplikasi pemaket Debian untuk membaca terminal.
Sistemberkas ini berisi informasi kernel. Informasi itu misalnya proses yang berjalan dan propertinya, sistemberkas yang terpasang, dan lain sebagainya.
Sysfs adalah sebuah sistem berkas yang disediakan untuk aplikasi-aplikasi dapat mengakses perangkat-perangkat keras yang ada.

Mari pasang keempat sistemberkas tersebut:

$ sudo mount /dev/ /mnt/dev -o bind
$ sudo mount none /mnt/dev/pts -t devpts
$ sudo mount none /mnt/proc -t proc
$ sudo mount none /mnt/sys -t sysfs

Partisi “/mnt” sampai saat ini telah siap untuk digunakan sebagai partisi utama (root partition).

Masuk Ke Direktori Tersebut

Mari masuk ke direktori tersebut untuk konfigurasi lebih lanjut. Untuk masuk, digunakan chroot yang mengemulasi lingkungan konsol dengan menjadikan sebuah direktori menjadi lingkungan tersendiri. Lingkungan yang berjalan tergantung direktori tersebut. Banyak sistem operasi baru (termasuk Ubuntu) menggunakan Dash dari pada BASH sebagai program konsolnya. Kebetulan saya lebih suka BASH.

Mari masuk ke lingkungan sistem baru kita dengan menggunakan BASH yang terpasang di sana.

$ sudo chroot /mnt /bin/bash

Pemasangan Lingkungan Dasar

Ada beberapa langkah untuk memasang Precise:

  1. Mempersiapkan repositori (opsional karena yang utama ditambahkan otomatis oleh debootstrap).
  2. Memasang dukungan Bahasa Indonesia
  3. Mengonfigurasi waktu sistem.
  4. Memasang perkakas sistem berkas.
  5. Memasang desktop.
  6. Menambah pengguna baru.
  7. Memasang kernel Linux.

Memasang Repositori Cadangan (Opsional)

Ubuntu Precise saat ini masih versi alfa. Artinya, banyak sekali perubahan yang terjadi sehingga repositori masih belum stabil. Perubahan-perubahan ini menyebabkan pencerminan lokal seperti Kambing dan Indika membutuhkan waktu lebih lama untuk sinkronisasi dengan repositori utama.

Kalau Anda memiliki akses Internet lumayan, silakan kunjungi daftar pencerminan Ubuntu dan periksa situs-situs yang Up-to-date. Saya memilih menggunakan situs dari Jepang, JAIST sebagai situs cermin tambahan.

Setelah memutuskan, saya menambahkan situs pencerminan tersebut ke berkas sources.list saya. Di dalam informasi tentang JAIST, saya ubah “Display sources.list entries for: ” menjadi “Precise (12.04)”.Lalu setelah itu saya menyalin dua baris di bawahnya yang berubah menjadi konfigurasi sources.list untuk Precise.

Langkah selanjutnya menambahkan dua baris tersebut ke sources.list. Saya tetap menggunakan Kambing sebagai situs utama, sehingga saya menambahkannya dua baris tersebut di akhir baris.

BONUS: Karena ViM belum terpasang, saya memberikan dua opsi untuk memasang repositori cadangan.

Cara L33t

Lakukan langkah berikut di dalam lingkungan chroot.

# cat >> /etc/apt/sources.list << PUTUS

deb http://ftp.jaist.ac.jp/pub/Linux/ubuntu/ precise main
deb-src http://ftp.jaist.ac.jp/pub/Linux/ubuntu/ precise main

Cara Biasa

Buka terminal satu lagi dan tambahkan dua baris entri deb dan deb-src tersebut.

$ sudo gedit /mnt/etc/apt/sources.list

Tambahkan dua entri setelah entri repositori utama dan simpan berkas tersebut.

Perbaharui Daftar Paket

Setelah masuk ke dalam lingkungan chroot, entah Anda memutuskan untuk menambah repositori atau tidak, jangan lupa memperbaharui daftar paket.

# apt-get update

Pasang Bahasa Indonesia

Sebagai seorang Indonesia, saya cinta Bahasa Indonesia. Saya lebih suka melihat kata “Sedang memproses pemicu untuk gnome-menus … ” dari pada versi bahasa Inggrisnya. Itu sebabnya, saya tidak ingin langkah ini opsional.

# apt-get install language-pack-id

Konfigurasi Waktu

Untuk mengonfigurasi waktu, lakukan langkah berikut:

# dpkg-reconfigure tzdata

Lalu pilih Asia.

Memilih Asia

Pilih Asia

kemudian Jakarta.

Memllih Jakarta.

Memilih Jakarta.

Untuk Anda yang berada di zona waktu selain Indonesia Barat (WIB), pilih Jayapura untuk Indonesia Timur (WIT) atau Makassar untuk Indonesia Tengah (WITA).

Memasang Perkakas Sistemberkas

Secara baku Ubuntu hanya memasang perkakas untuk EXT3, EXT4, NFS, CRAMFS, dan FAT32. Padahal, saya menggunakan LVM dan di atasnya terpasang ReiserFS. Agar sistem dapat digunakan saat nanti di-boot, saya harus memasang perkakas untuk LVM dan ReiserFS.

# apt-get install lvm2 reiserfsprogs

Mungkin jika Anda menggunakan XFS:

# apt-get install xfsprogs

Atau ada partisi NTFS:

# apt-get install ntfs-3g

Memasang Desktop

Sekarang saatnya memasang desktop Ubuntu. Anda bisa memasang Kubuntu, Lubuntu, Xubuntu, atau bahkan megonfigurasi sendiri. Tetapi, untuk kesederhanaan saya memilih untuk memasang yang baku dari Ubuntu.

# apt-get install ubuntu-desktop

Saat proses pemasangan ini berlangsung Anda jangan lupa ngopi, salam ke tetangga, ajak main anak Anda, atau lihat-lihat status gebetan di media sosial. Oh, sudah makan, belum?

Menambahkan Pengguna Baru

Tambahkan satu atau dua pengguna baru. Misalnya saya menambahkan satu pengguna baru:

# adduser jp
Menambhakan pengguna 'jp' ...
MEnambah grup baru /etc/skel' ...
Masukkan sandi lewat UNIX baru:
Masukkan ulang sandi lewar UNIX baru:
passwd: password updated successfully
Changing the user information for jp
Enter the new value, or press ENTER for the default
        Full Name []: Jan Peter Alexander Rajagukguk
        Room Number []:
        Work Phone []:
        Home Phone []:
        Other []:
Apakah informasi ini benar? [y/N] y

Tambahkan hak administrator kepada pengguna yang berhak. Misalnya akun saya.

# adduser jp sudo

Ubuntu Desktop sudah memasang sudo dan grup “sudo” otomatis ditambahkan sebagai grup administrator. Silakan cek dengan perintah “visudo” untuk mengetahui grup apa saja yang dikonfigurasi demikian.

Memasang Kernel

Langkah selanjutnya adalah memasang kernel. Saya pilih yang generik saja.

# apt-get install linux-image-generic

Proses pemasangan ini juga memasang GRUB PC (alias GRUB2). GRUB PC akan menanyakan partisi khusus yang hendak Anda pasang. Pilihkan cakram utama Anda, biasanya sih “/dev/sda”. Gunakan tombol panah atas dan bawah untuk navigasi. Tekan tombol spasi untuk memilih.

Pilih /dev/sda

Pilih /dev/sda (cakram keras utama)

Sampai tahap ini sistem sudah siap untuk digunakan. Selanjutnya kita akan bersih-bersih.

Bonus: Beberapa Langkah Tambahan

Saya menyertakan bonus untuk beberapa langkah tambahan untuk menyempurnakan pemasangan Precise ini, yakni:

  1. Memasang aplikasi-aplikasi dasar favorit.
  2. Memasang SSH.
  3. Mengonfigurasi direktori rumah (home) dan direktori lainnya.

Memasang Aplikasi Favorit

Saya suka memakai ViM.

# apt-get install vim

Memasang SSH

SSH server seringkali tidak dipasang, tetapi, saya suka mengakses laptop saya untuk menyalin berkas-berkas penting (misalnya anime, dokumen kantor, dll.) dari komputer lain.

# apt-get install ssh

Langkah berikut opsional, tetapi saya ingin agar konfigurasi SSH saya di BlankOn dan di Ubuntu ini sama. Untuk itu, buka jendela terminal lain dan salin berkas-berkas konfigurasi SSH.

$ sudo cp /etc/ssh/* /mnt/etc/ssh/

Saya lakukan ini supaya kunci SSH di BlankOn dan Ubuntu sama. Dengan ini kalau mau masuk dari mesin lain, klien tidak mencurigai kunci yang berbeda setiap kali berganti sistem operasi.

Mengonfigurasi Partisi Lain

Untuk lebih gampang, silakan gunakan GEdit untuk memodifikasi fstab. Misalnya, di terminal lain Anda gunakan perintah:

$ sudo gedit /etc/fstab /mnt/etc/fstab

Lihat baris mana saja yang perlu ditambahkan. Kecuali partisi dasar, yang lainnya tambahkan saja. Saya menambahkan partisi rumah ke dalam fstab. Kebetulan saya memisahkan partisi rumah “/home” ke dalam partisi yang berbeda.

Pembenahan Sebelum Masuk Ke Ubuntu

Langkah-langkah yang perlu dilakukan sebelum komputer dinyalaulangkan untuk masuk ke dalam sistem baru.

Cara Malas

Langsung nyalaulangkan komputer Anda.

Cara Aang Anak Baik

Berikut langkah-langkah yang baik:

  1. Keluar dari lingkungan chroot dengan menekan tombol CTRL-D.
  2. Lepaskan kaitan sistemberkas yang telah kita pakai.oun
    $ umount /mnt/dev/pts /mnt/proc /mnt/sys /mnt/dev
  3. Baru nyalaulangkan komputer Anda.

Perbaikan Di Dalam Ubuntu Precise

Ada beberapa hal yang perlu diperbaiki:

  1. Dukungan Bahasa
  2. Entri GRUB untuk Opera

Dukungan Bahasa

Terus terang saya tidak tahu apa yang saya lakukan, karena Ubuntu ini versi masih alfa.

Saya masuk ke dalam Language Support dan memasang dukungan Bahasa Indonesia. Entah mengapa, Ubuntu malah memasang bahasa Inggris. Akhirnya, saya pancing dengan mengaktifkan bahasa Inggris dan memilih “Apply System-wide”. Kemudian, saya pilih Bahasa Indonesia dan Apply System-wide. Terakhir, saya membuang dukungan bahasa Inggris. Lalu saya menyalaulangkan Ubuntu saya.

Membetulkan GRUB

Saya ketika memasang Ubuntu Precise hanya menjumpai Ubuntu dan Windows XP saja pada entri GRUB. Untuk mendapatkan entri BlankOn, saya melakukan ini:

$ sudo dpkg-reconfigure grub-pc

Dan lanjutkan saja terus, nanti di akhir konfigurasi GRUB PC akan mencari kembali partisi-partisi yang ada sistem operasinya.


Demikian adanya.

Ubuntu Baru

Ubuntu Baru Saya

Lucid From Debootstrap

Lucid From Debootstrap

What scenarios does this would likely involved you in? Well, for instance:

  • Creating an Ubuntu system on your USB stick because your lack of faith to trust all of your system to GNU/Linux.
  • Creating new system from your Ubuntu stick because you have become the enlightened.
  • Creating a customized *buntu flavour because you have become one.
  • Killing time because you have insomnia. 😀

Most likely I’m in reason #4. This scenario is tested on GNU/Linux Debian and Ubuntu. I played with Unstable/Experimental and Lucid.

#0 Backup your data on USB stick.

Don’t tell me that I didn’t warn you! 😀

#1 Set the partition

Stick your USB and seek what is the node file it representated.

$ dmesg | tail

Now, it would come up something like




depending how funky your system is.

#2 Format the USB stick

$ sudo mkfs.reiserfs /dev/sdb1 -l "KEREN DEH"

I’m used to label the filesystem. This label is important that you may prevent from accidentally formatting that particular partition. (Been there, done that) Oh, before the holy war begin, let me warn you that my flavour on ReiserFS is subjective, stick with whatever your fave filesystem. Here the change: EXT3: mkfs.ext3, XFS: mkfs.xfs, JFS: mkfs.jfs

#3 Mount the filesystem

$ sudo mount /dev/sdb1 /mnt

#4 Debootstraping begins

$ sudo debootstrap lucid /mnt http://kambing.ui.ac.id/ubuntu/

The “

--arch amd64

” before “lucid” parameter is optional. It would come in handy if you are trying to make 64bit Ubuntu from 32bit system, vice versa. See the manpage for more information.

#5 Setup before chrooted to there

Mount all the important directory.

$ sudo mount /proc /mnt/proc -t proc

$ sudo mount /dev /mnt/dev -o bind

Optionally copy these files:

$ sudo cp /etc/hosts /mnt/etc

$ sudo cp /etc/resolv.conf


is deprecated on desktop because of the


being. But, it won’t hurt you if you still use it.

$ sudo cp /etc/fstab /mnt/etc

Don’t forget to edit the /mnt/etc/fstab and delete the root directory entry (find “/” and delete it) because we are using USB stick.

#6 Chrooted there

$ sudo chroot /mnt

#7 Add a user

This is important! Don’t let your system userless…

# adduser user

Make him/her an admin.

# addgroup user sudo

By default Lucid is making everybody in the sudo group to be an admin. If you are using another, you could add yourself a group:

# addgroup penguasa

echo “%penguasa ALL=(ALL):ALL” >> /etc/sudoers

(Or just type


to edit the file properly)

#8 Install kernel

There are few flavours of the kernel. Desktop user usually stick with generic.

# apt-get install linux-image-generic

This virtual package will install


in time this writing. If you want, you could search for another linux kernel with

# apt-cache search linux image

#9 Install grub

# apt-get install grub2

Usually, it would let you choose where it would like to install. Install it into USB stick’s Master Boot Record/MBR (/dev/sdb). If later you would like to install it, the sane way to install is:

# dpkg-reconfigure grub-pc

Or, if you’re the rock star:

# grub-install /dev/sdb

To have GRUB reconfigured, i.e. generates the GRUB menu, do:

# update-grub

#10 Install your flavour

# apt-get install kubuntu-desktop

#11 Get some sleep!

It’s already morning and you have a life? No? Well, you could go on and try your new system by restart to the system.