Soekris net4801 merupakan sebuah motherboard kecil yang banyak digunakan sebagai gateway maupun router wireless. Dengan alat ini jugalah aku mengerjakan Tugas Akhir yang bertemakan router wireless. Untuk lebih mengenal alat ini, silahkan lihat disini.
Agar alat ini berguna tentu saja aku perlu menginstal sebuah Operating System (OS) di dalamnya sehingga ia dapat berfungsi mirip seperti komputer biasa. Soekris ini memiliki media penyimpanan berupa Compact Flash (CF) yang dapat kita tentukan sendiri besarnya, nah di CF inilah aku akan melakukan instalasi. Aku menggunakan CF Sandisk Extreme III berukuran 2 GB. OS yang aku gunakan adalah Debian Etch, jadi nantinya ketika Debian telah terinstal maka ia akan langsung di boot otomatis dari CF. O ya, perlu diingat bahwa Soekris ini tidak memiliki port keyboard maupun monitor.
Oke, langsung aja.
Pertama persiapkan dulu:
- Komputer dengan OS Linux. Aku menggunakan laptop dan telah menginstal VMware di dalamnya. Jadi Linux yang kugunakan ada di WMware itu, gak langsung di hardisk. Namun kalo langsung di hardisk juga bisa. Linux yang kugunakan sebagai host adalah Debian Etch, sebenarnya yang lain juga bisa sih tapi karena aku menggunakan program Debootstrap untuk instalasi ke CF jadi kusarankan pilih Linux turunan Debian saja.
- Card Reader. Untuk bisa membaca CF tentu saja ini dibutuhkan, boleh pilih merek apa saja sesuai selera.
- File ISO Debian Etch untuk instalasi. Sebenarnya kalo mau instal langsung dari server Debian atau cdrom juga bisa. Server tempat file ISO dan instalasi dari server bisa dari http://kambing.ui.edu
Kita mulai yuk.
1. Masukkan CF ke card reader lalu plug card reader ke komputer hingga ia terdeteksi oleh Linux kamu. Di Debian ku, pada direktori “/dev” akan terdapat nama device “sdb”, tentu saja namanya dapat berbeda-beda tergantung urutan keberapa device yang ter-plug di Linux kamu. Jadi huruf b di belakang sd dapat menjadi a, b, c dan seterusnya. Untuk selanjutnya aku akan memakai nama sdb.
2. Membuat partisi di CF tadi. Karena aku tidak menginstall GUI di Debian jadi aku menggunakan program fdisk, kamu juga bisa menggunakan program partisi lainnya seperti GParted yang memiliki GUI. Cara partisi:
# su
# fdisk /dev/sdb
Program ini akan meminta kamu memasukkan perintah berupa huruf. Pertama hapus dulu semua partisi yang ada di CF (biasanya partisi defaultnya FAT32) dengan perintah “d”. Lalu buat partisi baru dengan perintah “n”. Lalu pilih primary partition dan buat 1 partisi saja. Kemudian seterusnya tinggal enter saja sampai selesai. Lalu masukkan “w” untuk menampilkan hasil partisi kamu. Disini aku gunakan seluruh kapasitas CF dan tidak memerlukan partisi swap.
3. Membuat format partisi. Gunakan program mkfs.
# mkfs.ext3 /dev/sdb1
Perhatikan nama device nya (sdb1, bukan sdb). Disini aku menggunakan format ext3 kalau mau ext2 juga bisa.
4. Membuat direktori sebagai mounting point dari CF ke Linux. Lalu me-mount isi CF ke direktori tersebut.
# mkdir /mnt/debian
# mount /dev/sdb1 /mnt/debian
Jika kamu masuk ke direktori “/mnt/debian” maka seharusnya kamu akan melihat ada direktori “lost+found”.
5. Instalasi Debian di CF menggunakan program debootstrap. Debootstrap adalah utility yang berguna untuk menginstal Debian dengan kelengkapan yang paling minim. O ya, selain Debian Ubuntu juga bisa. Jika kamu belum punya instal lah terlebih dulu.
# apt-get install debootstrap
Untuk instalasi Debian nya ada dua cara yang pernah kulakukan, yang pertama dari server langsung.
# debootstrap - -arch i386 etch /mnt/debian http://kambing.ui.edu/debian/
Atau dari file ISO seperti yang telah aku tuliskan sebelumnya di atas. Disini, kamu bisa meletakkan file ISO nya di “/mnt/iso”.
# debootstrap - -arch i386 etch /mnt/debian file:/mnt/iso
Instalasi butuh waktu. Bersabarlah sambil ngopi atau minum teh. Setelah instalasi selesai cobalah untuk mengecek kapasitas CF yang terpakai.
# df -ah
Perhatikan bahwa instalasi hanya memakan tempat 201 MB.
6. Masuk ke Debian yang telah terinstal di CF sebagai root.
# chroot /mnt/debian /bin/bash
7. Buat file bernama fstab di direktori “/etc”.
# nano /etc/fstab
Isi file tersebut seperti berikut (semuanya, termasuk tanda #).
# /etc/fstab: berisi informasi file system (tentu saja aku tidak mendefinisikan swap disini).
# file system mount point type options dump pass
/dev/hda1 / ext3 defaults 0 0
tmpfs /tmp tmpfs size=128m, mode=1777 0 0
proc /proc proc defaults 0 0
8. Mount file system yang telah didefinisikan tadi.
# mount /proc
9. Konfigurasi networking
# nano /etc/network/interfaces
Berikut contoh yang dapat kamu buat (semuanya, termasuk tanda #).
auto lo
iface lo inet loopback
# Jika menggunakan dhcp:
# auto eth0
# iface eth0 inet dhcp
# Contoh IP static
auto eth0
iface eth0 inet static
address 192.168.0.13
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
10. Setting DNS yang digunakan
# nano /etc/resolv.conf
Berikut contoh yang dapat kamu buat (semuanya, termasuk tanda #).
search dnsaku.local
nameserver 10.1.1.13
nameserver 192.168.9.13
11. Setting nama host
#echo DebianSoekris > /etc/hostname
Atau isi di /etc/hostname sebagai berikut.
127.0.0.1 localhost DebianHostName
# Ini untuk ipv6
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
12. Konfigurasi apt. Kamu bisa menggunakan sources.list default atau meng edit nya seperti berikut.
ddeb http://ftp.debian.org/debian etch main contrib non-free
deb-src http://ftp.debian.org/debian etch main conrib non-free
deb http://security.debian.org/ etch/updates main contrib non-free
deb-src http://security.debian.org/ etch/updates main contrib non-free
13. Instalasi dengan debootstrap tadi tidak menginstal kernel dan bootloader jadi aku perlu menginstalnya. Pertama cari dulu apakah di repo/cd kamu terdapat kernel yg diperlukan untuk debian etch ini (2.6.18-6-686).
# apt-cache search linux-image
Lalu instalasi initramfs-tools.
# apt-get install initramfs-tools
Selanjutnya instalasi kernel dan grub. Selain menggunakan grub kamu bisa juga menggunakan lilo sebagai bootloadernya.
# apt-get install linux-image-2.6-686 grub
Perintah ini akan menginstal kernel 2.6.18-686 dan grub
14. Konfigurasi grub
# mkdir -p /boot/grub
# cp /usr/lib/grub/i386-pc/* /boot/grub
# nano /boot/grub/menu.lst
Isi menu.lst seperti berikut (bitrate soekris aku set 57600 sama seperti di BIOS nya):
default 0
timeout 5
serial –unit=0 –speed=57600 –word=8 –parity=no –stop=1
terminal –timeout=5 serial console
title Wireless Mesh Node II
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-6-686 root=/dev/hda1 ro console=tty0 console=ttyS0,57600n8
initrd /boot/initrd.img-2.6.18-6-686
quiet
savedefault
boot
16. Keluar dari chroot dan install grub.
# exit
# grub-install - -no-floppy - -recheck - -root-directory=/mnt/debian /dev/sdb
17. Masuk lagi sebagai root ke CF lalu edit isi device.map.
# nano /boot/grub/device.map
Isinya seperti ini.
(hd0) /dev/hda
18. Edit file kernel-img.conf.
# nano /etc/kernel-img.conf
Agar file menu.lst dapat langsung terupdate pastikan isinya seperti ini.
do_symlinks = Yes
do_initrd = Yes
do_bootloader = no
do_bootfloppy = no
link_in_boot = no
relative_links = Yes
postinst_hook = update-grub
postrm_hook = update-grub
19. Konfigurasi serial console. Edit file inittab.
# nano /etc/inittab
Edit bagian yang nomor 1 saja seperti ini.
…
1:2345:respawn:/sbin/getty -L 19200 ttyS0 ansi
# 1:2345:respawn:/sbin/getty 38400 tty1
…
20. Finishing touch. Sebaiknya install dulu ssh server.
# apt-get install ssh
Lalu keluar dari root CF dan umount CF nya.
# exit
#cd /
# umount /mnt/debian
Lepaskan card reader dan keluarkan CF trus pasang CF ke Soekris. Lalu hubungkan Soekris ke komputer kamu dengan kabel null modem. Lalu jalankan HyperTerminal di Windows. Setting seperti ini: speed=57600 –word=8 –parity=no –stop=1. Lalu nyalakan Soekris. Atau kamu bisa langsung ssh ke Soekris. Masuklah dengan username root. Selain untuk Soekris instalasi Debian ke CF ini juga bisa untuk komputer biasa, tinggal setting di BIOS nya saja supaya kamu bisa boot dari CF.
O ya, aku juga sudah bisa menginstal Debian Etch di Soekris net4511 dengan CF Sandisk Ultra II ukuran 2 GB. Secara prinsipal caranya sama dengan yang diatas, namun karena versi processor net4511 adalah 486 maka kernelnya pilih yang 2.6.18-6-486. Tepatnya, pada langkah 13 diatas ganti hingga seperti ini: linux-image-2.6-486.
Selesai.