Saya telah menggunakan NFS dalam kapasitas terbatas selama bertahun-tahun. Saya akrab dengan konsep tersebut dan telah mengakses share NFS, namun, saya tidak pernah benar-benar mengonfigurasinya. Kemungkinannya adalah, saya tidak sendirian dalam hal ini. Saya pikir saya akan belajar bagaimana mengatur semuanya dan bahkan membawa Anda semua bersama saya. Mari kita mulai panduan pemula untuk mempelajari NFS.
Apa itu NFS?
Network File System (NFS), adalah sistem file terdistribusi yang memungkinkan berbagai sistem jarak jauh untuk mengakses berbagi file. Kita semua tahu bahwa file harus disimpan di server pusat untuk keamanan dan kemudahan pencadangan. NFS memberi kami layanan berbagi file yang mudah dikelola dan mengontrol akses klien ke sumber daya.
Apa yang dibutuhkan?
Sebelum kita bisa mulai, kita perlu memakukan beberapa prasyarat. Pertama, kita membutuhkan dua sistem berbeda yang mampu berbicara satu sama lain melalui jaringan. Karena NFS menggunakan hubungan server ke klien, kami akan menggunakan yang berikut ini:
- Server NFS - server.example.com - 172.25.1.5
- Klien NFS - client.example.com - 172.25.1.4
Anda dapat menggunakan ping
perintah untuk mengkonfirmasi komunikasi antara dua sistem. Saya memiliki dua mesin ini di jaringan NAT dan telah menguji koneksi dua arah.
Setelah itu, mari kita pastikan bahwa kedua sistem kita mutakhir. Karena sistem ini adalah RHEL 8.2 dan Fedora 32, kami akan menggunakan perintah berikut di server dan klien:
[root@rhel tcarrigan]# sudo yum -y update
Dan terakhir, kita perlu menginstal nfs-utils
paket ke kedua sistem kami.
[root@rhel tcarrigan]# sudo yum -y install nfs-utils (must do on both servers)
Updating Subscription Management repositories.
Last metadata expiration check: 0:55:54 ago on Wed 24 Jun 2020 11:53:45 AM EDT.
Package nfs-utils-1:2.3.3-31.el8.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!
*Catatan:paket sudah terinstal pada contoh di atas.
Sekarang, mari masuk ke konfigurasi server.
Konfigurasi server
Langkah 1:Mulai dan aktifkan nfs-utils
yang baru diinstal layanan.
[tcarrigan@rhel ~]$ sudo systemctl start nfs-server.service
[tcarrigan@rhel ~]$ sudo systemctl enable nfs-server.service
Langkah 2:Konfirmasikan nfs-server
layanan aktif dan berjalan.
[tcarrigan@rhel ~]$ sudo systemctl status nfs-server.service
● nfs-server.service - NFS server and services
Loaded: loaded (/usr/lib/systemd/system/nfs-server.service; enabl>
Active: active (exited) since Wed 2020-06-24 12:50:23 EDT; 18min >
Main PID: 61026 (code=exited, status=0/SUCCESS)
Tasks: 0 (limit: 50657)
Memory: 0B
CGroup: /system.slice/nfs-server.service
Jun 24 12:50:23 server.example.com systemd[1]: Starting NFS server a>
Jun 24 12:50:23 server.example.com systemd[1]: Started NFS server an>
lines 1-10/10 (END)
Langkah 3:Verifikasi versi NFS (Anda dapat melihat informasi ini di kolom dua).
[tcarrigan@rhel ~]$ rpcinfo -p | grep nfs
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100227 3 tcp 2049 nfs_acl
*Perhatikan bahwa Anda dapat menemukan file konfigurasi daemon NFS di /etc/nfs.conf
. Anda juga dapat menemukan file konfigurasi untuk mount di /etc/nfsmount.conf
.
Layanan NFS sekarang aktif dan berjalan di server Anda. Selanjutnya, mari buat share NFS.
Buat dan ekspor share
Pertama, kita perlu menentukan folder untuk berbagi. Karena satu belum ada di sistem saya, saya akan membuat direktori untuk dibagikan.
[tcarrigan@rhel ~]$ sudo mkdir -p /test/nfs_share/docs
Sekarang, saya belajar dari beberapa percobaan dan kesalahan dan kemudian sumber daya yang ditulis dengan baik bahwa Anda dapat menghindari banyak masalah dengan mengubah izin dan kepemilikan agar sesuai dengan yang berikut:
[tcarrigan@rhel ~]$ sudo chown -R nobody: /test/nfs_share/docs/
[tcarrigan@rhel ~]$ sudo chmod -R 777 /test/nfs_share/docs/
*Catatan:Anda mungkin tidak dapat melakukan ini di lingkungan produksi karena pertimbangan keamanan. Pastikan Anda mengetahui apa yang Anda lakukan sebelum menghapus semua batasan dari file atau direktori.
Selanjutnya, kita perlu membuat /etc/exports
berkas.
[root@server docs]# vi /etc/exports
Buat entri berikut di file baru:
/test/nfs_share 172.25.1.0/24(rw,sync,no_all_squash,root_squash)
Untuk lebih memahami parameter yang digunakan di sini, mari kita uraikan satu per satu.
- rw - Memungkinkan kita membaca dan menulis ke share NFS.
- sinkronisasi - Memerlukan penulisan perubahan ke disk sebelum operasi lainnya selesai.
- no_all_squash - Memetakan semua UID dan GID dari permintaan klien ke UID dan GID yang sama di server NFS.
- root_squash - Memetakan permintaan dari pengguna root sisi klien ke UID/GID anonim.
Sekarang setelah kita membuat share, mari ekspor ke klien.
[root@server docs]# exportfs -rav
exporting 172.25.1.0/24:/test/nfs_share
Perhatikan bahwa saya memetakan seluruh subnet di sini. Anda hanya dapat menyertakan satu IP atau nama host di sini jika Anda mau.
Ubah firewall
Kami menginstal server, dan kemudian membuat dan mengekspor share. Selanjutnya, kami mengkonfigurasi terowongan melalui firewall. Kami akan menambahkan aturan untuk nfs
, rpc-bind
, dan mountd
. Jangan lupa untuk memuat ulang konfigurasi firewall setelah selesai.
Lihat di sini:
[root@server]# firewall-cmd --permanent --add-service=nfs
success
[root@server]# firewall-cmd --permanent --add-service=rpc-bind
success
[root@server]# firewall-cmd --permanent --add-service=mountd
success
[root@server]# firewall-cmd --reload
success
Dengan selesainya sisi server, sekarang kita dapat memusatkan perhatian kita pada mesin klien.
Konfigurasikan klien
*Catatan:semua langkah selanjutnya dilakukan di mesin klien.
Karena kami telah memperbarui sistem kami dan menginstal nfs-utils
paket, ini seharusnya cukup mudah.
Kita mulai dengan membuat entri di /etc/hosts
untuk server NFS. Seharusnya terlihat seperti ini:
[root@client]# cat /etc/hosts
127.0.0.1 localhost
::1 localhost
172.25.1.5 localhost
Sekarang, mari kita lihat apakah ada yang dibagikan dari server NFS. Jika Anda mengikuti di bagian sebelumnya, Anda akan melihat /test/nfs_share/docs
sebagai direktori bersama.
[root@client ~]# showmount --exports nfs-server
Export list for nfs-server:
/test/nfs_share/docs 172.25.1.0/24
Selanjutnya, buat direktori pada mesin klien untuk me-mount share jarak jauh.
[tcarrigan@client ~]$ sudo mkdir p /test/client_share
Sekarang kita telah membuat direktori mount, mari kita mount share.
[tcarrigan@client ~]$ sudo mount -t nfs 172.25.1.5:/test/nfs_share/docs /home/tcarrigan/test/client_share
Jalankan perintah berikut untuk memverifikasi pembagian:
[tcarrigan@client ~]$ sudo mount | grep -i nfs
Terakhir, untuk memastikan bahwa pemasangan tetap ada di seluruh reboot, tambahkan baris berikut ke /etc/fstab
berkas:
172.25.0.5:/test/nfs_share/docs /home/tcarrigan/test/client_share nfs defaults 0 0
Hari yang mudah.
Bukti konsep
Sebagai puncak dari upaya kami, mari kita uji share yang dikonfigurasi. Buat file di server di /test/nfs_share/docs
bernama test_doc
.
[tcarrigan@server docs]$ ls -lrt
total 4
-rw-r--r--. 1 root root 39 Jun 25 16:21 test_doc
Mari kita lihat apakah test_doc
kita diekspor ke mesin klien kami melalui NFS.
Di mesin klien:
[tcarrigan@client ~]$ cd test/client_share/
[tcarrigan@client client_share]$ ls
docs
[tcarrigan@client client_share]$ ls docs/
test_doc
[tcarrigan@client client_share]$
Di sini kita melihat test_doc
ada di Server NFS.
Untuk menguji ke arah lain, saya membuat file pada klien bernama client-test-doc
.
[tcarrigan@client docs]$ vi client-test-doc
Mari lompat ke server dan lihat apakah kita dapat melihat file yang baru dibuat.
Server NFS:
[tcarrigan@server docs]$ ls -lrt
total 8
-rw-r--r--. 1 root root 39 Jun 25 16:21 test_doc
-rw-rw-r--. 1 tcarrigan tcarrigan 5 Jul 6 13:25 client-test-doc
Kita dapat melihat kedua file asli test_doc
serta file yang baru dibuat client-test-doc
.
Selamat atas penyiapan pasangan server/klien NFS yang berfungsi.
[ Kursus online gratis:Tinjauan teknis Red Hat Enterprise Linux. ]