Seuntai kata hati dan pikiran Gw:

Bukan karena cantik dia pantas dicintai, tapi karena cinta lah yang menjadikannya tampak cantik. @13/08

Tanya-tanya mbah Google

18 Maret 2008

Install Slackware/Linux Via NFS dan Network Booting

Hari kamis sore minggu kemarin, lagi asyik ngobrol2 tentang linux, temen saya nyeletuk memohon bantuan. "Tolong dong install-in Linux di Laptop saya" begitu lah katanya. Saya pikir, tinggal install linux dari cd aja, maka saya penuhi permohonannya. Tapi tak disangka tak dinyana, laptopnya (Toshiba Dynabook Edisi Jepang) gak punya DVD/CD Drive, Floppy Drive dan gak bisa booting via USB... Wah masalah baru nih, dalem hati gw ngomong.

Terlanjur sudah mengiyakan membantunya, dan sekalian membantunya belajar linux (siapa tahu aja dia bisa lebih tahu dari Gw, dan besok-besok bisa ngajarin Gw) akhirnya Gw coba cari-cari bagaimana ngakalinnya. Di Slackware ada program Loadlin yang bisa buat booting slackware dari windows, tapi sayangnya loadlin hanya bisa berjalan dari pure DOS ( <=win98) sedangkan teman saya ini telah terinstall windows XP (yang gak punya mode Pure DOS, tetapi adanya Emulator dos) jadi Loadlin tidak bisa dijadikan solusi. Kemungkinan, hal ini karena program loadlin.exe berjalan pada real mode sedangkan emulator dos berjalan pada Protected mode.

Pilihan Lain yang mungkin adalah dengan booting via network (PXE). Untuk booting via network, ethernet card harus mendukung teknologi ini, dan untungnya kartu jaringan yang ada dipasaran saat ini (termasuk yang terpasang di laptop teman saya) telah mendukung PXE. Maka saya berusaha bagaimana caranya melakukan booting via network ini. Seharian pada jum'at kemarin saya browsing dan bertanya pada mbah Google dan menemukan situs http://alien.slackbook.org/dokuwiki/doku.php?id=slackware:pxe tentang cara booting installer slackware dari network dan menginstallnya dengan NFS.

Pada situs yang tadi telah saya sebutkan, ternyata membutuhkan paket-paket installan slackware, maka saya pun pergi ke kambing.ui.edu untuk mendownloadnya. Ternyata di structure tree-nya usb-and-pxe-installers, penasaran dengan isinya, saya pun melihat-lihat dan membaca README_PXE.TXT. Ternyata oleh Patrick Volkerding (pembuat slackware), proses dan file-file yang dibutuhkan pada situs yang saya dapat dari google tadi telah disertakan dalam slackware. dan ketika saya cek ternyata di cd installan slackware juga sudah ada (kalo gak salah di cd3). Maka saya pun melakukan instruksinya:

Kebutuhan pada sisi server:
  1. servis yang mengerti dan menangani protocol BOOTP, dislackware, kita bisa memanfaatkan dhcpd.
  2. servis untuk menangani pengunduhan (download) kode bootstrap oleh client (TFTP server). Slackware sudah disertakan tftp server.
  3. NFS server. ini juga udah disediain ama slackware
Jadi sebutulnya udah gak butuh apa di server, cukup slackware distro aja (gw make versi 12.0).
--------

Kebutuhan pada sisi client:
  1. Kartu jaringan dengan firmware PXE
  2. BIOS yang bolehin booting dengan kartu jaringan.
Kebetulan keduanya sudah dipenuhi laptop temen saya.
-------

Nah sekarang tinggal setting server dhcp, tftp, dan NFS di sisi server serta menyiapkan file-file yang dibutuhkan untukk booting dan install slackware di sisi client. tapi sebelumnya, supaya gampang baca tulisan setelah ini, saya kasih asumsi:
  1. IP pada jaringan berada antara 192.168.0.1 sampai 192.168.0.254
  2. semua server ada di laptop Gw, dan memiliki alamat IP 192.168.0.1
  3. DNS domainnya, gw pake "my.lan"
  4. Direktori penyimpanan file-file paket slackware di "/mirror/slackware"
  5. Direktori penyimpanan file-file yang dibutuhkan untuk booting untuk TFTP server di /tftpboot/slackware-12.0

Setting DHCP server
Untuk menyetting DHCP server, diperlukan perubahan pada file /etc/dhcpd.conf. untuk mempermudahnya sya langsung salin dhcpd.conf di README_PXE.TXT ke direktori /etc. saya menggunakan sample pertama (karena tidak ada client selain yang akan diinstall):

# dhcpd.conf
#
# Configuration file for ISC dhcpd
#
# If this DHCP server is the official DHCP server for the local
# network, the authoritative directive should be uncommented.
authoritative;
ddns-update-style none;

# Allow bootp requests
allow bootp;

# Point to the TFTP server:
next-server 192.168.0.1;

# Default lease is 1 week (604800 sec.)
default-lease-time 604800;
# Max lease is 4 weeks (2419200 sec.)
max-lease-time 2419200;

subnet 192.168.0.0 netmask 255.255.255.0 {
option domain-name "my.lan";
option broadcast-address 192.168.0.255;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.0.1;
option routers 192.168.0.10;
range dynamic-bootp 192.168.0.50 192.168.0.100;
use-host-decl-names on;
if substring (option vendor-class-identifier, 0, 9) = "PXEClient" {
filename "/slackware-12.0/pxelinux.0";
}

}

penjelasan:
# Allow bootp requests
allow bootp;
Dibutuhkan untuk menangani protocol BOOTP (booting via network)

if substring (option vendor-class-identifier, 0, 9) = "PXEClient" {
filename "/slackware-12.0/pxelinux.0";
}

Dibutuhkan untuk menentukan letak file yang dibutuhkan untuk booting (/slackware-12.0/pxelinux.0)

Setting TFTP server
Untuk meload daemon TFTP dan menentukan tftp_root ke /tftpboot diperlukan untuk meng-uncomment seting tftp pada file /etc/inetd.conf, yaitu baris
tftp  dgram  udp  wait  root  /usr/sbin/in.tftpd  in.tftpd -v -s /tftpboot -r blksize
dan me-restart rc.inetd
sh /etc/rc.d/rc.inetd restart

Setting NFS server
untuk men-share folder dengan NFS kita perlu menambahkan baris pada file /etc/exports.
/mirror/slackware       192.168.0.0/24(ro,sync,insecure,all_squash)
dan merestart rc.nfsd
sh /etc/rc.d/rc.nfsd restart

Setting File-file PXELinux
Agar Client bisa booting maka diperlukan beberapa file. File-file itu telah disertakan pada cd installan slackware atau mirro slackware seperti di kambing.ui.edu dan untuk file pxelinuxnya bisa diambil di /usr/lib/syslinux/pxelinux.0 (bukan di /usr/share/syslinux/pxelinux.0 seperti yang disebutkan pada README_PXE.txt) cukup salin file-file itu ke direktori tftp root (/tftpboot).
cp /usr/share/syslinux/pxelinux.0 /tftpboot/slackware-12.0/
cp /mirror/slackware/isolinux/message.txt /tftpboot/slackware-12.0/
cp /mirror/slackware/isolinux/f2.txt /tftpboot/slackware-12.0/
cp /mirror/slackware/usb-and-pxe-installers/initrd.img /tftpboot/slackware-12.0/
cp /mirror/slackware/usb-and-pxe-installers/pxelinux.cfg_default /tftpboot/slackware-12.0/pxelinux.cfg/default
cp -a /mirror/slackware/kernels /tftpboot/slackware-12.0/
Kalo udah, kita bisa mulai....

Memulai booting via network
Pada intinya, tinggal booting dengan network dari client. Tapi setiap PC/laptop caranya berbeda-beda. Secara garis besar, yang perlu dilakukan adalah meng-enable pilihan booting dari network (biasanya ada di bios) dan memilih booting pertama kali dari network (bisa ditentukan dari urutan boot priority di bios atau shrtcut tertentu). Pada laptop temen saya, saya cukup booting seperti biasa, lalu tekan CTRL+[kursor kanan] lalu pilih booting dari network, dan pilih PXE (di dynabook di perbolehkan menggunakan PXE ataupun EPX)

setelah bisa login... load module kartu jaringannya. Cukup jalankan perintah "network", kalo gak kedetect (gak berhasil kedetect) maaf sekali... anda belum beruntung.

Kalo sudah ke load, kartu jaringannya, kita lakukan install slackware seprti biasa.... ketik "setup".
Saat diminta menetukan source installan maka pilih NFS dan settingannya:
IP anda : 192.168.0.111 (apaan aja deh)
netmask: 255.255.255.0
gateway: 192.168.0.10
NFS server: 192.168.0.1
direktori Slackware di NFS server: /mirror/slackware
tinggal pilih paket-paket yang mau diinstall, dan setting-setting yang diperluin.


Sebetul sampai sini dah selesai, tapi ternyata gw punya masalah baru, LILO nya gak bisa keinstall. Tapi masalah ini sudah bisa saya selesaikan, tapi WinXP temen saya gak bisa boot lagi.

untuk masalah kedua saya sedang mengusahakan, kemungkinan menggunakan PXE juga untuk re-install windows (biar bisa repair), dan akan saya posting lagi lain waktu (dah kepanjangan sih... ini aja setengah hari ngetiknya) termasuk masalah menginstal LILO. Kedua masalah ini muncul karena kesalahan teman saya menyiapkan partisi harddisknya... udah ah... nanti aja lanjutin lagi, dah cape nih.

Bagikan tulisan ini di Facebook Anda

7 komentar:

  1. salam bro,
    bisa bantuin nginstall Slackware langsung dari Hardisk gak?
    Spek laptopku:
    Intel Celeron 431 MHz
    RAM: 64 MB
    CD ROM, Floppy A: dan USB gak bisa booting lagi. CD ROM dan Floppy A: nya udah rusak, booting USB gak bisa, pake PXE juga gak bisa.
    Jalan terakhir adalah menggunakan ISO yang ada di Hardisk tapi sampai sekarang blom nemu cara yang jitu.
    Moohon dibantu ya bro...
    thanks before...

    BalasHapus
  2. @maxxy:
    sayang sekali, setahu saya slackware belum bisa install via iso file. ngomong-ngomong dihardisk sudah terinstall OS apa? kalo masih make windows 98, mungkin bisa make ZIPslack.

    BalasHapus
  3. hehehe, habis dari kodel nihh, gw dah ngerti cara ngakalin laptop gw buat install xp :)

    gw liat logika lu pas benerin laptop gw, skr gw mau coba terapin pke windows xp home network boot + install windows

    ntar malem nyobain ahh,,,
    thanks anyway

    BalasHapus
  4. mau..nanya..nih...??

    kalo install windows dari harddisk bisa g ???

    alnya laptop ny g ad cd,floppy,lan,

    please help donk...

    thxz....

    BalasHapus
  5. @anonim
    Waduh... sedikit bingung Gw nih, laptopnya bisa booting via USB drive gak mas?? kalo bisa booting via USB, bisa dicoba pake floppy/cdrom external.
    Soalnya, kalo pun windowsnya sudah ada di hardisk, kan gak bisa booting :) jadi tetep gak bisa nginstall.

    BalasHapus
  6. mending pake netbootdisk...

    ente cari / donload tepatnya netbootdisk, trus bkin di floppy boot WIN ME/ XP nah.. nti boot dri floppy dah gtu tinggal baca share dri network..

    BalasHapus
  7. @Anonim Thx atas infonya, tapi dilaptop temen Gw gak ada yg namanya Floppy drive... jadi gak bisa make floppy disk.

    Laptop temen saya sudah berhasil di perbaiki windowsnya (pake cara PXE juga) tapi saya lupa posting... Jadinya caranya lupa juga :D
    Sebetulnya ini kesalahan saya, Maklum saya bukan master.. dan blog ini saya peruntukan untuk nulis oprekan2 saya supaya saya gak lupa. Eh saya malah lupa nulis di blog :P

    BalasHapus

Daftar Komentar Terbaru

Daftar Blog-Blog Gw

Blog Yg Biasa Gw Kunjungin (selain yg ada di side bar):