Rocky Linux 8 mendukung NFS versi 3 (NFSv3) dan 4 (NFSv4). Versi NFS default adalah 4.2 yang menampilkan dukungan untuk Access Control Lists (ACL), salinan sisi server, file sparse, reservasi ruang, NFS berlabel, penyempurnaan tata letak, dan banyak lagi.
Dalam panduan ini, kita akan mempelajari cara menginstal dan mengkonfigurasi Server NFS dan klien NFS di Rocky Linux 8.
Prasyarat
- Server Rocky Linux yang diperbarui untuk digunakan sebagai server dan satu lagi untuk klien
- Konektivitas dari server
- Akses sudo dari server
Daftar isi
- Pastikan server diperbarui
- Instal paket NFS
- Memulai dan mengaktifkan server NFS
- Mengaktifkan layanan NFS di Firewall
- Mengonfigurasi ekspor di server NFS
- Menyiapkan sistem klien NFS
1. Memastikan bahwa server sudah diperbarui
Sebelum melanjutkan, izinkan kami memastikan bahwa server sudah diperbarui. Gunakan perintah ini untuk mencapai ini:
sudo dnf -y update
2. Instal paket NFS
Paket nfs-utils
menyediakan daemon untuk server NFS kernel dan alat terkait seperti yang berisi showmount
program. Gunakan perintah ini untuk menginstal paket:
sudo dnf install -y nfs-utils
3. Memulai dan mengaktifkan server NFS
Setelah paket NFS berhasil diinstal, kita dapat memulai dan mengaktifkan server NFS. Gunakan perintah systemctl ini untuk memulai server:
sudo systemctl start nfs-server
Konfirmasi status layanan dengan perintah ini:
$ sudo systemctl status nfs-server
● nfs-server.service - NFS server and services
Loaded: loaded (/usr/lib/systemd/system/nfs-server.service; disabled; vendor preset: disabled)
Active: active (exited) since Thu 2022-01-13 17:54:19 UTC; 36s ago
Process: 59320 ExecStart=/bin/sh -c if systemctl -q is-active gssproxy; then systemctl reload gssproxy ; fi (code=exited, status=0/SUCCESS)
Process: 59308 ExecStart=/usr/sbin/rpc.nfsd (code=exited, status=0/SUCCESS)
Process: 59305 ExecStartPre=/usr/sbin/exportfs -r (code=exited, status=0/SUCCESS)
Main PID: 59320 (code=exited, status=0/SUCCESS)
Jan 13 17:54:18 dev-rockysrv.inv.re systemd[1]: Starting NFS server and services...
Jan 13 17:54:19 dev-rockysrv.inv.re systemd[1]: Started NFS server and services.
Output di atas menunjukkan bahwa layanan dimulai dengan sukses. Untuk mengaktifkan layanan untuk memulai saat sistem boot, gunakan perintah ini:
sudo systemctl enable nfs-server
Harap perhatikan bahwa layanan lain yang diperlukan untuk menjalankan server NFS atau memasang berbagi NFS seperti nfsd
, nfs-idmapd
, rpcbind
, rpc.mountd
, lockd
, rpc.statd
, rpc.rquotad
dan rpc.idmapd
akan dimulai secara otomatis.
4. Mengaktifkan Layanan NFS di Firewall
Jika Anda telah menginstal dan mengaktifkan firewalld, Anda harus mengaktifkan layanan NFS. Anda harus mengizinkan lalu lintas ke layanan NFS yang diperlukan (dipasang , nfs , rpc-bind ) melalui firewall, lalu muat ulang aturan firewall untuk menerapkan perubahan, sebagai berikut.
sudo firewall-cmd --permanent --add-service=nfs sudo firewall-cmd --permanent --add-service=rpc-bind sudo firewall-cmd --permanent --add-service=mountd sudo firewall-cmd --reload
5. Mengonfigurasi ekspor di server NFS
File konfigurasi untuk server NFS terletak di jalur ini:
/etc/nfs.conf
– ini adalah file konfigurasi utama untuk daemon dan alat NFS/etc/nfsmount.conf
– ini adalah file konfigurasi pemasangan NFS
Mari kita buat sistem file untuk diekspor atau dibagikan di server NFS. Kami akan membuat dua sistem file untuk dilihat, /mnt/nfs_shares/files
untuk file bersama dan /mnt/nfs_shares/backup
untuk cadangan.
Mari kita buat direktori di server
sudo mkdir -p /mnt/nfs_shares/files
sudo mkdir -p /mnt/nfs_shares/backup
Konfirmasi
$ sudo ls /mnt/nfs_shares
backup files
Kemudian tambahkan sistem file di atas dalam file ekspor /etc/exports
di server NFS untuk menentukan sistem file lokal yang diekspor ke klien NFS.
Buka file ekspor dengan editor teks Anda
sudo vim /etc/exports
Kemudian tambahkan konten ini:
/mnt/nfs_shares/files 10.70.5.170(rw,sync)
/mnt/nfs_shares/backup 10.70.5.0/24(rw,sync,no_all_squash,root_squash)
Ini adalah opsi ekspor yang dapat digunakan:
- rw – memungkinkan akses baca dan tulis pada sistem file.
- sinkronisasi – memberitahu server NFS untuk menulis operasi (menulis informasi ke disk) saat 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 yang identik di server NFS.
- root_squash – memetakan permintaan dari pengguna root atau UID/GID 0 dari klien ke UID/GID anonim.
Setelah sistem file ditentukan dalam file ekspor, kita perlu menjalankan exportfs
perintah bagi mereka untuk diekspor. Exportfs dapat dijalankan dengan -a
tandai artinya ekspor atau hapus ekspor semua direktori, -r
artinya mengekspor ulang semua direktori, menyinkronkan /var/lib/nfs/etab dengan /etc/exports dan file di bawah /etc/exports.d , dan -v mengaktifkan keluaran verbose.
sudo exportfs -arv
Ini adalah output di server saya
$ sudo exportfs -arv
exporting 10.70.5.170:/mnt/nfs_shares/files
exporting 10.70.5.0/24:/mnt/nfs_shares/backup
Untuk menampilkan daftar ekspor saat ini, jalankan perintah berikut. Harap perhatikan bahwa tabel exportfs juga menerapkan beberapa opsi default yang tidak didefinisikan secara eksplisit:
$ sudo exportfs -s
/mnt/nfs_shares/files 10.70.5.170(sync,wdelay,hide,no_subtree_check,sec=sys,rw,secure,root_squash,no_all_squash)
/mnt/nfs_shares/backup 10.70.5.0/24(sync,wdelay,hide,no_subtree_check,sec=sys,rw,secure,root_squash,no_all_squash)
6. Menyiapkan sistem Klien NFS
Sekarang kita telah mengonfigurasi ekspor di server, kita dapat mengaksesnya dari sistem klien. Masuk ke sistem klien dan instal paket yang diperlukan untuk memungkinkan share NFS dapat diakses.
Pada sistem berbasis RHEL:
sudo dnf install -y nfs-utils nfs4-acl-tools
Pada distro berbasis Debian/Ubuntu:
sudo apt install nfs-common nfs4-acl-tools
Kami kemudian dapat menjalankan perintah showmount untuk menampilkan informasi pemasangan untuk Server NFS. Perintah mengeluarkan sistem file yang diekspor di server
showmount -e 10.70.5.221
Keluaran
$ showmount -e 10.70.5.221
Export list for 10.70.5.221:
/mnt/nfs_shares/backup 10.70.5.0/24
/mnt/nfs_shares/files 10.70.5.170
Buat direktori sistem file lokal untuk memasang sistem file NFS jarak jauh dan pasang sebagai sistem file nfs
mkdir -p ~/backups
mkdir -p ~/nfs_files
sudo mount -t nfs 10.70.5.221:/mnt/nfs_shares/backup ~/backups
sudo mount -t nfs 10.70.5.221:/mnt/nfs_shares/files ~/nfs_files
Kami kemudian dapat mengonfirmasi bahwa sistem file jarak jauh telah dipasang dengan menjalankan mount perintah dan filter nfs gunung.
sudo mount | grep nfs
Keluaran di mesin saya
$ sudo mount | grep nfs
rpc_pipefs on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime)
10.70.5.221:/mnt/nfs_shares/backup on /home/rocky/backups type nfs4 (rw,relatime,vers=4.2,rsize=524288,wsize=524288,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.70.5.170,local_lock=none,addr=10.70.5.221)
10.70.5.221:/mnt/nfs_shares/files on /home/rocky/nfs_files type nfs4 (rw,relatime,vers=4.2,rsize=524288,wsize=524288,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.70.5.170,local_lock=none,addr=10.70.5.221)
Untuk mengaktifkan mount ke persisten bahkan setelah sistem di-boot ulang, tambahkan entri ke /etc/fstab
mengajukan. Gunakan perintah ini (sebagai root) untuk mencapainya:
echo "10.70.5.221:/mnt/nfs_shares/backup /home/rocky/backups nfs defaults 0 0" >> /etc/fstab
echo "10.70.5.221:/mnt/nfs_shares/files /home/rocky/nfs_files nfs defaults 0 0" >> /etc/fstab
Terakhir, uji apakah NFS setup berfungsi dengan baik dengan membuat file di server dan memeriksa apakah file dapat dilihat di klien.
Di server:
sudo touch /mnt/nfs_shares/files/file_on_server.txt
Kemudian pada mesin klien konfirmasi
$ ls ~/nfs_files/
file_on_server.txt
Anda juga dapat melakukan sebaliknya. Di klien:
touch ~/nfs_files/file_on_client.txt
Kemudian di server konfirmasi:
$ ls /mnt/nfs_shares/files/
file_on_client.txt file_on_server.txt
Untuk melepas sistem file jarak jauh di sisi klien.
sudo umount /mnt/nfs_shares/files
sudo umount /mnt/nfs_shares/backup
Harap diperhatikan bahwa Anda tidak dapat unmount
sistem file jarak jauh jika Anda beroperasi di dalamnya.
Kesimpulan
Dalam panduan ini kami berhasil menginstal dan mengkonfigurasi server dan klien NFS di Rocky Linux 8.