hoe de NFS Server in te stellen op CentOS 7 / RHEL 7

NFS staat voor Network File System, helpt u om bestanden en mappen te delen tussen Linux / Unix systemen, ontwikkeld door SUN Microsystems in 1990. NFS stelt u in staat om een externe share lokaal aan te koppelen.

deze gids helpt u bij het instellen van de NFS-server op CentOS 7 / RHEL 7.

voordelen van NFS

  • Delen van bestanden / mappen tussen * nix-systemen
  • maakt het mogelijk om externe bestandssystemen lokaal aan te koppelen
  • kan worden gebruikt als gecentraliseerd opslagsysteem
  • het kan worden gebruikt als een Opslagdomein ( Datastore) voor VMware en ander virtualisatieplatform.
  • staat toe dat toepassingen configuratie-en gegevensbestanden delen met meerdere knooppunten.
  • maakt het mogelijk om bijgewerkte bestanden over de share te hebben.

belangrijke diensten

de volgende belangrijke NFS-diensten zijn opgenomen in NFS-utils-pakketten.

rpcbind: de rpcbind-server converteert RPC-programmanummers naar universele adressen.

nfs-server: hiermee kunnen clients toegang krijgen tot NFS-shares.

nfs-lock / rpc-statd: vergrendeling van NFS-bestanden. Implementeer file lock recovery wanneer een NFS-server crasht en opnieuw opstart.

nfs-idmap: het vertaalt gebruiker-en groep-ID ’s naar namen, en om gebruiker-en groepsnamen
te vertalen naar id’ s

belangrijke configuratiebestanden

zou u voornamelijk aan onderstaande configuratiebestanden werken om NFS-server en-Clients in te stellen.

/ etc / exports: Het is het belangrijkste configuratiebestand, controleert welke bestandssystemen worden geëxporteerd naar externe hosts en specificeert opties.

/etc / fstab: dit bestand wordt gebruikt om te bepalen welke bestandssystemen inclusief NFS mappen aangekoppeld worden wanneer het systeem opstart.

/etc/sysconfig / nfs: dit bestand wordt gebruikt om te bepalen op welke poorten de vereiste rpc services draaien.

/ etc / hosts.allow en/etc / hosts.weigeren: deze bestanden worden TCP wrappers genoemd, en bepalen de toegang tot de NFS server. Het wordt gebruikt door NFS om te beslissen of een verbinding die vanuit een ander IP-adres binnenkomt wel of niet wordt geaccepteerd.

omgeving

hier zal ik CentOS 7 minimal gebruiken voor deze demo. Deze gids zou ook moeten werken op Oracle Linux en Fedora systemen.

NFS-Server

hostnaam: server.itzgeek.lokaal (CentOS 7)
IP-adres: 192.168.1.10/24

NFS-Client

hostnaam: client.itzgeek.lokaal (CentOS 7)
IP-adres: 192.168.1.20/24

configureer NFS Server

NFS Server

installeer het onderstaande pakket voor NFS server met de opdracht yum.

yum install -y nfs-utils

zodra de pakketten zijn geïnstalleerd, activeer en start NFS services.

systemctl start nfs-server rpcbindsystemctl enable nfs-server rpcbind

maak NFS Share

nu maken we een map om te delen met de NFS-client. Hier zal ik een nieuwe directory aanmaken met de naam nfsfileshare in de / partitie.

u kunt uw bestaande map ook delen met NFS.

mkdir /nfsfileshare

laat NFS-client lezen en schrijven naar de aangemaakte map.

chmod 777 /nfsfileshare/

we moeten het bestand /etc/exports wijzigen om een item te maken van de map /nfsfileshare die u wilt delen.

vi /etc/exports

Maak een NFS-share aan zoals hieronder.

/nfsfileshare 192.168.1.20(rw,sync,no_root_squash)

/nfsfileshare: gedeelde map

192.168.1.20: IP-adres van de client machine. We kunnen ook de hostnaam gebruiken in plaats van een IP-adres. Het is ook mogelijk om het bereik van clients met subnet zoals 192.168.1.0/24 te definiëren.

rw: schrijfbare rechten voor gedeelde map

sync: alle wijzigingen in het bestandssysteem worden onmiddellijk doorgespoeld naar de schijf; de respectievelijke schrijfbewerkingen worden gewacht.

no_root_squash: standaard wordt elke bestandsaanvraag die door gebruiker root op de clientmachine wordt gedaan, behandeld als door gebruiker nobody op de server. (Precies aan welke UID het verzoek is toegewezen hangt af van de UID van gebruiker “nobody” op de server, niet de client.) Als no_root_squash is geselecteerd, dan zal root op de client machine hetzelfde niveau van toegang tot de bestanden op het systeem hebben als root op de server.

u kunt alle opties in de man page Man exports of hier leren kennen.

Exporteer de gedeelde mappen met het volgende commando.

exportfs -r

Extra ‘ s:

exportfs-v: toont een lijst met gedeelde bestanden en exportopties op een server.
exportfs-a: exporteert alle mappen in /etc/exports.
exportfs – u: een of meer mappen negeren.
exportfs-r: alle mappen opnieuw exporteren na het wijzigen van /etc/exports.

na het configureren van de NFS-server, moeten we die gedeelde map in de NFS-client aankoppelen.

Firewall

we moeten de firewall op de NFS-server configureren om NFS-client toegang te geven tot de NFS-share. Om dat te doen, voer je de volgende commando ‘ s uit op de NFS server.

firewall-cmd --permanent --add-service mountdfirewall-cmd --permanent --add-service rpc-bindfirewall-cmd --permanent --add-service nfsfirewall-cmd --reload

NFS-client

NFS-Client

installeren we moeten NFS-pakketten op NFS-client installeren om een externe NFS-share aan te koppelen. Installeer NFS pakketten met het onderstaande commando.

yum install -y nfs-utils

Controleer NFS Share

voordat u de NFS share aankoppelt, verzoek ik u om de NFS-shares die beschikbaar zijn op de NFS-server te controleren door het volgende commando op de NFS-client uit te voeren.

vervang het IP-adres door het IP-adres of de hostnaam van uw NFS-server.
showmount -e 192.168.1.10

Output:

Export list for 192.168.1.10:/nfsfileshare 192.168.1.20

volgens de uitvoer is /nfsfileshare beschikbaar op de NFS server (192.168.1.10) voor de NFS client (192.168.1.20).

Extra ‘ s:

showmount-e: toont de beschikbare shares op uw lokale machine (NFS-Server).
showmount-e <server-ip of hostnaam>: toont de beschikbare shares op de externe server

Mount NFS Share

Maak nu een map op NFS client om de NFS share /nfsfileshare die we hebben gemaakt in de NFS server aan te koppelen.

mkdir /mnt/nfsfileshare

gebruik onderstaande opdracht om een NFS share /nfsfileshare aan te koppelen vanaf NFS server 192.168.1.10 in /mnt/nfsfileshare op NFS client.

mount 192.168.1.10:/nfsfileshare /mnt/nfsfileshare

controleer de aangekoppelde share op de NFS-client met het mount-Commando.

mount | grep nfs

Output:

ssunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime)nfsd on /proc/fs/nfsd type nfsd (rw,relatime)192.168.1.10:/nfsfileshare on /mnt/nfsfileshare type nfs4 (rw,relatime,vers=4.1,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.1.20,local_lock=none,addr=192.168.1.10)

je kunt ook het DF-hT commando gebruiken om de gemount NFS share te controleren.

df -hT

Output:

Filesystem Type Size Used Avail Use% Mounted on/dev/mapper/centos-root xfs 50G 1.2G 49G 3% /devtmpfs devtmpfs 485M 0 485M 0% /devtmpfs tmpfs 496M 0 496M 0% /dev/shmtmpfs tmpfs 496M 6.7M 490M 2% /runtmpfs tmpfs 496M 0 496M 0% /sys/fs/cgroup/dev/mapper/centos-home xfs 47G 33M 47G 1% /home/dev/sda1 xfs 1014M 154M 861M 16% /boottmpfs tmpfs 100M 0 100M 0% /run/user/0192.168.1.10:/nfsfileshare nfs4 50G 1.2G 49G 3% /mnt/nfsfileshare

Maak een bestand aan in de aangekoppelde map om de lees-en schrijftoegang op NFS-share te verifiëren.

touch /mnt/nfsfileshare/test

als het bovenstaande commando geen fout retourneert, hebt u werkende NFS-instellingen.

Automount NFS Shares

om de shares automatisch aan te koppelen bij elke herstart, moet u het /etc/fstab bestand van uw NFS client wijzigen.

vi /etc/fstab

voeg een item toe zoals hieronder.

## /etc/fstab# Created by anaconda on Wed Jan 17 12:04:02 2018## Accessible filesystems, by reference, are maintained under '/dev/disk'# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info#/dev/mapper/centos-root / xfs defaults 0 0UUID=60a496d0-69f4-4355-aef0-c31d688dda1b /boot xfs defaults 0 0/dev/mapper/centos-home /home xfs defaults 0 0/dev/mapper/centos-swap swap swap defaults 0 0192.168.1.10:/nfsfileshare /mnt/nfsfileshare nfs nosuid,rw,sync,hard,intr 0 0

het bestand opslaan en sluiten.

Herstart de client en controleer of de share al dan niet automatisch is aangekoppeld.

reboot

controleer de aangekoppelde share op de NFS-client met het mount-Commando.

mount | grep nfs

Output:

sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime)192.168.1.10:/nfsfileshare on /mnt/nfsfileshare type nfs4 (rw,nosuid,relatime,sync,vers=4.1,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.1.20,local_lock=none,addr=192.168.1.10)

als je die gedeelde map wilt unmounten van je NFS client nadat je klaar bent met het delen van bestanden, kun je die specifieke map unmounten met het umount Commando.

umount /mnt/nfsfileshare

conclusie

u hebt de NFS-Server en NFS-Client met succes ingesteld op CentOS 7 / RHEL 7. Als u geen statische aankoppelingen wilt gebruiken, kunt u AutoFS op CentOS 7 configureren om NFS share alleen aan te koppelen als een gebruiker ze opent.

You might also like

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.