Sophie

Sophie

distrib > Mandriva > 9.1 > ppc > media > contrib > by-pkgid > 67a73f0d1c9314800a8e1ca883f39b8e > files > 25

howto-text-id-9.0-1mdk.noarch.rpm

  Diskless Linux Mini-HOWTO
  Robert Nemkin, buci@math.klte.hu Diterjemahkan oleh Yaya
  Heryadi, yheryadi@necnusa.co.id
  V0.0.3, 12 September 1996 Terj. 8 January 1999

  Dokumen ini menjelaskan cara men-setup sebuah komputer Linux tanpa
  disk. Hak cipta dokumen ini dimiliki oleh Robert Nemkin, dengan GPL
  sebagai copyright policy. Penulis ingin mengucapkan terima-kasih
  kepada Bela Kis, bkis@cartan.math.klte.hu,  yang telah menterjemahkan
  dokumen ini ke dalam bahasa Inggris.
  ______________________________________________________________________

  Table of Contents


  1. Perubahan

  2. Cara men-setup sebuah komputer Linux tanpa disk

  3. Dokumen-dokumen yang terkait

  4. Hardware

  5. Ide dasar

     5.1 Men-setup PC
     5.2 Men-setup bootpd pada server
     5.3 Mengkonfigurasi bootpd pada server
     5.4 Memahami tftp
     5.5 Men-setup sebuah konfigurasi minimal Linux pada remote server
     5.6 Mengkonfigurasi server tftp
     5.7 Pekerjaan terakhir

  6. Persyaratan memory dan diskspace; Kecepatan

  7. Kemungkinan kesalahan

  8. Kesalahan-kesalahan dan kemungkinan pengembangan dokumen lebih lanjut.

  9. Catatan dari penterjemah



  ______________________________________________________________________

  1.  Perubahan

  V0.0.3  12 Sep 1996: Beberapa perbaikan terhadap kesalahan kecil


  2.  Cara men-setup sebuah komputer Linux tanpa disk

  Dokumen ini merupakan tulisan mengenai setup sebuah komputer Linux
  tanpa disk. Seringkali menjalankan Linux pada PC yang tidak memiliki
  baik hard disk maupun floppy disk diperlukan. Jika tersedia sebuah
  jaringan komputer, sebuah sistem UNIX  lain yang memiliki bootp, tftp,
  sebuah NFS server, dan sebuah pembakar eprom maka mengoperasikan Linux
  tanpa hard/floppy disk merupakan suatu hal yang mungkin.



  3.  Dokumen-dokumen yang terkait


  o  NFS-root Mini HOWTO

  o  Linux NET-2/3 HOWTO yang ditulis oleh Terry Dawson,
     94004531@postoffice.csu.edu.au

  o  /usr/src/linux/README mengenai cara mengkonfigurasi dan
     mengkompilasi kernel.


  4.  Hardware

  Semua yang diuraikan disini telah diuji menggunakan konfigurasi
  berikut:

  o  Sun-OS 4.1.3 sebagai boot server

  o  Slackware 2.3 + Linux 1.2.8 + wd 8013 ethercard

  o  Jaringan ethernet


  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:

  o  Jika komputer Anda bukan merupakan komputer yang tidak memiliki
     disk sama sekali, maka Anda dapat menggunakan sebuah program DOS
     yang kecil, atau

  o  Binary floppy image sudah terdapat didalam paket yang sama

     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.

  o  Jika Anda menggunakan kernel terakhir yang sudah stabil,
     linux-1.2.13, maka Anda harus melakukan patch terhadap kernel
     dengan file patch yang sudah termasuk kedalam paket nfsboot.

     Silahkan gunakan manual patch(1) sebagai referensi.

  o  Jika Anda mencoba menggunakan kernel terakhir namun belum stabil
     dari seri linux-1.3.x, maka Anda harus mengkonfigur pilihan nfs-
     root.

     Anda mungkin perlu, dapat pula tidak, mengkonfigur dukungan bagi
     block device (floppy atau hard disk), namun Anda harus mengkonfigur
     dukungan tcp/ip, wd ethernet card, nfs filesystem. Kemudian
     mengkopile ulang kernel seperti biasa.


  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:

  o  /etc/inetd.conf untuk menghapus tanda '#' diawal baris-baris
     berikut:

     # tftp  dgram   udp     wait    root    /usr/sbin/in.tftpd              tftpd   /export
     # bootps        dgram   udp     wait    root    /usr/sbin/in.bootpd     bootpd



  o  Menyisipkan atau menghapuskan tanda '#' dari baris-baris berikut di
     dalam file /etc/services


     bootps  62/tcp          # BOOTP server
     tftp    69/udp          # TFTP server



  o  Menjalankan ulang inetd dengan perintah


     kill    -HUP    <id proses yang dimiliki oleh inetd>




  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:

  o  sm berisi subnet mask

  o  ds berisi alamat dari Domain Name Server

  o  gw berisi alamat gateway default

  o  ht berisi jenis hardware media jaringan

  o  bt berisi nama dari file boot

  sesudah ini, setiap komputer harus memiliki sebuah baris:

  o  field pertama berisi nama komputer

  o  field hd berisi direktori tempat bootfile

  o  global template dapat dimasukkan kedalam field tc

  o  field ha berisi alamat hardware dari ethernet card

  o  field ip berisi alamat IP komputer tsb


  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:

  o  Simple tftp: berarti klien dapat mengakses kedalam seluruh sistem
     file. Lebih sederhana namun memiliki sebuah lubang besar dalam hal
     keamanan (setiap orang dapat mengambil password Anda menggunakan
     tftp)

  o  Secure tftp: server tftp menggunakan system call chroot.2 untuk
     merubah direktori root yang dimilikinya. Semua yang berada di luar
     direktori root yang baru menjadi tidak dapat diakses sama sekali.
     Oleh karena direktori chroot akan menjadi direktori root yang baru
     maka filed hd didalam bootptab harus mencantumkan keadaan baru ini.
     Misalnya: pada saat menggunakan insecure tftp, field hd berisi path
     lengkap dari direktori boot: /export/root/machine1. Pada saat
     menggunakan secure tftp dengan direktori /export sebagai direktori
     root, maka  direktori /export menjadi direktori  / dan isi dari
     field hd menjadi /root/machine1.

     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.



  6.  Persyaratan memory dan diskspace; Kecepatan

  Penulis telah melakukan pengujian namun hanya terbatas pada Slackware
  2.3; Untuk distribusi/versi lainnya angka-angka dibawah ini mungkin
  bervariasi.

  o  Diskspace: 28 MB + 6.5 MB/komputer

  o  RAM: Penulis menggunakan X dengan RAM 8 MB. Hanya 4 MB diperlukan
     untuk swap, menurut perkiraan penulis,  yang masing-masing dibuat
     untuk untuk setiap komputer didalam direktori /tmp. Jangan lupa
     untuk menjalankan mkswap.

  o  Kecepatan: Penulis tidak mendapatkan masalah dalam penggunaan
     sebuah komputer 486 DX2/66 dengan 8 Megs


  7.  Kemungkinan kesalahan


  o  Penulis menemukan suatu kesalahan aneh: daftar device yang terdapat
     didalam subdirektori /dev dari SunOS mengalami kerusakan sehingga
     penulis harus menjalankan ulang MAKEDEV dengan melakukan mounting
     subdirektori tadi kedalam sebuah komputer Linux berbasis disk
     (Penyebabnya adalah adanya perbedaan antara linux nfs dengan sunOS
     nfs: keduanya menggunakan 32 bit untuk nomor device Major maupun
     Minor, namun Linux menggunakan field sepanjang 16 bit untuk kedua
     penomoran tadi, SunOs menggunakan field sepanjang 14 bit untuk
     nomor device Major dan field sepanjang 18 bit untuk nomor device
     Minor).

  o  Pada saat Linux tanpa disk di-boot, tabel routing hanya berisi satu
     route menuju server tftp, sehingga Anda harus men-setup tabel
     routing yang benar. Anda memiliki dua pilihan yaitu:

  o  Mengkonfigurasi setiap rc.S untuk setiap komputer secara manual

  o  Menggunakan sebuah paket klien bootp dan menulis sebuah skrip yang
     bersifat umum untuk mensetup.


  8.  Kesalahan-kesalahan dan kemungkinan pengembangan dokumen lebih
  lanjut.


  o  Kutipan yang benar dari dokumen-dokumen yang terkait

  o  SunOs memiliki basis BSD. Diperlukan untuk memasukkan konfigurasi
     server berbasis SVR4 (e.g Solaris)

  o  Meskipun Linux sangat mirip dengan SunOS untuk menjadi server
     bootp/tftp, sebuah contoh menggunakan sebuah server berbasis Linux
     mungkin akan berguna.

  o  Update terhadap dokumen ini sehingga sesuai dengan paket etherboot
     yang ada saat ini.

  o  Perlihatkan perbedaan yang ada antara kernel versi 1.2.13  yang
     dilengkapi nfs root patched dengan kernel 1.3.x terbaru, yang
     berisi nfs-root patch.

  o  Perlu mencoba ethercard-ethercard lain selain dari wd8013

  o  Memasukkan informasi konfigurasi mengenai bootpc, sebuah klien
     bootp untuk Linux yang berguna untuk men-setup tabel routing yang
     benar.

  o  Kesalahan dalam pengetikan maupun atas kesalahan lainnya: silahkan
     melaporkannya ke buci@math.klte.hu.  Terima kasih.


  9.  Catatan dari penterjemah

  Penterjemah sudah berusaha menterjemahkan tulisan aslinya sedapat
  mungkin, namun tidak mustahil masih ada kekurangan dalam penterjemahan
  di sana-sini. Apabila ada saran-saran untuk memperbaiki penterjemahan
  tulisan ini silahkan disampaikan via e-mail ke penterjemah,
  yheryadi@necnusa.co.id,  atau koordinator id LDP, mdamt@linux.or.id.