Ardian19ferry.wordpress.com
NETWORK FILE SYSTEM (NFS) di ubuntu 10.04 Ferry Ardian
[email protected] Http://ardian19ferry.wordpress.com
A. Dasar Teori Network File System (NFS) adalah salah suatu layanan (service)
yang dapat
memungkinkan suatu komputer untuk melakukan proses mount suatu direktori / peralatan pada komputer lain. Dengan menggunakan NFS, suatu komputer dapat berbagi file, data dan bahkan program antara sesama klien yang terhubung ke server utama. NFS juga memungkinkan suatu komputer untuk melakukan pengaktifan/penggunaan (mounting) peralatan pada komputer lain yang terhubung ke jaringan. Saat ini terdapat 2 versi NFS yaitu NFS versi 2 (NFSv2) dan NFS versi 3 (NFSv3). NFSv2 lebih lama tetapi sudah didukung oleh berbagai macam mesin dan sistem operasi. Sedangkan NFSv3 lebih baru dan mempunyai beberapa fitur tambahan misalnya pesan kesalahan yang lebih baik, kemampuan untuk menangani file yang ukurannya bervariasi. Redhat Linux 9 secara default menggunakan NFSv3. NFSv2 menggunakan protokol UDP untuk melakukan koneksi antara server dan client, sedangkan NFSv3 menggunakan protokil UDP dan TCP sekaligus.
Beberapa manfaat NFS diantaranya ialah : 1. lokal workstations menggunakan ruang disk lebih kecil karena telah menggunakan data yang disimpan pada mesin tunggal dan tetap dapat diakses oleh yang lainnya melalui jaringan. 2. Pemakai tidak harus membagi direktori home pada setiap mesin di jaringan. Direktori home dapat di set up pada NFS server dan tersedia melalui jaringan. 3. Divais
penyimpanan
drives dapat
seperti
digunakan
oleh
floppy mesin
disk,
CDROM
lainnya.
Ini
drives,
dan
mengurangi
ZIP
jumlah
media drives seluruhnya pada jaringan.
1
Ardian19ferry.wordpress.com
B. Terminologi NFS 1. NFS Server Merupakan komputer/host yang menyediakan sistem file(via direktori) yang dapat diakses oleh komputer lain. Langkah server adalah : a. Menyiapkan direktori yang akan di-share. b. Kemudian melakukan konfigurasi sharing direktori yang sudah disiapkan .
2. NFS Client Merupakan komputer/host yang memanfaatkan sistem file yang disediakan oleh NFS Server. Sedangkan langkah client adalah a. Menyiapkan direktori yang dipakai untuk menampung sharing direktori dari server. b. Kemudian melakukan konfigurasi pengambilan file lewat sharing dengan tempat penampungan telah disiapkan di langkah a.
Untuk melakukan hal tersebut NFS client memakai UDP (User Datagram Protocol) untuk mengirim
permintaan/request
I/O melalui
jaringan dengan
menggunakan Remote Procedure Call (RPC). Request ini akan diterima oleh NFS Server melalui proses daemon yang bernama nfsd. RPC adalah layanan (service) yang dikendalikan oleh suatu program yang disebut portmap. Untuk melakukan proses sharing
dan mount pada
NFS,
terdapat beberapa layanan yang bekerja secara bersama-sama yaitu : nfs — menjalankan proses RPC untuk melayani permintaan sistem file NFS. nfslock —
layanan tambahan yang
menjalankan proses
RPC
untuk
mengijinkan NFS client untuk mengunci file pada server. portmap — layanan RPC pada Linux yang merespon semua permintaan layanan RPC dan melakukan koneksi ke layanan RPC yang diminta.
Berikut ini adalah proses-proses RPC yang bekerja bersamasama di belakang layar untuk memfasilitasi terjadinya layanan NFS rpc.mountd — proses
ini
menerima
permintaan mount
(pengaktifan
2
Ardian19ferry.wordpress.com
device/direktori)
dan melakukan proses
verifikasi
sistem
file
yang
dieksport. Proses ini dijalankan secara otomatis oleh service NFS dan tidak membutuhkan konfigurasi dari user. rpc.nfsd — ini adalah proses utama NFS server yang bekerja pada kernel Linux untuk memenuhi kebutuhan NFS client . rpc.lockd — merupakan proses tambahan yang mengijinkan NFS client untuk mengunci file pada server. rpc.statd — Proses ini menjalankan Network Status Monitor (NSM) yaitu protokol RPC yang memberikan pesan kepada NFS client pada saat NFS server dijalankan ulang (restart). Proses ini dijalankan secara otomatis oleh service NFS dan tidak membutuhkan konfigurasi dari user. rpc.rquotad — Proses ini menyediakan informasi kuota pemakai (user quota) untuk remote user. Proses ini dijalankan secara otomatis oleh service NFS dan tidak membutuhkan konfigurasi dari user.
C. Installasi dan Konfigurasi 1. Login ke sistem Linux sebagai root. 2. Catatlah, berapa nomer IP dan nama host dari PC yang anda gunakan. Setelah itu, juga catat nomor IP komputer client (gunakan perintah ifconfig dan hostname). 3. Pastikan bahwa komputer server yang anda gunakan sudah terhubung ke komputer client (gunakan perintah ping). 4. Pastikan bahwa komputer server telah terhubung ke internet atau jaringan local (jaringan local yang memiliki linux server), digunakan untuk update Repository.
3
Ardian19ferry.wordpress.com
5. Tentukan file atau folder yang akan di-share
Instalasi dan konfigurasi NFS server 1. Langkah pertama yang dilakukan adalah menginstal kernel NFS server. Gunakan perintah : # apt-get install portmap nfs-kernel-server
4
Ardian19ferry.wordpress.com
Berikut tampilan screenshoot pada terminal linux server :
Berikut tampilan ketika telah selesai menginstal kernel NFS server :
5
Ardian19ferry.wordpress.com
2. Langkah kedua yang kita lakukan setelah selesai menginstal kernel NFS server adalah mengedit file exports ( /etc/exports ). Yang akan di-edit adalah memasukan file atau folder yang akan di-share. Command yang digunakan adalah : # nano /etc/exports
Berikut adalah tampilan command # nano /etc/exports :
Di /etc/exports, yang kita edit adalah memasukan IP client yang menjadi host dan dapat mengakses file yang di-share dari NFS server. Berikut tampilan /etc/exports yang telah di-edit :
6
Ardian19ferry.wordpress.com
Keterangan /etc/exports yang telah di-edit : /home
10.14.200.185(rw,sync,no_subtree_check)
/home
: file/folder dari NFS server yang akan di-share
10.14.200.185
: IP client yang di-share
rw
: read/writer, agar client dapat baca/tulis di file server. Selain rw, terdapa tjuga command ro.
ro
: yang artinya read only, client hanya dapat baca, dan tidak dapat meng-edit file yang di-share.
sync
: server merespon hanya sebuah request, dan melayani request lain setelah request yang sebelumnya selesai dilayani. Selain sync, terdapat juga command async.
async
:server merespon lebih banyak request dan lebih cepat, namun berbahaya (dapat mengakibatkan computer menjadi crash, dan data menjadi hilang atau corrupted).
no_subtree_check
: menonaktifkan pengecekan keseluruh folder secara detail. Opsi ini mengakibatkan keamanan yang kurang, namun meningkatkan kehandalan dalam beberapa keadaan (mempercepat proses).
Selain command diatas, kita juga dapat mengedit /etc/exports dengan command lain, seperti : # /home 192.168.0.10(rw,sync,no_subtree_check) 192.168.0.11(rw,sync,no_subtree_check) Artinya, ada dua IP client yang digunakan sebagai client, yaitu 192.168.0.10 dan 192.168.0.11. Atau # /home 192.168.0.0/255.255.255.0(rw,sync,no_subtree_check) Artinya, yang menjadi client pada NFS server adalah semua hosts yang berada pada jaringan 192.168.0.0 dengan subnet mask 255.255.255.0 Untuk lebih jelasnya, pelajari manual dari/etc/exports, dengan command : # man /etc/exports
7
Ardian19ferry.wordpress.com
3. Langkah selanjutnya adalah meng-exports file/folder yang akan di-share. Menggunakan command berikut : # exportsfs –ra Untuk lebih jelasnya, pelajari manual dari exports –ra, dengan command : # man exports –ra
4. Selanjutnya adalah kita restart portmap dan nfs-kernel-server. Dengan command : # /etc/init.d/portmap restart (restart portmap) # /etc/init.d/nfs-kernel-server restart (restart NFS kernel)
Setelah empat langkah diatas selesai kita lakukan, berarti NFS server telah selesai kita install dan konfigurasi. Selanjutnya, kita install dan konfigurasi NFS client.
Instalasi dan konfigurasi NFS client 1. Langkah pertama yang kita lakukan adalah instalasi NFS client, dengan command : # apt-get install portmap nfs-common
Berikut tampilan screenshootnya :
8
Ardian19ferry.wordpress.com
2. Setelah proses installasi selesai, selanjutnya kita edit /etc/hosts.deny, dengan command : # nano /etc/hosts.deny Berikut tampilan /etc/hosts.deny yang telah di-edit :
Keterangan dari folder yang di-edit diatas : Portmap:ALL, artinya memblock semua service dari semua host. Dengan mula-mula memblock semua host, maka hanya client dari /etc/hosts.allow yang dapat mengakses NFS server
9
Ardian19ferry.wordpress.com
3. Meng-edit /etc/hosts.allow Command yang digunakan adalah : # nano /etc/hosts.allow Berikut tampilan /etc/hosts.allow setelah di-edit :
Keterangan /etc/hosts.allow yang telah di-edit : Portmap:10.14.200.16 , pada hasil edit tersebut terdapat IP komputer yang digunakan sebagai NFS server. IP NFS server tersebut adalah 10.14.200.16. 4. Langkah selanjutnya, Pertama-tama kita buat terlebih dahulu folder baru di /home dari komputer client yang digunakan untuk menyimpan file/folder yang di-share dari komputer NFS server, dengan command : # cd /home
(untuk masuk ke direktori home)
# mkdir /nfs (membuat direktori baru dengan nama nfs yang berada di dalam direktori home)
Untuk memeriksa apakah direktori tersebut sudah ada atau belum, ketikan command berikut : # ls
(asumsi, lokasi saat mengetikan command ls adalah di direktori
home)
10
Ardian19ferry.wordpress.com
Selanjutnya, kita mount folder yang di-share yang berada di komputer NFS server. Command-nya adalah : # mount server_IP:/folder_yang_di_share (spasi) /folder_yang_akan_menyimpan_folder_dari_NFS_server
Contohnya adalah # mount 10.14.200.16:/home /home/nfs
Keterangan command diatas : Mount
: command untuk mengeksekusi perintah mount
10.14.200.16
: IP NFS server
/home
: folder di komputer NFS server yang di-share
/home/nfs
: folder di komputer client yang digunakan untuk menyimpan file/folder dari NFS server.
Setelah di-mount, kita sudah dapat mengakses file/folder dari komputer NFS server di komputer client.Berikut screenshootnya :
Screenshoot /home di komputer NFS server
11
Ardian19ferry.wordpress.com
Screenshoot /home/nfs di komputer client
12