Kembali lagi bersama saya. Kali ini saya ingin share tentang NFS. Sebelumnya saya sudah share mengenai Intalasi NFS di CentOs7. Sekaran...

Debian Wheezy : NFS di Debian


Kembali lagi bersama saya. Kali ini saya ingin share tentang NFS. Sebelumnya saya sudah share mengenai Intalasi NFS di CentOs7. Sekarang saya ingin share tentang Instalasi NFS di Debian 7.2 Wheezy. Saya menggunakan repository online dikarenakan Internet yang cukup kencang di tempat kerja saya. 


Apa itu NFS ? Sistem berkas jaringan (Inggrisnetwork file system disingkat NFS) adalah sebuah kumpulan protokol yang digunakan untuk mengakses beberapa sistem berkas melalui jaringan. Spesifikasi NFS didefinisikan dalam RFC 1094, dan saat ini telah mencapai versi 3 yang didefinisikan dalam RFC 1813-menurut wiki

Jadi NFS itu adalah protokol jaringan yang digunakan untuk mengakses suatu berkas melalui sebuah jaringan. Mirip-mirip dengan FTP, jadi si NFS Client nanti bisa mengakses (mengedit ataupun mengambil) berkas yang telah di share oleh NFS Server. 

NFS ini sangat berguna karena si client hanya tinggal mengakses direktorinya saja tanpa harus memasukkan Username seperti di FTP. Bila kalian menginginkan sharing file yang cepat, maka inilah jawabannya. Sekarang kita masuk ke konfigurasi

1 Catatan Penting!
Saya menggunakan 2 Debian 7.2 , satu sebagai server dan satu lagi sebagai Client. B
·         NFS Server : IP address: 192.168.5.180
·         NFS Client : IP address: 192.168.5.xx

Saya menggunakan dua direktori yang nanti saya akan buat untuk NFS. Semua direktori berada di direktori root, yaitu :
·         /anjay = untuk opsi direktori mode standar (user bebas mengedit berkas)
·         /tapir = untuk opsi “no_root_squash” (user hanya bias mengambil)


2 Installing NFS

server:


Kita install paket NFS terlebih dahulu dengan perintah :
apt-get install nfs-kernel-server nfs-common


Lalu kita taruh NFS ini agar berjalan saat startup, dan jalankan 
service nfs restart


Konfigurasi client:


Di client Debian ini, kita hanya menginstall NFS tanpa kernel untuk servernya :
apt-get install nfs-common

3. Export Direktori Untuk Server

server:


Saya ingin membuat direktori baru pada root yaitu /anjay dan /tapir . Alasan saya menggunakan 2 direktori yang berbeda ini agar kita bisa mencoba 2 tipe mode untuk mengakses NFS Server ini. Direktori /anjay dibagikan untuk mode standar, jadi user atau siapapun bisa mengedit file berkas ini seperti user nobody dan grup ungroup. Sedangkan direktori /tapir  menggunakan opsi  "no_root_squash" dimana NFS Server bertanggung jawab penuh atas izin dari berkas tersebut (user dan group saja).   

Pertama-tama buat direktori /anjay  terlebih dahulu
mkdir /anjay
chown nobody:nogroup /anjay
chmod 755 /anjay

Direktori /tapir belum ada di server anda, buatlah terlebih dahulu dengan perintah:
mkdir /tapir
chown root:root /tapir
chmod 755 /tapir




Sekarang kita harus edit dikit nih file di /etc/exports  dimana kita bisa mengekspor (mengirim keluar) berkas untuk dibagikan ke seluruh NFS Client. Kita akan meng-ekspor direktori /anjay dan /tapir untuk ke client. Kalau anda ingin mempelajari lebih lanjut tentang Ekspor ini, ketikkan periintah:
man 5 exports


Sekarang kita harus edit sedikit file di exports nya:
nano /etc/exports
/anjay           192.168.0.101(rw,sync,no_subtree_check)
/tapir        192.168.0.101(rw,sync,fsid=0,crossmnt,no_subtree_check,no_root_squash)











  rw : memberikan akses read and write kepada client,
  no_root_squash : tidak ada penyamaan root pada client dengan root pada server,
  no_subtree_check : tidak ada pengecekan subtree pada direktori yang dimount,
  sync : untuk sinkronisasi antara perubahan di client dengan direktori yang sebenarnya di server.

Untuk mengaktifkan konfigurasi /etc/exports , kita restart kernel NFS Servernya :
/etc/init.d/nfs-kernel-server restart


4 Mounting the NFS shares on the Client

client:

Pertama kita harus membuat direktori untuk mout file NFS nya, contoh :
mkdir -p /mnt/nfs/anjay
mkdir -p /tapir

Lalu, sekarang kita coba untuk me-mounting 2 file NFS tersebut:
mount 192.168.0.100:/anjay /mnt/nfs/anjay
mount 192.168.0.100:/tapir /tapir

Kita cek, apakah 2 NFS tersebut sudah ter-mount oleh client atau belum :
df -h

[root@client ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_server2-LogVol00
                      9.7G  1.7G  7.5G  18% /
tmpfs                 499M     0  499M   0% /dev/shm
/dev/sda1             504M   39M  440M   9% /boot
192.168.0.100:/anjay   9.7G  1.7G  7.5G  19% /mnt/nfs/anjay
192.168.0.100:/tapir
                      9.7G  1.7G  7.5G  19% /tapir
[root@client ~]#


dan
mount

[root@client ~]# mount
/dev/mapper/vg_server2-LogVol00 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
192.168.0.100:/anjay on /mnt/nfs/anjay type nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)
192.168.0.100:/tapir on /tapir type nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)
[root@client ~]#

5 Testing

Sekarang kita coba di client, kita coba membuat file test.txt sebagai percobaan pada 2 NFS

client:
touch /mnt/nfs/anjay/test.txt
touch /tapir/test.txt

Sekarang, kita cek di server apakah folder yang sudah di kirim sukses atau tidak
server:
ls -l /anjay/

[root@server ~]# ls -l /anjay
total 0
-rw-r--r-- 1 nobody nogroup 0 Feb 02 16:58 test.txt
[root@server ~]#


ls -l /var/nfs
[root@server ~]# ls -l /tapir
total 0
-rw-r--r-- 1 root root 0 Feb 02 16:58 test.txt
[root@server ~]#


Catatan : Perbedaan kepemilikan di direktori NFS /anjay  bisa diakses nobody atau nogroup dan gak ada kepemilikan khusus di direktori ini. Berbeda dengan direktori NFS /tapir  , ini bisa hanya bisa diakses sebagai root untuk mengambil /tapir/test. yang kepemilikan nya dimiliki oleh user and group root.


6 Mounting NFS Shares At Boot Time
Instead of mounting the NFS shares manually on the client, you could modify /etc/fstab so that the NFS shares get mounted automatically when the client boots.

client:

Open /etc/fstab and append the following lines:
vi /etc/fstab
[...]
192.168.0.100:/anjay  /mnt/nfs/anjay   nfs      rw,sync,hard,intr  0     0
192.168.0.100:/tapir  /tapir   nfs      rw,sync,hard,intr  0     0

Instead of rw,sync,hard,intr you can use different mount options. To learn more about available options, take a look at

man nfs


To test if your modified /etc/fstab is working, unmount the shares and run mount -a:
umount /mnt/nfs/anjay
umount /tapir
mount -a


You should now see the two NFS shares in the outputs of
df -h
[root@client ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_server2-LogVol00
                      9.7G  1.7G  7.5G  18% /
tmpfs                 499M     0  499M   0% /dev/shm
/dev/sda1             504M   39M  440M   9% /boot
192.168.0.100:/home/client1   9.7G  1.7G  7.5G  19% /mnt/nfs/home/client1
192.168.0.100:/var/www
                      9.7G  1.7G  7.5G  19% /var/www
[root@client ~]#

and
mount
[root@client ~]# mount
/dev/mapper/vg_server2-LogVol00 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
192.168.0.100:/home/client1 on /mnt/nfs/home/client1 type nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)
192.168.0.100:/var/www on /var/www type nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)
[root@client ~]#

0 comments: