Panduan ini menjelaskan cara menyiapkan server NFS dan klien NFS di Debian Wheezy. NFS adalah singkatan dari Sistem File Jaringan; melalui NFS, klien dapat mengakses (membaca, menulis) berbagi jarak jauh di server NFS seolah-olah berada di hard disk lokal. Dalam Tutorial ini, saya akan menunjukkan kepada Anda dua ekspor NFS yang berbeda, ekspor direktori klien yang menyimpan file sebagai pengguna none/nogroup tanpa mempertahankan izin sistem file dan ekspor direktori /var/www yang mempertahankan izin dan kepemilikan file, sebagai diperlukan pada penyiapan server hosting.
1 Catatan Awal
Saya menggunakan dua sistem Debian Wheezy di sini:
- Server NFS:server.example.com, alamat IP:192.168.0.100
- Klien NFS:client.example.com, alamat IP:192.168.0.101
2 Memasang NFS
server:
Di server NFS kami menjalankan:
apt-get install nfs-kernel-server nfs-common
Kemudian kami membuat tautan startup sistem untuk server NFS dan memulainya:
klien:
Pada klien kita dapat menginstal NFS sebagai berikut (ini sebenarnya sama dengan di server):
apt-get install nfs-common
3 Mengekspor Direktori di Server
server:
Saya ingin membuat direktori /home/client1 dan /var/www dapat diakses oleh klien untuk menunjukkan dua mode akses berbeda dari server NFS. Direktori /home/client1 dibagikan dalam mode standar, jadi semua file yang ditulis ke direktori ini disimpan sebagai user none dan group nogroup. Untuk direktori /var/www saya menggunakan opsi no_root_squash yang menginstruksikan server nfs untuk mempertahankan izin dan kepemilikan file. Ini misalnya diperlukan ketika Anda ingin mengekspor direktori /var/www dari server web yang dikelola dengan ISPConfig 3
Pertama, saya akan membuat direktori /home/client1
mkdir /home/client1
chown none:nogroup /home/client1
chmod 755 /home/client1
Direktori /var/www kemungkinan besar ada di server Anda. Jika tidak, buatlah:
mkdir /var/www
chown root:root /var/www
chmod 755 /var/www
Sekarang kita harus memodifikasi /etc/exports di mana kita "mengekspor" share NFS kita. Kami menetapkan /home/client1 dan /var/www sebagai NFS yang dibagikan dan memberi tahu NFS untuk membuat akses ke /home/client1 sebagai pengguna bukan siapa-siapa (untuk mempelajari lebih lanjut tentang /etc/exports, formatnya dan opsi yang tersedia, lihat
man 5 ekspor
)
vi /etc/exports
/home/client1 192.168.0.101(rw,sync,no_subtree_check)/var/www 192.168.0.101(rw,sync,fsid=0,crossmnt,no_subtree_check,no_root_squash)
(Opsi no_root_squash membuat /var/www akan diakses sebagai root.)
Untuk menerapkan perubahan di /etc/exports, kita restart server kernel nfs
/etc/init.d/nfs-kernel-server restart
4 Memasang share NFS pada Klien
klien:
Pertama, kita buat direktori tempat kita ingin me-mount share NFS, mis.:
mkdir -p /mnt/nfs/home/client1
mkdir -p /var/www
Jika direktori /var/www sudah ada di server Anda, hentikan apache, ganti nama direktori dan buat direktori kosong baru sebagai mountpoint
/etc/init.d/apache2 stop
mv /var/www /var/www_bak
mkdir -p /var/www
Setelah itu, kita dapat memasangnya sebagai berikut:
mount 192.168.0.100:/home/client1 /mnt/nfs/home/client1
mount 192.168.0.100:/var/www /var/www
Anda sekarang akan melihat dua bagian NFS di output
df -h
[[email protected] ~]# df -h
Filesystem Ukuran Digunakan Avail Use% Dipasang di
/dev/mapper/vg_server2-LogVol00
8% /
tmpfs 499M 0 499M 0% /dev/shm
/dev/sda1 504M 39M 440M 9% 2.6 G. /mnt/nfs/home/client1
192.168.0.100:/var/www
9.7G 1.7G 7.5G 19% /var/www
[[[email protected] ~]#dan
pasang[[email protected] ~]# mount
/dev/mapper/vg_server2-LogVol00 aktif / ketik ext4 (rw)
proc on /proc ketik proc (rw)
sysfs aktif /sys ketik sysfs (rw)
devpts di /dev/pts ketik devpts (rw,gid=5,mode=620)
tmpfs aktif /dev/shm ketik tmpfs (rw)
/ dev/sda1 pada /boot ketik ext4 (rw)
none pada /proc/sys/fs/binfmt_misc ketik binfmt_misc (rw)
sunrpc pada /var/lib/nfs/rpc_pipefs ketik rpc_pipefs (rw)
192.168.0.100:/home/client1 pada /mnt/nfs/home/client1 ketik nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)
192.168.0.100:/ var/www di /var/www ketik nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)
[[dilindungi email] ~]#5 Pengujian
Di klien, Anda sekarang dapat mencoba membuat file uji pada share NFS:
klien:
sentuh /mnt/nfs/home/client1/test.txt
sentuh /var/www/test.txtSekarang buka server dan periksa apakah Anda dapat melihat kedua file pengujian:
server:
ls -l /home/client1/[[email protected] ~]# ls -l /home/client1
total 0
-rw-r--r-- 1 nobody nogroup 0 Feb 02 16:58 test.txt
[[email protected] ~]#ls -l /var/nfs[[email protected] ~]# ls -l /var/www
total 0
-rw-r--r-- 1 root root 0 02 Februari 16:58 test.txt
[[email protected] ~]#(Harap perhatikan kepemilikan berbeda dari file uji:bagian /home/client1 NFS diakses sebagai bukan siapa-siapa / nogroup dan dimiliki oleh siapa pun / nogroup; bagian /var/www diakses sebagai root, oleh karena itu /var/www/test .txt dimiliki oleh pengguna dan root grup.)
6 Memasang Bagian NFS Saat Booting
Daripada memasang share NFS secara manual pada klien, Anda dapat memodifikasi /etc/fstab sehingga share NFS dapat dipasang secara otomatis saat klien melakukan booting.
klien:
Buka /etc/fstab dan tambahkan baris berikut:
vi /etc/fstab[...]192.168.0.100:/home/client1 /mnt/nfs/home/client1 nfs rw,sync,hard,intr 0 0192.168.0.100:/var/www /var/www nfs rw,sync, keras,intr 0 0Alih-alih rw,sync,hard,intr Anda dapat menggunakan opsi pemasangan yang berbeda. Untuk mempelajari lebih lanjut tentang opsi yang tersedia, lihat
man nfsUntuk menguji apakah /etc/fstab Anda yang dimodifikasi berfungsi, unmount share dan jalankan mount -a:
umount /mnt/nfs/home/client1
umount /var/www
mount -aAnda sekarang akan melihat dua bagian NFS di output
df -h[[email protected] ~]# df -h
Filesystem Ukuran Digunakan Avail Use% Dipasang di
/dev/mapper/vg_server2-LogVol00
8% /
tmpfs 499M 0 499M 0% /dev/shm
/dev/sda1 504M 39M 440M 9% 2.6 G. /mnt/nfs/home/client1
192.168.0.100:/var/www
9.7G 1.7G 7.5G 19% /var/www
[[[email protected] ~]#dan
pasang[[email protected] ~]# mount
/dev/mapper/vg_server2-LogVol00 aktif / ketik ext4 (rw)
proc on /proc ketik proc (rw)
sysfs aktif /sys ketik sysfs (rw)
devpts di /dev/pts ketik devpts (rw,gid=5,mode=620)
tmpfs aktif /dev/shm ketik tmpfs (rw)
/ dev/sda1 pada /boot ketik ext4 (rw)
none pada /proc/sys/fs/binfmt_misc ketik binfmt_misc (rw)
sunrpc pada /var/lib/nfs/rpc_pipefs ketik rpc_pipefs (rw)
192.168.0.100:/home/client1 pada /mnt/nfs/home/client1 ketik nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)
192.168.0.100:/ var/www di /var/www ketik nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)
[[dilindungi email] ~]#7 Kredit
Tutorial ini didasarkan pada Tutorial Server Centos NFS dari Falko Timme.
8 Tautan
- Linux NFS:http://nfs.sourceforge.net/
- Debian:http://www.debian.org/