Next Previous Contents

5. Ide dasar

Ide dasarnya adalah sebagai berikut: sebuah PC akan mendapatkan alamat IP dari sebuah server boot melalui protokol bootp, menggunakan 0.0.0.0 sebagai alamat IP awal, dan mendapatkan kernel melalui protokol tftp.

Melakukan boot melalui segment-segment (via router) bukan merupakan masalah sederhana, sehingga harus dipilih salah satu yaitu apakah meletakkan server dan komputer tanpa disk tadi keduanya didalam segmen LAN yang sama ataukah mengkonfigurasi sebuah alamat UDP helper didalam router yang Anda miliki dengan alamat bagi server. Untuk mendapatkan informasi lebih lanjut silahkan membaca manual produk router yang Anda miliki.

Ikutilah langkah-langkah berikut ini.

5.1 Men-setup PC

Ambillah paket nfsboot (paket ini tersedia di situs mirror linux favorit Anda di dalam direktori /pub/Linux/system/Linux-boot). Paket itu berisi sebuah booteprom image untuk wd8013 card yang langsung dapat di-burned in.

Ada beberapa cara alternatif untuk menyiapkan PC, yaitu:

Jika Anda memilih pilihan kedua maka Anda harus menulis image tadi ke dalam sebuah floppy menggunakan perintah dd.

Image tadi berisi sebuah klien bootp dan sebuah klien tftp. Anda juga harus menyiapkan sebuah kernel Linux, yang berisi pilihan nfs-root.

5.2 Men-setup bootpd pada server

Bootpd dapat Anda temukan dialam paket bootpd-2.4.tar.gz (yang terdapat di situs mirror linux favorit Anda di dalam direktori /pub/Linux/system/Network/boot.net). Ambilah paket itu, kompilasilah, dan instal. Jika komputer lain yang Anda miliki kebetulan Slackware Linux maka Anda dapat melewati langkah ini karena distribusi standarnya telah berisi bootpd. Daemon itu dapat dijalankan baik melalui pemberian perintah langsung

        bootpd -s

maupun menggunakan inetd. Dengan cara kedua Anda harus mengedit:

5.3 Mengkonfigurasi bootpd pada server

Terlebih dulu, bootpd memiliki sebuah file konfig yang disebut bootptab yang umumnya berlokasi di dalam direktori /etc. Anda harus memodifikasi file tsb untuk memasukkan alamat IP dari gateway Anda, dns server, serta alamat(-alamat) ethenet dari komputer(-komputer) yang Anda miliki. Contoh dari file /etc/bootptab:

global.prof:\
        :sm=255.255.255.0:\
        :ds=192.168.1.5:\
        :gw=192.168.1.19:\
        :ht=ethernet:\
:bf=linux: 
machine1:hd=/export/root/machine1:tc=global.prof:ha=0000c0863d7a:ip=192.168.1.140:
machine2:hd=/export/root/machine2:tc=global.prof:ha=0800110244e1:ip=192.168.1.141:
machine3:hd=/export/root/machine3:tc=global.prof:ha=0800110244de:ip=192.168.1.142

global.prof merupakan sebuah template umum untuk isian host, dimana field-field:

sesudah ini, setiap komputer harus memiliki sebuah baris:

5.4 Memahami tftp

TFTP (Trivial File Transfer Protocol) merupakan sebuah protokol transfer file, seperti ftp, namun lebih sederhana untuk membantu penulisannya kedalam EPROM. TFTP dapat digunakan dalam dua cara:

Hampir setiap implementasi UNIX berisi server tftp, mungkin Anda tidak perlu menginstal milik Anda sendiri.

5.5 Men-setup sebuah konfigurasi minimal Linux pada remote server

Konfigurasi Linux ini mungkin berisi paket-paket a, ap, n, dan x dari distribusi Slackware. Untuk menginstal lebih banyak adalah boleh saja; namun paket-paket diatas sudah mencukupi keperluan sebuah terminal X tanpa disk. Untuk melakukan instalasi Anda membutuhkan sebuah sistem Linux yang sudah jalan. Dapatkan beberapa disk space pada komputer remote kemudian export dan berikan izin untuk melakukan read-write. Mount-lah direktori yang telah dieksport tadi ke dalam suatu direktori (misalnya /mnt) didalam sistem file dari komputer Linux. Jalankan setup Linux dan rubahlah pilihan root di dalam setup dari / menjadi /mnt. Kemudian setup paket diatas seperti biasa. Jika Anda ingin menjalankan tidak lebih dari satu Linux tanpa disk maka tidak ada perubahan yang diperlukan. Disisi lain, jika Anda merencanakan untuk memiliki lebih dari satu komputer tanpa disk maka setup diatas tidak akan berjalan karena beberapa file dan direktori harus bersifat private terhadap komputer-komputer tersebut. Masalah tadi dapat diatasi dengan memindahkan direktori /usr (direktori ini tidak berisi data pribadi) lalu membuat sebuah subdirektori secara terpisah untuk setiap komputer tanpa disk tadi. Misalnya, jika /export/linux/machine1 dipasangkan kedalam /mnt maka struktur direktori sesudah setup awal akan berupa:

/export/linux/machine1/bin
/export/linux/machine1/sbin
/export/linux/machine1/lib
/export/linux/machine1/etc
/export/linux/machine1/var
/export/linux/machine1/usr

Sesudah Anda melakukan perubahan maka akan menjadi

/export/linux/machine1/bin
/export/linux/machine1/sbin
/export/linux/machine1/lib
/export/linux/machine1/etc
/export/linux/machine1/var
/export/linux/usr

Sekarang buatlah subdirektori-subdirektori bagi komputer lainnya. Dengan mengasumsikan bahwa komputer-komputer tadi Anda beri nama sebagai machine1, machine2, machine3, dst; maka Anda dapat menggunakan bash script berikut untuk men-setup direktori lainnya:

cd /export/linux
for x in machine2 machine3 ; do
                mkdir $x; cd $x
                (cd ../machine1; tar cf - *) | tar xvf -
                done
Kemudian, lakukan export berikut:

/export/linux/usr       hanya hak read bagi setiap orang
/export/linux/machine1  hanya ke machine1 dengan hak-hak rw, sebagai root
/export/linux/machine2  hanya ke machine2 dengan hak-hak rw, sebagai root
/export/linux/machine3  hanya ke machine3 dengan hak-hak rw, sebagai root
sebagai berikut:

Contoh berikut mengikuti format sintaks file eksport dari SunOs 4.1.3

# This file is /etc/export
# for remote linux X terminals by Buci
# this line is only once
/export/root/usr             -access=linuxnet
# these lines once for every host
/export/root/machine1       rw=machine1,root=machine1
/export/root/machine2       rw=machine2,root=machine2
/export/root/machine3       rw=machine3,root=machine3

Jangan lupa untuk menjalankan exportfs -a.

5.6 Mengkonfigurasi server tftp

Sekarang saatnya untuk mengkonfigurasi server tftp. Jika Anda tidak membutuhkan secure tftp maka semua yang perlu dilakukan menjadi sederhana karena klien-klien Anda dapat di-boot dari direktori /export.

Jika digunakan secure tftp maka Anda dapat membuat sebuah struktur direktori penuh dari /export/linux di bawah /tftpboot (dengan sebuah kernel yang riil dan symbolic links bagi komputer-komputer lainnya), atau menjadikan direktori /export sebagai direktori boot dari secure tftpd. Atau, apabila Anda memiliki sebuah direktori tftpboot yang terpisah maka, suatu hal yang sama, Anda hanya membutuhkan struktur direktori asli dengan sebuah kernel dan symbolic link untuk komputer-komputer lainnya. Anda dapat melakukan setup ini menggunakan perintah berikut:

mkdir -p /tftpboot/export/linux/machine1
cd /tftpboot/export/linux/machine1
cp /export/linux/machine1/<name of the kernel> .

kemudian, gunakan perintah berikut:

mkdir -p /tftpboot/export/linux/machine2
cd ../machine2 
ln -s ../machine2/<name of the kernel>

5.7 Pekerjaan terakhir

Terakhir, Anda harus menyisipkan

/sbin/mount nfs_server:/export/linux/usr /usr

pada baris pertama dari file /export/linux/>machinex</etc/rc.d/rc.S. di mana >machinex&;t; adalah machine1, machine2, dan seterusnya.


Next Previous Contents