Sådan opsættes NFS Server og klient på CentOS 8


Network File System (NFS), også kendt som klient/server-filsystem, er en populær, platformoverskridende og distribueret filsystemprotokol, der bruges til at eksportere lokale filsystemer over netværket, så klienter kan dele mapper og filer med andre over et netværk og interagere med dem som om de er monteret lokalt.

I CentOS/RHEL 8 er den understøttede NFS-version NFSv3 og NFSv4, og standard NFS-versionen er 4.2, som understøtter Access Control Lists (ACL'er), serversides kopi, sparsomme filer, pladsreservation, mærket NFS, layoutforbedringer og meget mere.

I denne artikel lærer du, hvordan du installerer og konfigurerer NFS-serveren og NFS-klienten på CentOS/RHEL 8 Linux-distributioner.

  1. Installationsvejledning til CentOS 8
  2. RHEL 8 Minimal installation
  3. Aktivér RHEL-abonnement i RHEL 8
  4. Indstil en statisk IP-adresse i CentOS/RHEL 8

NFS Server IP:	10.20.20.8
NFS Client IP:	10.20.20.9	

Opsætning af NFS-server på CentOS 8

1. Start først med at installere de nødvendige pakker på NFS-serveren. Pakkerne er nfs-utils, som giver en dæmon til kernen NFS-serveren og relaterede værktøjer, som f.eks. Indeholder showmount-programmet.

Kør følgende kommando for at installere pakken på NFS-serveren (brug sudo, hvis du administrerer systemet som en ikke-root-bruger).

# dnf install nfs-utils

2. Når installationen er afsluttet, skal du starte nfs-server-tjenesten, aktivere den automatisk at starte ved systemstart og derefter kontrollere dens status ved hjælp af systemctl-kommandoerne.

# systemctl start nfs-server.service
# systemctl enable nfs-server.service
# systemctl status nfs-server.service

Bemærk, at de andre tjenester, der er nødvendige for at køre en NFS-server eller montering af NFS-aktier, såsom nfsd, nfs-idmapd, rpcbind, rpc.mountd, lockd, rpc.statd, rpc.rquotad og rpc.idmapd, startes automatisk.

Konfigurationsfilerne til NFS-serveren er:

  • /etc/nfs.conf - hovedkonfigurationsfil til NFS-dæmoner og værktøjer.
  • /etc/nfsmount.conf - en NFS-monteringskonfigurationsfil.

3. Opret derefter filsystemerne, der skal eksporteres eller deles på NFS-serveren. Til denne vejledning opretter vi fire filsystemer, hvoraf tre bruges af personale fra tre afdelinger: menneskelig ressource, økonomi og markedsføring til deling af filer, og den ene er til root-brugerbackups.

# mkdir -p  /mnt/nfs_shares/{Human_Resource,Finance,Marketing}
# mkdir  -p /mnt/backups
# ls -l /mnt/nfs_shares/

4. Eksporter derefter ovenstående filsystemer til NFS-serveren/etc/eksportkonfigurationsfilen for at bestemme lokale fysiske filsystemer, der er tilgængelige for NFS-klienter.

/mnt/nfs_shares/Human_Resource  	10.20.20.0/24(rw,sync)
/mnt/nfs_shares/Finance			10.20.10.0/24(rw,sync)
/mnt/nfs_shares/Marketing		10.20.30.0/24(rw,sync)
/mnt/backups				10.20.20.9/24(rw,sync,no_all_squash,root_squash)

Her er nogle af eksportindstillingerne (læs mandeksport for mere information og eksportindstillinger):

  • rw - tillader både læsning og skriveadgang på filsystemet.
  • synkronisering - beder NFS-serveren om at skrive operationer (skrive oplysninger til disken), når der anmodes om det (gælder som standard).
  • all_squash - kortlægger alle UID'er og GID'er fra klientanmodninger til den anonyme bruger.
  • no_all_squash - bruges til at kortlægge alle UID'er og GID'er fra klientanmodninger til identiske UID'er og GID'er på NFS-serveren.
  • root_squash - kortlægger anmodninger fra rodbruger eller UID/GID 0 fra klienten til den anonyme UID/GID.

5. For at eksportere ovenstående filsystem skal du køre kommandoen exportfs med flagget -a betyder eksport eller unexport af alle mapper, -r betyder reexport af alle mapper, synkronisering/var/lib/nfs/etab med/etc/eksport og filer under /etc/exports.d, og -v muliggør detaljeret output.

# exportfs -arv

6. Kør følgende kommando for at få vist den aktuelle eksportliste. Bemærk, at eksporttabellen også anvender nogle af standardeksportindstillingerne, der ikke er udtrykkeligt defineret som vist i det følgende skærmbillede.

# exportfs  -s

7. Dernæst, hvis du har firewalld-tjenesten kørende, skal du tillade trafik til de nødvendige NFS-tjenester (mountd, nfs, rpc-bind) via firewallen og derefter indlæse firewallreglerne for at anvende ændringerne som følger.

# firewall-cmd --permanent --add-service=nfs
# firewall-cmd --permanent --add-service=rpc-bind
# firewall-cmd --permanent --add-service=mountd
# firewall-cmd --reload

Opsætning af NFS-klient på klientsystemer

8. Installer nu de nødvendige pakker på klientknudepunkterne for at få adgang til NFS-aktier på klientsystemerne. Kør den relevante kommando til din distribution:

# dnf install nfs-utils nfs4-acl-tools         [On CentOS/RHEL]
$ sudo apt install nfs-common nfs4-acl-tools   [On Debian/Ubuntu]

9. Kør derefter kommandoen showmount for at vise monteringsoplysninger for NFS-serveren. Kommandoen skal sende det eksporterede filsystem på klienten som vist på skærmbilledet.

# showmount -e 10.20.20.8

9. Opret derefter et lokalt filsystem/bibliotek til montering af det eksterne NFS-filsystem og monter det som et ntf-filsystem.

# mkdir -p /mnt/backups
# mount -t nfs  10.20.20.8:/mnt/backups /mnt/backups

10. Bekræft derefter, at det eksterne filsystem er monteret ved at køre mount-kommandoen og filtrere nfs-monteringer.

# mount | grep nfs

11. For at aktivere monteringen vedvarende, selv efter en systemgenstart, skal du køre følgende kommando for at indtaste den relevante post i/etc/fstab.

# echo "10.20.20.8:/mnt/backups     /mnt/backups  nfs     defaults 0 0">>/etc/fstab
# cat /etc/fstab

12. Til sidst, test om NFS-opsætningen fungerer fint ved at oprette en fil på serveren og kontrollere, om filen kan ses i klienten.

# touch /mnt/backups/file_created_on_server.text     [On NFS Server]
# ls -l /mnt/backups/file_created_on_server.text     [On NFS client]

Gør derefter det omvendte.

# touch /mnt/backups/file_created_on_client.text     [On NFS Client]
# ls -l /mnt/backups/file_created_on_client.text     [On NFS Server]

13. Sådan afmonteres det eksterne filsystem på klientsiden.

# umount /mnt/backups

Bemærk, at du ikke kan afmontere det eksterne filsystem, hvis du arbejder inden for det som vist i det følgende skærmbillede.

Det er det! I denne vejledning viste vi, hvordan du installerer og konfigurerer en NFS-server og klient i CentOS/RHEL 8. Hvis du har nogle tanker at dele eller spørgsmål, så brug kommentarformularen nedenfor for at vende tilbage til os.