Cara Setting NFS Server dan Client di CentOS 8


Sistem File Jaringan (NFS) juga dikenal sebagai sistem file klien/server adalah protokol sistem file terdistribusi dan lintas platform yang populer yang digunakan untuk mengekspor sistem file lokal melalui jaringan sehingga bahwa klien dapat berbagi direktori dan file dengan orang lain melalui jaringan dan berinteraksi dengan mereka seolah-olah mereka dipasang secara lokal.

Di CentOS/RHEL 8, versi NFS yang didukung adalah NFSv3 dan NFSv4 dan versi NFS default adalah 4.2 yang dilengkapi dukungan untuk Daftar Kontrol Akses ( ACL), salinan sisi server, file renggang, reservasi ruang, NFS berlabel, penyempurnaan tata letak, dan banyak lagi.

Dalam artikel ini, Anda akan mempelajari cara memasang dan mengonfigurasi server NFS dan klien NFS pada distribusi Linux CentOS/RHEL 8.

Prasyarat:

  1. Panduan Instalasi CentOS 8
  2. Instalasi Minimal RHEL 8
  3. Aktifkan Langganan RHEL di RHEL 8
  4. Tetapkan Alamat IP Statis di CentOS/RHEL 8

Lingkungan Pengujian Kami:

NFS Server IP:	10.20.20.8
NFS Client IP:	10.20.20.9	

Menyiapkan Server NFS di CentOS 8

1. Pertama, mulailah dengan menginstal paket yang diperlukan di server NFS. Paket-paket tersebut adalah nfs-utils yang menyediakan daemon untuk server kernel NFS dan alat terkait seperti yang berisi program showmount.

Jalankan perintah berikut untuk menginstal paket di server NFS (gunakan sudo jika Anda mengelola sistem sebagai pengguna non-root).

dnf install nfs-utils

2. Setelah instalasi selesai, mulai layanan nfs-server, aktifkan layanan tersebut untuk memulai secara otomatis saat boot sistem, dan kemudian verifikasi statusnya menggunakan perintah systemctl.

systemctl start nfs-server.service
systemctl enable nfs-server.service
systemctl status nfs-server.service

Perhatikan bahwa layanan lain yang diperlukan untuk menjalankan server NFS atau memasang share NFS seperti nfsd, nfs-idmapd, rpcbind, rpc.mountd, lockd, rpc.statd, rpc.rquotad, dan rpc.idmapd akan dimulai secara otomatis.

File konfigurasi untuk server NFS adalah:

  • /etc/nfs.conf – file konfigurasi utama untuk daemon dan alat NFS.
  • /etc/nfsmount.conf – file konfigurasi pemasangan NFS.

3. Selanjutnya, buat sistem file untuk diekspor atau dibagikan di server NFS. Untuk panduan ini, kami akan membuat empat sistem file, tiga di antaranya digunakan oleh staf dari tiga departemen: sumber daya manusia, keuangan, dan pemasaran untuk berbagi file dan satu lagi untuk pencadangan pengguna root.

mkdir -p  /mnt/nfs_shares/{Human_Resource,Finance,Marketing}
mkdir  -p /mnt/backups
ls -l /mnt/nfs_shares/

4. Kemudian ekspor sistem file di atas ke dalam file konfigurasi /etc/exports server NFS untuk menentukan sistem file fisik lokal yang dapat diakses oleh klien NFS.

/mnt/nfs_shares/Human_Resource  	10.20.20.0/24(rw,sync)
/mnt/nfs_shares/Finance			10.20.10.0/24(rw,sync)
/mnt/nfs_shares/Marketing		10.20.30.0/24(rw,sync)
/mnt/backups				10.20.20.9/24(rw,sync,no_all_squash,root_squash)

Berikut beberapa opsi ekspor (baca man ekspor untuk informasi lebih lanjut dan opsi ekspor):

  • rw – memungkinkan akses baca dan tulis pada sistem file.
  • sinkronisasi – memberitahu server NFS untuk menulis operasi (menulis informasi ke disk) ketika diminta (berlaku secara default).
  • all_squash – memetakan semua UID dan GID dari permintaan klien ke pengguna anonim.
  • no_all_squash – digunakan untuk memetakan semua UID dan GID dari permintaan klien ke UID dan GID identik di server NFS.
  • root_squash – memetakan permintaan dari pengguna root atau UID/GID 0 dari klien ke UID/GID anonim.

5. Untuk mengekspor sistem file di atas, jalankan perintah exportfs dengan tanda -a berarti mengekspor atau membatalkan ekspor semua direktori, - r berarti mengekspor ulang semua direktori, menyinkronkan /var/lib/nfs/etab dengan /etc/exports dan file di bawah /etc/exports.d , dan -v mengaktifkan keluaran verbose.

exportfs -arv

6. Untuk menampilkan daftar ekspor saat ini, jalankan perintah berikut. Perhatikan bahwa tabel ekspor juga menerapkan beberapa opsi ekspor default yang tidak didefinisikan secara eksplisit seperti yang ditunjukkan pada tangkapan layar berikut.

exportfs  -s

7. Selanjutnya, jika Anda menjalankan layanan firewalld, Anda perlu mengizinkan lalu lintas ke layanan NFS yang diperlukan (mountd, nfs , rpc-bind) melalui firewall, lalu muat ulang aturan firewall untuk menerapkan perubahan, sebagai berikut.

firewall-cmd --permanent --add-service=nfs
firewall-cmd --permanent --add-service=rpc-bind
firewall-cmd --permanent --add-service=mountd
firewall-cmd --reload

Menyiapkan Klien NFS pada Sistem Klien

8. Sekarang pada node klien, instal paket yang diperlukan untuk mengakses share NFS pada sistem klien. Jalankan perintah yang sesuai untuk distribusi Anda:

dnf install nfs-utils nfs4-acl-tools         [On CentOS/RHEL]
sudo apt install nfs-common nfs4-acl-tools   [On Debian/Ubuntu]

9. Kemudian jalankan perintah showmount untuk menampilkan informasi pemasangan untuk server NFS. Perintah tersebut harus menampilkan sistem file yang diekspor pada klien seperti yang ditunjukkan pada tangkapan layar.

showmount -e 10.20.20.8

9. Selanjutnya, buat sistem file/direktori lokal untuk memasang sistem file NFS jarak jauh dan memasangnya sebagai sistem file ntf.

mkdir -p /mnt/backups
mount -t nfs  10.20.20.8:/mnt/backups /mnt/backups

10. Kemudian konfirmasikan bahwa sistem file jarak jauh telah dipasang dengan menjalankan perintah mount dan memfilter nfs mount.

mount | grep nfs

11. Untuk mengaktifkan mount agar tetap persisten bahkan setelah sistem di-boot ulang, jalankan perintah berikut untuk memasukkan entri yang sesuai di /etc/fstab.

echo "10.20.20.8:/mnt/backups     /mnt/backups  nfs     defaults 0 0">>/etc/fstab
cat /etc/fstab

12. Terakhir, uji apakah penyiapan NFS berfungsi dengan baik dengan membuat file di server dan periksa apakah file dapat dilihat di klien.

touch /mnt/backups/file_created_on_server.text     [On NFS Server]
ls -l /mnt/backups/file_created_on_server.text     [On NFS client]

Kemudian lakukan sebaliknya.

touch /mnt/backups/file_created_on_client.text     [On NFS Client]
ls -l /mnt/backups/file_created_on_client.text     [On NFS Server]

13. Untuk melepas sistem file jarak jauh di sisi klien.

umount /mnt/backups

Perhatikan bahwa Anda tidak dapat melepaskan sistem file jarak jauh jika Anda mengoperasikannya seperti yang ditunjukkan pada tangkapan layar berikut.

Itu dia! Dalam panduan ini, kami menunjukkan cara memasang dan mengonfigurasi server dan klien NFS di CentOS/RHEL 8. Jika Anda memiliki pemikiran untuk dibagikan atau memiliki pertanyaan, gunakan formulir komentar di bawah untuk menghubungi kami kembali.