Een NFS-server installeren en configureren op Ubuntu 18.04


NFS (Network File Share) is een protocol waarmee u mappen en bestanden kunt delen met andere Linux-clients in een netwerk. De map die moet worden gedeeld, wordt meestal gemaakt op de NFS-server en er worden bestanden aan toegevoegd.

De clientsystemen koppelen de map die zich op de NFS-server bevindt, waardoor ze toegang krijgen tot de gemaakte bestanden. NFS is handig wanneer u gemeenschappelijke gegevens tussen clientsystemen moet delen, vooral wanneer ze onvoldoende ruimte hebben.

Deze gids bestaat uit 2 hoofdsecties: NFS-server installeren en configureren op Ubuntu en de NFS-client installeren op het Linux-clientsysteem.

NFS-server installeren en configureren op Ubuntu

Volg de onderstaande stappen om de NFS-server te installeren en configureren.

De eerste stap is om het nfs-kernel-server-pakket op de server te installeren. Maar laten we, voordat we dit doen, eerst de systeempakketten bijwerken met de volgende apt-opdracht.

$ sudo apt update

Zodra de update is voltooid, gaat u verder en installeert u het nfs-kernel-server-pakket zoals hieronder weergegeven. Dit zal extra pakketten opslaan zoals nfs-common en rpcbind die even cruciaal zijn voor het instellen van de bestandsshare.

$ sudo apt install nfs-kernel-server

Stap 2: Maak een NFS-exportmap

De tweede stap is het maken van een directory die wordt gedeeld door clientsystemen. Dit wordt ook wel de exportdirectory genoemd en in deze directory zullen we later bestanden maken die toegankelijk zijn voor clientsystemen.

Voer de onderstaande opdracht uit door de naam van de NFS-koppelingsmap op te geven.

$ sudo mkdir -p /mnt/nfs_share

Aangezien we willen dat alle clientcomputers toegang hebben tot de gedeelde map, verwijdert u alle beperkingen in de mapmachtigingen.

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

U kunt ook de bestandsrechten aanpassen aan uw voorkeur. Hier hebben we de lees-, schrijf- en uitvoeringsrechten gegeven voor alle inhoud in de directory.

$ sudo chmod 777 /mnt/nfs_share/

Toestemmingen voor toegang tot de NFS-server zijn gedefinieerd in het bestand/etc/exports. Dus open het bestand met je favoriete teksteditor:

$ sudo vim /etc/exports

U kunt toegang verlenen tot een enkele client, meerdere clients of een volledig subnet specificeren.

In deze handleiding hebben we een volledig subnet toegang gegeven tot de NFS-share.

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

Uitleg over de opties die in de bovenstaande opdracht worden gebruikt.

  • rw: Stands for Read/Write.
  • sync: Requires changes to be written to the disk before they are applied.
  • No_subtree_check: Eliminates subtree checking.

Gebruik de syntaxis om toegang te verlenen aan een enkele client:

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

Geef voor meerdere klanten elke klant op in een apart bestand:

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

Na het verlenen van toegang tot de geprefereerde clientsystemen, exporteert u de NFS-deeldirectory en start u de NFS-kernelserver opnieuw om de wijzigingen door te voeren.

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

Om de client toegang te geven tot de NFS-share, moet u toegang via de firewall toestaan, anders is toegang tot en aankoppelen van de gedeelde map onmogelijk. Om dit te bereiken, voert u de opdracht uit:

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

Laad de firewall opnieuw of schakel deze in (als deze was uitgeschakeld) en controleer de status van de firewall. Poort 2049, de standaard bestandsshare, moet worden geopend.

$ sudo ufw enable
$ sudo ufw status

Installeer de NFS-client op de clientsystemen

We zijn klaar met het installeren en configureren van de NFS-service op de server, laten we nu NFS op het clientsysteem installeren.

Zoals de norm is, begint u eerst met het bijwerken van de systeempakketten en repositories.

$ sudo apt update

Installeer vervolgens nfs-common-pakketten zoals weergegeven.

$ sudo apt install nfs-common

Vervolgens moet u een koppelpunt maken waarop u de nfs-share van de NFS-server gaat aankoppelen. Om dit te doen, voert u de opdracht uit:

$ sudo mkdir -p /mnt/nfs_clientshare

De laatste stap die overblijft, is het aankoppelen van de NFS-share die wordt gedeeld door de NFS-server. Hierdoor krijgt het clientsysteem toegang tot de gedeelde map.

Laten we het IP-adres van de NFS-server controleren met de opdracht ifconfig.

$ ifconfig

Om dit te bereiken, voert u de opdracht uit:

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

Om te controleren of onze NFS-setup werkt, gaan we een paar bestanden aanmaken in de NFS-share-directory op de server.

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

Ga nu terug naar het NFS-clientsysteem en controleer of de bestanden bestaan.

$ ls -l /mnt/nfs_clientshare/

Super goed! De uitvoer bevestigt dat we toegang hebben tot de bestanden die we zojuist op de NFS-server hebben gemaakt!

En dat erover. In deze handleiding hebben we u door de installatie en configuratie van de NFS-server op Ubuntu 18.04 geleid. NFS wordt tegenwoordig zelden gebruikt en is gedegradeerd ten gunste van het robuustere en veiligere Samba-deelprotocol.