Sådan installeres og konfigureres en NFS-server på Ubuntu 18.04


NFS (Network File Share) er en protokol, der giver dig mulighed for at dele mapper og filer med andre Linux-klienter i et netværk. Mappen, der skal deles, oprettes normalt på NFS-serveren, og der føjes filer til den.

Klientsystemerne monterer den mappe, der findes på NFS-serveren, hvilket giver dem adgang til de oprettede filer. NFS er praktisk, når du har brug for at dele almindelige data mellem klientsystemer, især når de løber tør for plads.

Denne vejledning består af 2 hovedsektioner: Installation og konfiguration af NFS Server på Ubuntu 18.04/20.04 og Installation af NFS-klienten på klientens Linux-system.

Installation og konfiguration af NFS Server på Ubuntu

Følg trinene beskrevet nedenfor for at installere og konfigurere NFS-serveren.

Det første trin er at installere nfs-kernel-server-pakken på serveren. Men inden vi gør dette, lad os først opdatere systempakkerne ved hjælp af følgende apt-kommando.

$ sudo apt update

Når opdateringen er afsluttet, skal du fortsætte og installere nfs-kernel-server-pakken som vist nedenfor. Dette gemmer yderligere pakker såsom nfs-common og rpcbind, som er lige så vigtige for opsætningen af fildelen.

$ sudo apt install nfs-kernel-server

Trin 2: Opret en NFS Export Directory

Det andet trin vil være at oprette en mappe, der deles mellem klientsystemer. Dette kaldes også eksportmappen, og det er i denne mappe, at vi senere opretter filer, der er tilgængelige for klientsystemer.

Kør kommandoen nedenfor ved at angive navnet på NFS-monteringsmappen.

$ sudo mkdir -p /mnt/nfs_share

Da vi ønsker, at alle klientmaskiner skal have adgang til det delte bibliotek, skal du fjerne eventuelle begrænsninger i katalogtilladelserne.

$ sudo chown -R nobody:nogroup /mnt/nfs_share/

Du kan også tilpasse filtilladelserne efter din præference. Her har vi givet læse-, skrive- og eksekveringsrettighederne til alt indholdet i kataloget.

$ sudo chmod 777 /mnt/nfs_share/

Tilladelser til adgang til NFS-serveren er defineret i filen/etc/eksport. Så åbn filen ved hjælp af din yndlings teksteditor:

$ sudo vim /etc/exports

Du kan give adgang til en enkelt klient, flere klienter eller angive et helt undernet.

I denne vejledning har vi tilladt et helt subnet at få adgang til NFS-aktien.

/mnt/nfs_share  192.168.43.0/24(rw,sync,no_subtree_check)

Forklaring om de muligheder, der anvendes i ovenstående kommando.

  • rw: Står til læse/skrive.
  • synkronisering: Kræver, at ændringer skrives til disken, før de anvendes.
  • No_subtree_check: Eliminerer undertræskontrol.

For at give adgang til en enkelt klient skal du bruge syntaksen:

/mnt/nfs_share  client_IP_1 (re,sync,no_subtree_check)

For flere klienter skal du angive hver klient i en separat fil:

/mnt/nfs_share  client_IP_1 (re,sync,no_subtree_check)
/mnt/nfs_share  client_IP_2 (re,sync,no_subtree_check)

Efter at have givet adgang til de foretrukne klientsystemer, skal du eksportere NFS-delekataloget og genstarte NFS-kerneserveren for at ændringerne skal træde i kraft.

$ sudo exportfs -a
$ sudo systemctl restart nfs-kernel-server

For at klienten kan få adgang til NFS-delingen, skal du give adgang via firewallen, ellers er det umuligt at få adgang til og montere den delte mappe. For at opnå dette skal du køre kommandoen:

$ sudo ufw allow from 192.168.43.0/24 to any port nfs

Genindlæs eller aktiver firewallen (hvis den var slukket) og kontroller firewallens status. Port 2049, som er standardfildeling, skal åbnes.

$ sudo ufw enable
$ sudo ufw status

Installer NFS-klienten på klientsystemerne

Vi er færdige med at installere og konfigurere NFS-tjenesten på serveren. Lad os nu installere NFS på klientsystemet.

Som det er normen, skal du begynde med at opdatere systempakkerne og arkiverne før noget andet.

$ sudo apt update

Installer derefter nfs-common-pakker som vist.

$ sudo apt install nfs-common

Dernæst skal du oprette et monteringspunkt, hvorpå du monterer nfs-delen fra NFS-serveren. For at gøre dette skal du køre kommandoen:

$ sudo mkdir -p /mnt/nfs_clientshare

Det sidste trin, der er tilbage, er montering af NFS-share, der deles af NFS-serveren. Dette giver klientsystemet adgang til den delte bibliotek.

Lad os kontrollere NFS-serverens IP-adresse ved hjælp af ifconfig-kommandoen.

$ ifconfig

For at opnå dette skal du køre kommandoen:

$ sudo mount 192.168.43.234:/mnt/nfs_share  /mnt/nfs_clientshare

For at kontrollere, at vores NFS-opsætning fungerer, opretter vi et par filer i NFS-delekataloget på serveren.

$ cd /mnt/nfs_share/
$ touch file1.txt file2.txt file3.txt

Gå nu tilbage til NFS-klientsystemet, og kontroller, om filerne findes.

$ ls -l /mnt/nfs_clientshare/

Store! Outputtet bekræfter, at vi kan få adgang til de filer, vi lige har oprettet på NFS-serveren!

Og det om det. I denne vejledning gik vi igennem installationen og konfigurationen af NFS-serveren på Ubuntu 18.04 og Ubuntu 20.04. NFS bruges sjældent i dag og er blevet henvist til fordel for den mere robuste og sikre Samba-delprotokol.