GNU/Linux >> Belajar Linux >  >> Linux

Mempelajari NFS melalui konfigurasi server dan klien

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. ]


Linux
  1. Menyiapkan Server NFS Dan Klien Di Scientific Linux 6.3

  2. Menyiapkan Server dan Klien NFS di CentOS 7.2

  3. Menyiapkan Server dan Klien NFS di Debian 9 (Peregangan)

  1. Menyiapkan Server NFS Dan Klien Pada CentOS 6.3

  2. Menyiapkan Server NFS Dan Klien Pada OpenSUSE 12.2

  3. CentOS / RHEL 7 :Mengkonfigurasi server NFS dan klien NFS

  1. Instalasi NFS Server dan Klien pada CentOS 7

  2. Cara Menginstal Klien dan Server NFS di Ubuntu 20.04

  3. Menyiapkan Server dan Klien NFS di Debian Wheezy