Kako postaviti NFS server i klijenta na CentOS 8


Mrežni sistem datoteka (NFS) poznat i kao sistem datoteka klijent/server je popularan, međuplatformski i distribuirani protokol sistema datoteka koji se koristi za izvoz lokalnih sistema datoteka preko mreže tako da da klijenti mogu dijeliti direktorije i datoteke s drugima preko mreže i komunicirati s njima kao da su montirani lokalno.

U CentOS/RHEL 8, podržane NFS verzije su NFSv3 i NFSv4, a zadana verzija NFS-a je 4.2 koja ima podršku za liste kontrole pristupa ( ACL-ovi), kopije na strani servera, rijetke datoteke, rezervacija prostora, označeni NFS, poboljšanja izgleda i još mnogo toga.

U ovom članku ćete naučiti kako instalirati i konfigurirati NFS server i NFS klijent na CentOS/RHEL 8 Linux distribucijama.

Preduvjeti:

  1. Vodič za instalaciju CentOS 8
  2. RHEL 8 Minimalna instalacija
  3. Omogućite RHEL pretplatu u RHEL 8
  4. Postavite statičku IP adresu u CentOS/RHEL 8

Naše okruženje za testiranje:

NFS Server IP:	10.20.20.8
NFS Client IP:	10.20.20.9	

Postavljanje NFS servera na CentOS 8

1. Prvo počnite instaliranjem potrebnih paketa na NFS server. Paketi su nfs-utils koji pružaju demon za NFS server kernela i povezane alate kao što je program showmount.

Pokrenite sljedeću naredbu da instalirate paket na NFS server (koristite sudo ako administrirate sistem kao nekorijenski korisnik).

dnf install nfs-utils

2. Kada se instalacija završi, pokrenite uslugu nfs-server, omogućite joj da se automatski pokrene pri pokretanju sistema, a zatim provjerite njen status koristeći systemctl komande.

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

Imajte na umu da su ostale usluge potrebne za pokretanje NFS servera ili montiranje NFS dijeljenja kao što su nfsd, nfs-idmapd, rpcbind, rpc.mountd, lockd, rpc.statd, rpc.rquotad i rpc.idmapd > će se automatski pokrenuti.

Konfiguracijski fajlovi za NFS server su:

  • /etc/nfs.conf – glavna konfiguraciona datoteka za NFS demone i alate.
  • /etc/nfsmount.conf – NFS konfiguracijski fajl za montiranje.

3. Zatim kreirajte sisteme datoteka za izvoz ili dijeljenje na NFS serveru. Za ovaj vodič kreiraćemo četiri sistema datoteka, od kojih tri koristi osoblje iz tri odeljenja: za ljudske resurse, finansije i marketing za deljenje datoteka, a jedan je za pravljenje rezervnih kopija root korisnika.

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

4. Zatim izvezite gornje sisteme datoteka u konfiguracijsku datoteku /etc/exports NFS servera da odredite lokalne fizičke sisteme datoteka koji su dostupni NFS klijentima.

/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)

Evo nekih od opcija izvoza (pročitajte čovjek izvoz za više informacija i opcije izvoza):

  • rw – omogućava pristup za čitanje i pisanje na sistem datoteka.
  • sinhronizacija – govori NFS serveru da zapiše operacije (zapisivanje informacija na disk) kada se to zatraži (primjenjuje se po defaultu).
  • all_squash – mapira sve UID-ove i GID-ove iz zahtjeva klijenta do anonimnog korisnika.
  • no_all_squash – koristi se za mapiranje svih UID-ova i GID-ova iz zahtjeva klijenta u identične UID-ove i GID-ove na NFS serveru.
  • root_squash – mapira zahtjeve od root korisnika ili UID/GID 0 od klijenta na anonimni UID/GID.

5. Da izvezete gornji sistem datoteka, pokrenite naredbu exportfs sa oznakom -a znači izvoz ili poništavanje izvoza svih direktorija, - r znači ponovni izvoz svih direktorija, sinhronizaciju /var/lib/nfs/etab sa /etc/exports i datotekama pod /etc/exports.d , a -v omogućava detaljan izlaz.

exportfs -arv

6. Za prikaz trenutne liste za izvoz, pokrenite sljedeću naredbu. Imajte na umu da tabela izvozi također primjenjuje neke od zadanih opcija izvoza koje nisu eksplicitno definirane kao što je prikazano na sljedećem snimku ekrana.

exportfs  -s

7. Zatim, ako imate pokrenutu uslugu firewalld, morate dozvoliti promet potrebnim NFS uslugama (mountd, nfs , rpc-bind) preko zaštitnog zida, a zatim ponovo učitajte pravila zaštitnog zida da biste primijenili promjene, kako slijedi.

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

Postavljanje NFS klijenta na klijentskim sistemima

8. Sada na klijentskim čvorovima, instalirajte potrebne pakete za pristup NFS dionicama na klijentskim sistemima. Pokrenite odgovarajuću naredbu za vašu distribuciju:

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

9. Zatim pokrenite naredbu showmount da prikažete informacije o montiranju za NFS server. Naredba bi trebala izbaciti izvezeni sistem datoteka na klijentu kao što je prikazano na snimku ekrana.

showmount -e 10.20.20.8

9. Zatim kreirajte lokalni sistem datoteka/direktorij za montiranje udaljenog NFS sistema datoteka i montirajte ga kao ntf sistem datoteka.

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

10. Zatim potvrdite da je udaljeni sistem datoteka montiran pokretanjem naredbe mount i filterom nfs montiranja.

mount | grep nfs

11. Da biste omogućili da montiranje traje čak i nakon ponovnog pokretanja sistema, pokrenite sljedeću naredbu da unesete odgovarajući unos u /etc/fstab.

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

12. Na kraju, testirajte da li NFS podešavanje radi dobro tako što ćete kreirati datoteku na serveru i provjeriti da li se datoteka može vidjeti u klijentu.

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

Zatim uradite obrnuto.

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

13. Za demontažu udaljenog sistema datoteka na strani klijenta.

umount /mnt/backups

Imajte na umu da ne možete demontirati udaljeni sistem datoteka ako radite unutar njega kao što je prikazano na sljedećem snimku ekrana.

To je to! U ovom vodiču smo pokazali kako da instalirate i konfigurišete NFS server i klijent u CentOS/RHEL 8. Ako imate bilo kakva razmišljanja ili pitanja, koristite formular za komentare. ispod da nam se javite.