NFS står för Network File System, hjälper dig att dela filer och mappar mellan Linux / Unix-system, som utvecklats av SUN Microsystems 1990. Med NFS kan du montera en fjärranslutning lokalt.
den här guiden hjälper dig att ställa NFS server på CentOS 7 / RHEL 7.
fördelar med NFS
- fil / mappdelning mellan *nix-system
- gör det möjligt att montera fjärrfilsystem lokalt
- kan fungera som centraliserat lagringssystem
- det kan användas som en Lagringsdomän ( Datastore) för VMware och annan virtualiseringsplattform.
- tillåter applikationer att dela konfigurations-och datafiler med flera noder.
- tillåter att ha uppdaterade filer över aktien.
viktiga tjänster
följande är de viktiga NFS-tjänsterna, som ingår i NFS-utils-paket.
rpcbind: rpcbind-servern konverterar RPC-programnummer till universella adresser.
nfs-server: det gör det möjligt för klienter att komma åt NFS-aktier.
nfs-lock / rpc-statd: NFS-fil låsning. Implementera file lock recovery när en NFS-server kraschar och startar om.
nfs-idmap: det översätter användar-och grupp-ID till namn, och att översätta användar-och gruppnamn
till id
viktiga konfigurationsfiler
du skulle arbeta främst på nedan konfigurationsfiler för att ställa NFS server och klienter.
/etc/export: Det är huvudkonfigurationsfilen, kontrollerar vilka filsystem som exporteras till fjärrvärdar och anger alternativ.
/etc / fstab: den här filen används för att styra vilka filsystem inklusive NFS-kataloger som är monterade när systemet startar.
/etc/sysconfig / nfs: den här filen används för att styra vilka portar de nödvändiga RPC-tjänsterna körs på.
/etc / värdar.Tillåt och / etc / värdar.neka: dessa filer kallas TCP wrappers, styr åtkomsten till NFS-servern. Den används av NFS för att bestämma om en anslutning som kommer in från en annan IP-adress ska accepteras eller inte.
miljö
här kommer jag att använda CentOS 7 minimal för denna demo. Den här guiden bör också fungera på Oracle Linux och Fedora-system.
NFS-Server
värdnamn: server.itzgeek.lokal (CentOS 7)
IP-adress: 192.168.1.10/24
NFS-klient
värdnamn: klient.itzgeek.lokal (CentOS 7)
IP-adress: 192.168.1.20/24
konfigurera NFS-Server
installera NFS-Server
installera nedanstående paket för NFS-server med kommandot yum.
yum install -y nfs-utils
när paketen är installerade, aktivera och starta NFS-tjänster.
systemctl start nfs-server rpcbindsystemctl enable nfs-server rpcbind
skapa NFS dela
nu, låt oss skapa en katalog för att dela med NFS-klienten. Här kommer jag att skapa en ny katalog med namnet nfsfileshare i / partitionen.
du kan också dela din befintliga katalog med NFS.
mkdir /nfsfileshare
låt NFS-klienten läsa och skriva till den skapade katalogen.
chmod 777 /nfsfileshare/
vi måste ändra /etc/exports-filen för att göra en post i katalogen /nfsfileshare som du vill dela.
vi /etc/exports
skapa en NFS dela något som nedan.
/nfsfileshare 192.168.1.20(rw,sync,no_root_squash)
/nfsfileshare: delad katalog
192.168.1.20: IP-adress för klientmaskinen. Vi kan också använda värdnamnet istället för en IP-adress. Det är också möjligt att definiera utbudet av klienter med subnät som 192.168.1.0/24.
rw: skrivbar behörighet till delad mapp
sync: alla ändringar i filsystemet spolas omedelbart till disk; respektive skrivoperationer väntar på.
no_root_squash: som standard behandlas alla filförfrågningar från användarrot på klientdatorn som av användaren ingen på servern. (Exakt vilket UID begäran mappas till beror på uid för användaren ”ingen” på servern, inte klienten.) Om no_root_squash är valt, kommer root på klientmaskinen att ha samma åtkomstnivå till filerna på systemet som root på servern.
du kan lära känna alla alternativ i man sidan Man export eller här.
exportera de delade katalogerna med följande kommando.
exportfs -r
Extras:
exportfs-v: visar en lista över delningsfiler och exportalternativ på en server.
exportfs-a: exporterar alla kataloger som anges i/etc / export.
exportfs-u: UnExport en eller flera kataloger.
exportfs-r: ReExport alla kataloger efter ändring / etc / export.
efter att ha konfigurerat NFS-servern måste vi montera den delade katalogen i NFS-klienten.
konfigurera brandvägg
vi måste konfigurera brandväggen på NFS-servern så att NFS-klienten kan komma åt NFS-delen. För att göra det, kör följande kommandon på NFS-servern.
firewall-cmd --permanent --add-service mountdfirewall-cmd --permanent --add-service rpc-bindfirewall-cmd --permanent --add-service nfsfirewall-cmd --reload
konfigurera NFS-klient
installera NFS-klient
vi måste installera NFS-paket på NFS-klienten för att montera en fjärransluten NFS-delning. Installera NFS-paket med kommandot nedan.
yum install -y nfs-utils
kontrollera NFS-delningen
innan du monterar NFS-delen ber jag dig att kontrollera NFS-delningarna som är tillgängliga på NFS-servern genom att köra följande kommando på NFS-klienten.
showmount -e 192.168.1.10
utgång:
Export list for 192.168.1.10:/nfsfileshare 192.168.1.20
enligt utgången är /nfsfileshare tillgänglig på NFS-servern (192.168.1.10) för NFS-klienten (192.168.1.20).
extra:
showmount-e : Visar tillgängliga resurser på din lokala dator (NFS-Server).
showmount-e <server-ip eller värdnamn>: listar tillgängliga resurser på fjärrservern
skapa nu en katalog på NFS-klienten för att montera NFS share /nfsfileshare som vi har skapat i NFS-servern.
mkdir /mnt/nfsfileshare
använd kommandot nedan för att montera en NFS share /nfsfileshare från NFS server 192.168.1.10 in /mnt/nfsfileshare på NFS-klienten.
mount 192.168.1.10:/nfsfileshare /mnt/nfsfileshare
verifiera den monterade delen på NFS-klienten med kommandot mount.
mount | grep nfs
utgång:
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)
du kan också använda kommandot df-hT för att kontrollera den monterade NFS-delen.
df -hT
utgång:
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
skapa en fil i den monterade katalogen för att verifiera läs-och skrivåtkomst på NFS-delning.
touch /mnt/nfsfileshare/test
om ovanstående kommando returnerar inget fel har du fungerande NFS-inställning.
Automount NFS-aktier
för att montera aktierna automatiskt vid varje omstart måste du ändra /etc/fstab-filen i din NFS-klient.
vi /etc/fstab
Lägg till en post något som nedan.
## /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
spara och stäng filen.
starta om klientmaskinen och kontrollera om delningen är automatiskt monterad eller inte.
reboot
verifiera den monterade delen på NFS-klienten med kommandot mount.
mount | grep nfs
utgång:
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)
om du vill avmontera den delade katalogen från din NFS-klient när du är klar med fildelningen kan du avmontera den specifika katalogen med kommandot umount.
umount /mnt/nfsfileshare
slutsats
du har konfigurerat NFS-Server och NFS-klient på CentOS 7 / RHEL 7 framgångsrikt. Om du inte vill använda statiska fästen kan du konfigurera AutoFS på CentOS 7 för att montera NFS-delning endast när en användare kommer åt dem.