In diesem Handbuch wird erläutert, wie Sie einen NFS-Server unter CentOS 7 konfigurieren. Network File System (NFS) ist ein beliebtes verteiltes Dateisystemprotokoll, mit dem Benutzer Remote-Verzeichnisse auf ihrem Server bereitstellen können. Mit NFS können Sie Speicherplatz an einem anderen Ort nutzen und mühelos von mehreren Servern oder Clients auf denselben Speicherplatz schreiben. Es funktioniert daher ziemlich gut für Verzeichnisse, auf die Benutzer häufig zugreifen müssen. Dieses Tutorial erklärt den Vorgang zum Mounten einer NFS-Freigabe auf einem CentOS 7.6-Server in einfachen und leicht verständlichen Schritten.
1 Vorbemerkung
Ich habe einen frisch installierten CentOS 7-Server, auf dem ich den NFS-Server installieren werde. Mein CentOS-Server hat den Hostnamen server1.example.com und die IP 192.168.0.100
Wenn Sie noch keinen CentOS-Server installiert haben, verwenden Sie diese Anleitung für die grundlegende Installation des Betriebssystems. Zusätzlich zum Server benötigen wir einen CentOS 7-Client-Computer, dies kann entweder ein Server- oder ein Desktop-System sein. In meinem Fall verwende ich einen CentOS 7-Desktop mit dem Hostnamen client1.example.com und der IP 192.168.0.101 als Client. Ich werde alle Befehle in diesem Tutorial als Root-Benutzer ausführen.
2 Am Ende des NFS-Servers
Als ersten Schritt installieren wir diese Pakete auf dem CentOS-Server mit yum:
yum install nfs-utils
Erstellen Sie nun das Verzeichnis, das von NFS freigegeben wird:
mkdir /var/nfsshare
Ändern Sie die Berechtigungen des Ordners wie folgt:
chmod -R 755 /var/nfsshare
chown nfsnobody:nfsnobody /var/nfsshare
Wir verwenden /var/nfsshare als freigegebenen Ordner. Wenn wir ein anderes Laufwerk wie das /home-Verzeichnis verwenden, führen die Berechtigungsänderungen zu einem massiven Berechtigungsproblem und ruinieren die gesamte Hierarchie. Falls wir also das /home-Verzeichnis freigeben möchten, dürfen die Berechtigungen nicht geändert werden.
Als Nächstes müssen wir die Dienste starten und ermöglichen, dass sie beim Booten gestartet werden.
systemctl enable rpcbind
systemctl enable nfs-server
systemctl enable nfs-lock
systemctl enable nfs-idmap
systemctl start rpcbind
systemctl start nfs-server
systemctl start nfs-lock
systemctl start nfs-idmap
Jetzt teilen wir das NFS-Verzeichnis wie folgt über das Netzwerk:
nano /etc/exports
Wir werden zwei Freigabepunkte erstellen:/home und /var/nfsshare. Bearbeiten Sie die Exportdatei wie folgt:
/var/nfsshare 192.168.0.101(rw,sync,no_root_squash,no_all_squash) /home 192.168.0.101(rw,sync,no_root_squash,no_all_squash)
Hinweis 192.168.0.101 ist die IP des Client-Rechners. Wenn Sie möchten, dass ein anderer Client darauf zugreifen soll, müssen Sie sie IP-weise hinzufügen. Andernfalls können Sie "*" hinzufügen anstelle von IP für alle IP-Zugriffe.
Bedingung ist, dass es an beiden Enden pingbar sein muss.
Starten Sie schließlich den NFS-Dienst:
systemctl restart nfs-server
Auch hier müssen wir die NFS-Dienstüberschreibung im CentOS 7-Firewall-cmd-Dienst für öffentliche Zonen wie folgt hinzufügen:
firewall-cmd --permanent --zone=public --add-service=nfs
firewall-cmd --permanent --zone=public --add-service=mountd
firewall-cmd --permanent --zone=public --add-service=rpc-bind
firewall-cmd --reload
Hinweis:Wenn dies nicht getan wird, wird auf der Clientseite ein Fehler für Verbindungszeitüberschreitung ausgegeben.
Jetzt sind wir mit dem NFS-Serverteil fertig.
3 NFS-Client-Ende
In meinem Fall habe ich einen CentOS 7-Desktop als Client. Andere CentOS-Versionen funktionieren auch auf die gleiche Weise. Installieren Sie das nfs-utild-Paket wie folgt:
yum install nfs-utils
Erstellen Sie nun die NFS-Verzeichnis-Einhängepunkte:
mkdir -p /mnt/nfs/home
mkdir -p /mnt/nfs/var/nfsshare
Als Nächstes stellen wir das freigegebene NFS-Home-Verzeichnis wie unten gezeigt auf dem Clientcomputer bereit:
mount -t nfs 192.168.0.100:/home /mnt/nfs/home/
Es wird /home des NFS-Servers gemountet. Als Nächstes mounten wir das /var/nfsshare Verzeichnis:
mount -t nfs 192.168.0.100:/var/nfsshare /mnt/nfs/var/nfsshare/
Jetzt sind wir mit der NFS-Freigabe verbunden, wir werden sie wie folgt abgleichen:
df -kh
[[email protected] ~]# df -kh
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 39G 1.1G 38G 3% /
devtmpfs 488M 0 488M 0% /dev
tmpfs 494M 0 494M 0% /dev/shm
tmpfs 494M 6.7M 487M 2% /run
tmpfs 494M 0 494M 0% /sys/fs/cgroup
/dev/mapper/centos-home 19G 33M 19G 1% /home
/dev/sda1 497M 126M 372M 26% /boot
192.168.0.100:/var/nfsshare 39G 980M 38G 3% /mnt/nfs/var/nfsshare
192.168.0.100:/home 19G 33M 19G 1% /mnt/nfs/home
[[email protected] ~]#
Wir sind also mit der NFS-Freigabe verbunden.
Jetzt prüfen wir die Lese-/Schreibberechtigungen im freigegebenen Pfad. Geben Sie beim Client den Befehl ein:
touch /mnt/nfs/var/nfsshare/test_nfs
Wir haben also erfolgreich eine NFS-Freigabe konfiguriert.
4 Permanentes NFS-Mounting
Wir müssen die NFS-Freigabe nach jedem Neustart auf dem Client neu bereitstellen. Hier sind die Schritte, um es dauerhaft zu mounten, indem Sie die NFS-Freigabe in die /etc/fstab-Datei des Client-Rechners einfügen:
nano /etc/fstab
Fügen Sie die Einträge wie folgt hinzu:
[...]
192.168.0.100:/home /mnt/nfs/home nfs defaults 0 0 192.168.0.100:/var/nfsshare /mnt/nfs/var/nfsshare nfs defaults 0 0
Hinweis:192.168.0.100 ist die NFS-Share-IP-Adresse des Servers, sie wird in Ihrem Fall abweichen.
Dadurch wird die NFS-Freigabe dauerhaft gemountet. Jetzt können Sie die Maschine neu starten und Einhängepunkte sind auch nach dem Neustart dauerhaft.
Prost, jetzt haben wir einen erfolgreich konfigurierten NFS-Server über CentOS 7 :)
5 Links
- CentOS:http://www.centos.org/