Πώς να εγκαταστήσετε τον διακομιστή και τον πελάτη NFS σε διανομές RHEL


Στο Linux, υπάρχουν μερικά πρωτόκολλα κοινής χρήσης αρχείων που χρησιμοποιούνται για την κοινή χρήση αποθηκευτικού χώρου και αρχείων σε ένα δίκτυο. Τα πιο ευρέως χρησιμοποιούμενα είναι τα Samba και NFS.

Το Samba είναι μια δημοφιλής σουίτα εφαρμογών ανοιχτού κώδικα που λειτουργεί σε αρχιτεκτονική πελάτη-διακομιστή. Προσφέρει συμβατότητα μεταξύ πλατφορμών, επιτρέποντας την απρόσκοπτη κοινή χρήση αρχείων σε λειτουργικά συστήματα Linux, Windows και macOS. Ένα κοινόχρηστο αρχείο που φιλοξενείται σε σύστημα Linux μπορεί να προσπελαστεί από διάφορες πλατφόρμες, ενισχύοντας έτσι τη συνεργασία.

Ένα άλλο ευρέως χρησιμοποιούμενο πρωτόκολλο κοινής χρήσης αρχείων είναι το NFS, συντομογραφία του Κοινή χρήση αρχείων δικτύου. Ακριβώς όπως το Samba, λειτουργεί σε μοντέλο πελάτη-διακομιστή και επιτρέπει σε έναν χρήστη να μοιράζεται καταλόγους και αρχεία σε ένα δίκτυο με πολλούς απομακρυσμένους χρήστες-πελάτες.

Σε αυτόν τον οδηγό, θα δούμε πώς να εγκαταστήσετε τον διακομιστή NFS και τον πελάτη σε διανομές που βασίζονται σε RHEL, όπως το Fedora, το CentOS Stream, το Rocky Linux και το AlmaLinux.

Υπηρεσίες NFS

Επί του παρόντος, υπάρχουν 3 εκδόσεις του NFS, η πιο πρόσφατη είναι η NFSv4 η οποία περιλαμβάνει λειτουργίες όπως η δυνατότητα εργασίας μέσω Διαδικτύου και μέσω τείχους προστασίας. Επιπλέον, υπάρχει το NFSv3 και το NFSv2 που είναι το παλαιότερο πρωτόκολλο.

Η υπηρεσία NFS αποτελείται από τον Διακομιστή NFS και τον πελάτη. Ο διακομιστής NFS περιλαμβάνει τα ακόλουθα βασικά αρχεία:

  • nfs-server – Αυτό επιτρέπει στα συστήματα-πελάτες να έχουν πρόσβαση στα κοινόχρηστα αρχεία του NFS.
  • rpcbind – μετατρέπει προγράμματα RPC σε καθολικές διευθύνσεις.
  • nfs-idmap – Πραγματοποιεί τη μετάφραση των αναγνωριστικών χρηστών και ομάδων σε ονόματα και ονομάτων χρηστών και ομάδων σε αναγνωριστικά.
  • portmap – Αυτός είναι ένας διακομιστής που μετατρέπει αριθμούς προγραμμάτων RPC σε αριθμούς θύρας IP.
  • nfslock – Σε περίπτωση διακοπής λειτουργίας διακομιστή NFS, το nfslock ξεκινά τις απαιτούμενες διαδικασίες RPC.

Υπηρεσίες διαμόρφωσης NFS

Ακολουθούν μερικά από τα βασικά αρχεία διαμόρφωσης για το NFS:

  • /etc/exports – Το κύριο αρχείο διαμόρφωσης, το οποίο ορίζει τα συστήματα αρχείων ή τους καταλόγους που πρέπει να εξαχθούν και να έχουν πρόσβαση από απομακρυσμένους χρήστες.
  • /etc/fstab – Αυτό είναι ένα αρχείο που περιέχει καταχωρήσεις προσαρτημένων κατατμήσεων. Στο NFS, το αρχείο περιέχει εγγραφές από κοινόχρηστους καταλόγους ή συστήματα αρχείων NFS που είναι μόνιμα προσαρτημένες και μπορούν να συνεχίσουν την επανεκκίνηση.
  • /etc/sysconfig/nfs – Καθορίζει τις θύρες που απαιτούνται κατά την εκτέλεση των υπηρεσιών RPC.

Ρύθμιση διακομιστή NFS και πελάτη

Για να ρυθμίσουμε τα κοινόχρηστα στοιχεία NFS, θα χρειαστούμε τουλάχιστον δύο μηχανήματα Linux/Unix. Εδώ σε αυτό το σεμινάριο, θα χρησιμοποιήσω δύο διακομιστές.

  • Διακομιστής NFSRHEL 9 με IP 10.128.15.213
  • Πελάτης NFSRHEL 9 με IP 10.128.15.214

Εγκαταστήστε το NFS σε διακομιστή και πελάτη

Για να ξεκινήσετε, πρέπει να συνδεθείτε και στους δύο κόμβους (NFS διακομιστή και πελάτη) και να εγκαταστήσετε τις υπηρεσίες NFS. Πρώτα, ενημερώστε τις πληροφορίες του πακέτου όπως φαίνεται. Η ακόλουθη εντολή dnf θα αναβαθμίσει επίσης όλα τα συναρπαστικά πακέτα στις πιο πρόσφατες εκδόσεις τους.

sudo dnf update 

Μόλις ολοκληρωθεί η ενημέρωση, προχωρήστε και εγκαταστήστε τις απαραίτητες υπηρεσίες NFS.

sudo dnf install rpcbind nfs-utils -y

Το επόμενο βήμα είναι να ενεργοποιήσετε τις υπηρεσίες NFS όπως φαίνεται.

sudo systemctl enable nfs-server
sudo systemctl enable rpcbind

Φροντίστε επίσης να ξεκινήσετε τις υπηρεσίες NFS.

sudo systemctl enable nfs-server
sudo systemctl enable rpcbind

Είναι σημαντικό να επαληθεύσετε ότι όλες οι υπηρεσίες NFS εκτελούνται.

sudo systemctl status nfs-server
sudo systemctl status rpcbind

Φροντίστε επίσης να διαμορφώσετε το τείχος προστασίας για να επιτρέψετε τις εισερχόμενες υπηρεσίες NFS ως εξής.

sudo firewall-cmd --permanent --add-service={nfs,rpc-bind,mountd}
sudo firewall-cmd --reload

Δημιουργήστε έναν κατάλογο κοινής χρήσης NFS

Με όλες τις υπηρεσίες NFS εγκατεστημένες και εκτελούμενες όπως αναμένεται, ήρθε η ώρα να δημιουργήσετε τον κοινόχρηστο κατάλογο NFS, ο οποίος είναι ο κατάλογος που θα περιέχει αρχεία στα οποία θα έχουν πρόσβαση οι πελάτες NFS στο δίκτυο.

Σε αυτήν την περίπτωση, θα δημιουργήσουμε έναν κοινόχρηστο κατάλογο NFS που ονομάζεται my_nfsshare στον αρχικό μας κατάλογο.

mkdir -p /home/tecmint/my_nfsshare

Στη συνέχεια, εκχωρήστε δικαιώματα καταλόγου. Για λόγους επίδειξης, θα εκχωρήσουμε καθολικά δικαιώματα που θα εκχωρούν σε πελάτες NFS δικαιώματα ανάγνωσης, εγγραφής και εκτέλεσης.

sudo chmod 777 -R /home/tecmint/my_nfsshare

Εξαγωγή καταλόγου κοινής χρήσης NFS

Το επόμενο βήμα είναι η εξαγωγή του καταλόγου κοινής χρήσης NFS. Για να το πετύχουμε αυτό, πρέπει να κάνουμε μια καταχώριση στο αρχείο /etc/exports. Επομένως, αποκτήστε πρόσβαση στο αρχείο χρησιμοποιώντας το πρόγραμμα επεξεργασίας κειμένου που προτιμάτε. Σε αυτήν την περίπτωση, θα χρησιμοποιήσουμε τον επεξεργαστή Vim.

sudo vim /etc/exports

Προσθέστε την ακόλουθη καταχώρηση. Φροντίστε να αντικαταστήσετε τη διεύθυνση IP του διακομιστή με τη διεύθυνση IP του διακομιστή NFS.

/home/tecmint/my_nfsshare server-ip/24(rw,no_root_squash)

Τέλος, εξάγετε τον κοινόχρηστο κατάλογο NFS ή το σύστημα αρχείων.

sudo exportfs -rv

Εκτελέστε την ακόλουθη εντολή για να προβάλετε τα κοινόχρηστα στοιχεία NFS.

showmount -e localhost

Διαμόρφωση προγράμματος-πελάτη NFS

Η υπόλοιπη φάση αυτής της άσκησης είναι η διαμόρφωση του προγράμματος-πελάτη NFS για πρόσβαση στον κοινόχρηστο κατάλογο. Αρχικά, επιβεβαιώστε ότι μπορείτε να προβάλετε τη λίστα εξαγωγής ή τα κοινόχρηστα στοιχεία NFS στον διακομιστή NFS.

showmount -e 10.128.15.213

Το επόμενο βήμα είναι να προσαρτήσετε το κοινόχρηστο στοιχείο NFS από τον διακομιστή στον πελάτη. Για να γίνει αυτό, πρέπει πρώτα να δημιουργήσουμε έναν κατάλογο προσάρτησης. Σε αυτήν την περίπτωση, θα δημιουργήσουμε έναν κατάλογο που ονομάζεται nfs_backup.

mkdir nfs_backup

Στη συνέχεια, θα προσαρτήσουμε το κοινόχρηστο στοιχείο NFS στον κατάλογο προσάρτησης που μόλις δημιουργήσαμε στον ριζικό κεντρικό κατάλογο

mount -t nfs 10.128.15.213:/home/tecmint/my_nfsshare  ~/nfs_backup 

Για να διατηρήσετε το κοινόχρηστο στοιχείο NFS, επεξεργαστείτε το αρχείο /etc/fstab.

vim /etc/fstab

Στη συνέχεια, προσθέστε την ακόλουθη καταχώρηση.

10.128.15.213:/home/tecmint/my_nfsshare    /root/nfs_backup  nfs     defaults 0 0

Αποθηκεύστε και βγείτε από το αρχείο διαμόρφωσης.

Δοκιμή εγκατάστασης NFS

Το τελευταίο βήμα είναι να επαληθεύσετε εάν η ρύθμιση του NFS λειτουργεί όπως αναμένεται. Θα δημιουργήσουμε μερικά αρχεία στον διακομιστή και θα επαληθεύσουμε τη διαθεσιμότητά τους στην πλευρά του προγράμματος-πελάτη NFS.

Από την πλευρά του διακομιστή, θα δημιουργήσουμε τα αρχεία στον κοινόχρηστο κατάλογο NFS.

sudo touch my_nfsshare/file{1..4}.txt

Για να επαληθεύσουμε ότι τα αρχεία έχουν δημιουργηθεί, θα εκτελέσουμε την εντολή ls:

ls -l my_nfsshare/

Επιστρέψτε στην πλευρά του προγράμματος-πελάτη, βεβαιωθείτε ότι τα αρχεία είναι διαθέσιμα στον κατάλογο προσάρτησης χωρίς καμία ανανέωση ή επανεκκίνηση υπηρεσίας, όπως φαίνεται στην ακόλουθη έξοδο.

ls -l nfs_backup/

Αφαίρεση βάσης NFS

Εάν δεν χρειάζεστε πλέον τον προσαρτημένο κατάλογο στο σύστημά σας, μπορείτε να τον αποπροσαρτήσετε από την πλευρά του πελάτη χρησιμοποιώντας την ακόλουθη εντολή umount:

umount ~/nfs_backup

Εντολές κοινής χρήσης NFS

Μερικές πιο σημαντικές εντολές για το NFS.

  • showmount -e – Εμφανίζει τις διαθέσιμες κοινοποιήσεις στον τοπικό σας υπολογιστή
  • showmount -e ip-address – Εμφανίζει τις διαθέσιμες κοινοποιήσεις στον απομακρυσμένο διακομιστή
  • showmount -d – Εμφανίζει όλους τους υποκαταλόγους
  • exportfs -v – Εμφανίζει μια λίστα με κοινόχρηστα αρχεία και επιλογές σε έναν διακομιστή
  • exportfs -a – Εξάγει όλες τις μετοχές που αναφέρονται στο /etc/exports ή το όνομα που δίνεται
  • exportfs -u – Καταργεί την εξαγωγή όλων των μετοχών που αναφέρονται στο /etc/exports ή στο όνομα που δίνεται
  • exportfs -r – Ανανεώστε τη λίστα του διακομιστή μετά την τροποποίηση του /etc/exports
συμπέρασμα

Αυτό ολοκληρώνει τον οδηγό μας σχετικά με τον τρόπο εγκατάστασης του διακομιστή NFS και του πελάτη σε διανομές που βασίζονται στο RedHat. Εγκαταστήσαμε τις υπηρεσίες NFS στον διακομιστή, δημιουργήσαμε έναν κοινόχρηστο κατάλογο NFS και, τέλος, προσαρτήσαμε τον κοινόχρηστο κατάλογο στον υπολογιστή-πελάτη. Τέλος, επαληθεύσαμε τη ρύθμιση του NFS αποκτώντας πρόσβαση στο αρχείο που δημιουργήθηκε στον διακομιστή από την πλευρά του πελάτη.