Εάν είστε χρήστης Linux με μέτρια εξειδίκευση ή αρχάριος με διακομιστή, ο κύριος τρόπος πρόσβασης στα αρχεία είναι με το Samba. Πολλοί το κάνουν αυτό λόγω του πόσο δύσκολο φαίνεται να είναι το NFS. Υπάρχουν τόσα πολλά βήματα και μικρά πράγματα που πρέπει να κάνετε σωστά σε σύγκριση με κάτι σαν το Samba ή ακόμα και το FTP. Το γεγονός ότι πολλοί χρήστες Linux περνούν από το NFS είναι πραγματικά κρίμα, καθώς έχει πολλές εξαιρετικές δυνατότητες και χρήσεις. Γι’ αυτό αποφασίσαμε να άρουμε τη δυσκολία της εγκατάστασης ενός διακομιστή NFS. Θα αναλύσουμε πώς μπορείτε να φιλοξενήσετε κοινόχρηστα στοιχεία NFS στο Linux και θα εξηγήσουμε σε βάθος πώς μπορείτε να θέσετε σε λειτουργία έναν διακομιστή
Πίνακας περιεχομένων
Εγκατάσταση
Γενικά, κάθε διανομή Linux έχει τα ίδια εργαλεία NFS με μερικές διαφορές εδώ και εκεί. Για να λειτουργήσουν όλα, ανοίξτε ένα τερματικό και εγκαταστήστε τα παρακάτω πακέτα στο σύστημά σας. Αυτά τα πακέτα θα εγκαταστήσουν την προεπιλεγμένη τεχνολογία που απαιτείται για την εκτέλεση του διακομιστή, θα δημιουργήσουν τα προεπιλεγμένα αρχεία διαμόρφωσης και μερικές φορές ακόμη και θα ρυθμίσουν και άλλα πράγματα.
Ubuntu
sudo apt install nfs-kernel-server
Μαλακό καπέλλο
sudo dnf install nfs-utils system-config-nfs
Arch Linux
sudo pacman -S nfs-utils
Debian
sudo apt-get install nfs-kernel-server
OpenSUSE
sudo zypper install nfs-kernel-server
Άλλα Linux
Το σύστημα αρχείων NFS, ο πελάτης και ο διακομιστής δεν είναι νέα τεχνολογία. Ως αποτέλεσμα, θα μπορείτε εύκολα να το κάνετε αυτό να λειτουργεί σε σχεδόν οποιαδήποτε διανομή Linux εκεί έξω. Εάν το λειτουργικό σας σύστημα δεν καλύπτεται, εξετάστε το ενδεχόμενο να αναζητήσετε “nfs utils” στη διαχείριση πακέτων ή ανατρέχοντας στο Wiki του λειτουργικού σας συστήματος.
Συστημικές υπηρεσίες
Η ρύθμιση ενός διακομιστή NFS μπορεί να είναι διαφορετική, ανάλογα με τη διανομή Linux που χρησιμοποιείτε. Για παράδειγμα, εάν εγκαταστήσετε το πακέτο Ubuntu ή Debian NFS, οι υπηρεσίες systemd ρυθμίζονται αυτόματα και διαμορφώνονται για εσάς. Ωστόσο, σε κάτι όπως το Arch Linux, το SUSE ή το Fedora κ.λπ., θα πρέπει να το κάνετε χειροκίνητα. Δείτε πώς μπορείτε να ενεργοποιήσετε αυτές τις υπηρεσίες.
Εάν χρησιμοποιείτε το Arch Linux, το Open SUSE ή το Fedora (ή οποιαδήποτε διανομή Linux που δεν ρυθμίζει αυτόματα τις υπηρεσίες systemd για NFS) ανοίξτε ένα τερματικό και εισαγάγετε αυτές τις εντολές.
sudo systemctl enable rpcbind
sudo systemctl enable nfs-server sudo service rpcbind start sudo service nfs-server start
Διαμόρφωση
Με την εγκατάσταση των πακέτων NFS, ο διακομιστής έχει “ρυθμιστεί”, αλλά αυτό δεν σημαίνει ότι οι χρήστες μπορούν να έχουν πρόσβαση ακόμη σε αυτόν. Για αυτό, οι χρήστες πρέπει να ρυθμίσουν εξαγωγές, τοποθεσίες αρχείων κ.λπ. Για να ξεκινήσετε, αποκτήστε ένα κέλυφος root στο τερματικό. Κάντε αυτό με: sudo -s
Το αρχείο εξαγωγής μπορεί να χειριστεί οποιονδήποτε τύπο καταλόγου. Στην πραγματικότητα, οι χρήστες μπορούν εύκολα να γράψουν μια άμεση τοποθεσία σε έναν φάκελο που θέλουν να μοιραστούν απευθείας στο σύστημα αρχείων. Το πρόβλημα με αυτό είναι ότι αποτελεί τεράστιο κίνδυνο ασφάλειας. Είναι πολύ πιο ασφαλές να παίρνετε τα περιεχόμενα ενός καταλόγου και να τον συνδέετε σε έναν άλλο. Αυτό διασφαλίζει ότι τα δικαιώματα για τους φακέλους και τους καταλόγους στο φάκελο /srv/ δεν χρειάζεται να τροποποιηθούν ώστε τα πάντα να είναι ασφαλή.
Για παράδειγμα, για να ρυθμίσετε ένα κοινόχρηστο στοιχείο NFS του φακέλου Pictures ενός χρήστη, κάντε τα εξής:
mkdir -p /srv/nfs/pictures /home/username/Pictures/ mount --bind /home/username/Pictures/ /srv/nfs/pictures/
Χρησιμοποιήστε το παραπάνω παράδειγμα για να δημιουργήσετε όσες βάσεις σύνδεσης θέλετε. Λάβετε υπόψη ότι δεν απαιτείται η προσάρτηση καταλόγων από αρχικούς φακέλους. Αντίθετα χρησιμοποιήστε αυτό το παράδειγμα και γίνετε δημιουργικοί.
Με όλα αυτά τακτοποιημένα, εκτελέστε αυτές τις εντολές για να κολλήσετε τις βάσεις:
echo '#NFS Pictures Bind Mount' >> /etc/fstab
echo '/home/username/Pictures/ /srv/nfs/pictures/ none bind 0 0' >> /etc/fstab
Σημείωση: θα χρειαστεί να αλλάξετε τις εντολές echo ώστε να ταιριάζουν με τις δικές σας βάσεις.
Με τη ρύθμιση των μονταρισμάτων, ήρθε η ώρα να διαμορφώσετε το αρχείο διαμόρφωσης εξαγωγών. Το αρχείο εξαγωγών είναι πολύ σημαντικό, καθώς εδώ θα πρέπει να καθορίσετε κάθε κοινόχρηστο στοιχείο αρχείου για χρήση του NFS.
nano /etc/exports
Μέσα στο αρχείο εξαγωγής, πηγαίνετε μέχρι το κάτω μέρος και γράψτε τα εξής:
/srv/nfs/pictures/ 192.168.0.0/255.255.255.0(rw,sync,no_subtree_check)
Μη διστάσετε να γράψετε όσες γραμμές θέλετε. Λάβετε υπόψη ότι κάθε κοινόχρηστο στοιχείο χρειάζεται τη δική του προσάρτηση, καταχώρηση fstab και /etc/exports.
Σημείωση: αποθηκεύστε το αρχείο εξαγωγής με CTRL + O
Ενημέρωση Αλλαγών
Ο διακομιστής NFS είναι έτοιμος και λειτουργεί, τα αρχεία βρίσκονται στη σωστή θέση και όλα είναι έτοιμα για χρήση. Το μόνο που απομένει είναι να ενημερώσετε τις αλλαγές που έγιναν στο αρχείο εξαγωγών. Αυτό είναι ένα σημαντικό βήμα, δεδομένου ότι ο διακομιστής NFS δεν ενημερώνει τις αλλαγές που έγιναν ενώ εκτελείται. Κάντε αλλαγές με: exportfs -rav
Εάν χρειάζεται, επανεκκινήστε τη διαδικασία διακομιστή μέσα στο ίδιο το systemd χρησιμοποιώντας την εντολή επανεκκίνησης systemctl.
sudo systemctl restart nfs-server.
συμπέρασμα
Το σύστημα αρχείων δικτύου είναι ένα χρήσιμο εργαλείο. Με αυτό, οι χρήστες μπορούν εύκολα να πάρουν απομακρυσμένα αρχεία και καταλόγους και να εργαστούν μαζί τους τοπικά όπως ένας φυσικός σκληρός δίσκος. Αυτό είναι υπέροχο, καθώς τα ανταγωνιστικά εργαλεία συστήματος αρχείων δικτύου δεν δίνουν στους χρήστες την ίδια πανταχού παρουσία και ελευθερία.
Παρά τη χρησιμότητά του, οι περισσότεροι προτιμούν να χρησιμοποιούν Samba. Αυτό είναι κατανοητό, γιατί σε σύγκριση με το Samba, το NFS μπορεί να είναι λίγο ενοχλητικό και κουραστικό στη ρύθμιση. Ωστόσο, αν αντιμετωπίσετε τη δύσκολη διαδικασία εγκατάστασης, αξίζει πολύ περισσότερο.