Posts tagged ‘nfs’

Agustus 15, 2008

Redboot, NFS dan TFTP

Dalam development aplikasi untuk board embedded, misalnya berbasis ARM9TDMI, dengan storage berupa flash, metode untuk mencoba aplikasi tersebut salah satunya adalah melalui network. Mencoba langsung dengan mendownload aplikasi tersebut ke flash akan sangat riskan, mengingat ketahanan/endurance flash (misalnya NAND) terhadap operasi penulisan sangat terbatas. Jadi, dengan loading aplikasi (dan kernel image) lewat network akan jauh lebih aman. Ketika sudah siap untuk diimplementasikan, aplikasi (dan kernel image) tersebut baru didownload ke flash.

Program yang didownload adalah image linux kernel (zImage) dan direktori root filesystem untuk board target. Di sini, hanya akan diuraikan penggunaan nfs dan tftp untuk board embedded dengan bootloader Redboot. (untuk bootloader lain seperti grub, lilo, u-boot bisa lihat dokumentasi linux, hehehe…).

Program yang akan didownload akan tersimpan di server. Redboot di board target mengenal download file menggunakan trivial ftp, sehingga tftp akan digunakan untuk download file zImage sedangkan untuk root filesystem digunakan NFS dengan memasukkan parameter nfsroot=. Sehingga di server harus dijalankan tftp daemon dan nfs-server daemon.

Download file kernel image

RedBoot> load -r -b 0x00218000 -h 192.168.78.178 zImage-2.4.26-ts9
Using default protocol (TFTP)
Raw file loaded 0x00218000-0x002fe8fb, assumed entry at 0x00218000

Use nfs-exported directory dari server

RedBoot> fis load zImage
RedBoot> exec -c  "console=ttyAM0,115200 ip=dhcp nfsroot=192.168.78.178:/data panic=3s"

Option panic=3s membuat sistem akan reboot setelah 3s saat kernel panic.

Jadi, deh. Lingkung development aplikasi untuk embedded board telah siap.

Agustus 15, 2008

Network File System (NFS) Server di Puppy Linux

NFS Server memungkinkan user di komputer client mengakses file yang ada di server seolah-olah file tersebut ada di lokal. Detail tentang NFS ini ada di wiki. Terdapat distributed filesystem lain yaitu Andrew distributed file system (AFS). Dengan OpenAFS ini, file di server bisa diakses dari komputer client Windows. Hmmmm, mungkin nanti mau eksplore filesystem ini untuk membuat semacam NAS (Network Attached Storage).

OK, sekarang balik lagi ke NFS. Kalau di distro lain seperti Redhat, SuSE atau debian mungkin menginstall NFS server relatif lebih mudah. Tinggal menggunakan package manager untuk menginstall dan kemudian menjalankan daemonnya dari /etc/init.d. Tidak demikian untuk Puppy Linux (saya sudah terbiasa menggunakan distro ini, sangat cepat, ringan dan stabil sehingga tidak mau pilih yang lain, hehehe). Untuk menjalankan NFS server, perlu menginstall nfs-utils dari tarballnya yang bisa didapat dari sourceforge.

Pendahuluan

Paket nfs-utils, terutama untuk server, berisi program dan daemon untuk mengaktifkan nfs server, yaitu:

  1. exportfs: untuk membuat list file system NFS yang akan dieksport agar bisa dimount oleh client
  2. nfsstat: untuk memperlihatkan statistik NFS
  3. rpc.lockd: untuk memulai NFS lock manager (NLM) di kernel. Di kernel terbaru, program ini terload secara otomatis saat startup
  4. read more »