Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Windows Phone
  • NFSv4 pruža objedinjeni pristup mreži. Instalacija i konfiguracija NFS poslužitelja

NFSv4 pruža objedinjeni pristup mreži. Instalacija i konfiguracija NFS poslužitelja

Nisu svi upoznati s protokolima za prijenos podataka. Ali mnogi bi željeli povezati svoja računala s jednom mrežom ili koristiti poslužitelj za pohranu datoteka. Jedan od načina za to je NFS. Kako postaviti NFS poslužitelj u Ubuntuu - čitajte dalje.

Ispravnom konfiguracijom NFS-a možete kombinirati računala na različitim operativnim sustavima u jednu mrežu.

Network File System je protokol za mrežni pristup datotekama. Kao i obično, sastoji se od dva dijela. Jedan - klijent, koji se nalazi na računalu s kojeg se pregledavaju udaljeni podaci. Drugi – server – nalazi se na računalu na kojem se pohranjuju ti podaci. Prilično je zgodno koristiti dodatni prostor na disku, posebno na lokalnoj mreži. A ako govorimo o nekim korporativnim računalima, onda je to jednostavno potrebno.

Koja je razlika?

Danas postoji velik broj protokola i širok izbor softvera koji obavljaju iste funkcije. Po čemu se NFS ističe?

  • Mogućnost povezivanja u jednu mrežu računala na različitim operativnim sustavima. Često je prikladno povezati Windows OS putem NFS-a na Unix sustav, na primjer, Ubuntu. Samba postoji i koristi se u iste svrhe, ali je NFS lakši, jednostavniji i brži od ovog programa, jer je implementiran na razini kernela. Stoga će postavljanje pristupa kroz njega, u pravilu, biti lakše.
  • NFS omogućuje transparentan pristup datotekama. To znači da se sve udaljene datoteke reproduciraju potpuno isto kao i lokalne. Programi ne moraju biti nadograđeni za reprodukciju bilo koje datoteke koja se nalazi na poslužitelju.
  • NFS šalje samo traženi dio datoteke, a ne cijelu datoteku.

Za puni rad morate instalirati Network File System na najmanje dva računala: poslužitelj i klijent. Naravno, početnik će se najviše morati znojiti oko poslužiteljskog dijela, jer je tamo potrebno "dijeliti" (otvoreni pristup) mape. Međutim, sve je to prilično lako učiniti.

Kao i većina protokola za prijenos podataka, NFS je sve samo ne mlad. Razvijen je 1984. godine i bio je namijenjen UNIX sustavima. Ovo je još uvijek glavna uloga NFS-a, ali mnogi su otkrili da ga je vrlo zgodno koristiti za povezivanje Windows računala s Linux računalima. Osim toga, NFS je izvrstan za reprodukciju multimedijskog sadržaja preko lokalne kućne mreže. Samba u ovoj ulozi često visi i usporava.

Instalacija stražnjeg dijela NFS-a

Instalirat ćemo serverski dio protokola na Ubuntu 16.04. Naravno, ako imate izdanje poslužitelja, postupak se ni na koji način ne razlikuje. Samo što se u tradicionalnoj verziji Ubuntua neke radnje mogu izvesti pomoću grafičkog sučelja.

Instaliramo program. Da biste to učinili, možete koristiti centar za preuzimanje aplikacija ili možete jednostavno unijeti naredbu:

sudo apt instalirajte nfs-kernel-server

Nakon toga bit će korisno provjeriti ispravnost instalacije. Ne morate to učiniti, ali svejedno ćemo provjeriti. Upisujemo naredbu:

Luka mora biti 2049 posvuda.

Sada provjeravamo podržava li kernel NFS. Da biste to učinili, unesite:

cat /proc/datotečni sustavi | grep nfs

Rezultirajuća vrijednost bi trebala izgledati ovako: nodev nfsd

To znači da sve radi ispravno. Ako nije, unesite naredbu:

S njim sami instaliramo kernel modul.

Dodaj protokol u automatsko pokretanje. Nije potrebno to učiniti, ali vrlo je nezgodno svaki put ga uključiti. Opet, možete ga dodati pomoću posebne stavke izbornika u postavkama ili to možete učiniti sami pomoću naredbe:

sudo systemctl omogući nfs

Dakle, instalirali smo poslužiteljski dio, ostaje ga ispravno konfigurirati i prijeći na klijentski dio.

Postavka

Postavljanje NFS-a u Ubuntuu uključuje dijeljenje određenih mapa.

Osim jednostavnog otvaranja pristupa, morate također odrediti parametre koji određuju mogućnosti korisnika u odnosu na ovu mapu.

  • rw - čitanje i pisanje ova opcija omogućuje čitanje i pisanje datoteka u mapi.
  • ro - samo za čitanje - dopušta samo čitanje mape.
  • sinkronizacija (zadano) - parametar osigurava pouzdanost prijenosa. Ako je omogućeno, tada neće biti moguće prenijeti nekoliko datoteka u isto vrijeme ili na različita računala. Ova postavka spriječit će odgovore na druge zahtjeve. Sprječava gubitak podataka, ali prijenos može biti sporiji.
  • async - obrnuto od prethodnog parametra. Prijenos je brži, ali postoji rizik od gubitka podataka.
  • sigurno - ova opcija dopušta korištenje samo portova ispod 1024. Omogućeno prema zadanim postavkama.
  • nesiguran - dopušta korištenje bilo kojeg porta.
  • nohide - ako montirate nekoliko direktorija, među kojima ima i ugniježđenih, tada će ugniježđeni, za razliku od nadređenog, biti prikazani kao prazni. Parametar će pomoći da se to popravi.
  • anonuid - specificira uid za anonimno. Ovo je poseban korisnički ID.
  • anongid - specificira gid za anonimno. GID (Group ID) - još jedan korisnički ID.
  • no_subtree_check - funkcija onemogućuje provjeru podstabla. Činjenica je da bez njega NFS dodatno provjerava pristupaju li korisnici samo potrebnim dijelovima direktorija. Ovo usporava stvari. Parametar vam omogućuje da ga ubrzate, ali smanjuje sigurnost.

Koristit ćemo ih ovisno o tome što je potrebno u pojedinoj situaciji.

Kreirajmo novu mapu. Također možete koristiti nove. Naša će mapa biti /var/network.

Sada moramo dodati ovu mapu u datoteku /etc/exports. Tamo su pohranjene sve datoteke i mape s otvorenim pristupom mreži. Unos bi trebao izgledati ovako:

/var/network168.1.1(rw,async,no_subtree_check)

192.168.1.1 je IP preko kojeg šaljemo. Svakako ga navedite.

Ažurirajte tablicu izvoza:

Pokušajmo sada pristupiti mapi sa strane klijenta.

Instalacija i konfiguracija NFS klijenta

ubuntu

Povezivanje konfiguriranog poslužitelja s Ubuntuom nije teško. To se radi u samo nekoliko naredbi.

Instalirajte poseban klijentski paket:

sudo apt instalirajte nfs-common

sudo montiranje 192.168.1.1:/var/network/ /mnt/

Mrežna mapa je povezana. Pomoću df-a možete provjeriti sve povezane mrežne mape:

Također možete provjeriti svoju razinu pristupa posebnom naredbom:

Demontirajte datotečni sustav na sljedeći način:

Naredba mount koristi se gotovo posvuda. Odgovoran je za proces montiranja, odnosno pripremu prostora na tvrdom disku za korištenje od strane operativnog sustava. Zvuči komplicirano, ali ako pojednostavimo, ispada da mrežne datoteke jednostavno prebacimo na svoje računalo u novu mapu. Ovdje se zove /mnt/.

Windows

Sa sustavom Windows, u pravilu, sve je mnogo kompliciranije. NFS klijent se može pokrenuti na svim Windows poslužiteljima bez ikakvih problema. Od standarda je prisutan na:

  • Windows 7 Ultimate/Enterprise
  • Windows 8/8.1 Enterprise
  • Windows 10 Enterprise

Nigdje drugdje. Ako imate jednu od ovih verzija, učinite sljedeće:

  1. Otvorite izbornik "Programi i značajke".
  2. Pritisnite "Dodaj komponente".
  3. Tu nalazimo NFS i postavljamo samo "Klijent za NFS", ne treba nam druga komponenta.

Nakon povezivanja, sve se montira istom naredbom:

montiranje 192.168.1.1:/var/network/ /mnt/

Možete ga demontirati ovako:

Naredbe se unose u naredbeni redak koji se pokreće kao administrator. Nakon toga možete lako pronaći željeni mrežni pogon pomoću Explorera.

Ali što ako na računalu nema klijenta za NFS? Možete pokušati preuzeti softver putem Microsoftovog web-mjesta ili iz resursa trećih strana. Moguće je da su ovdje potrebne druge naredbe ili akcije.

Sada imate osnovno razumijevanje kako možete koristiti NFC i napraviti jednostavno postavljanje. Ovo znanje je dovoljno za uspostavljanje pristupa s jednog računala na drugo. Štoviše, Windows računalo također može djelovati kao klijent.

Svatko zna da je na UNIX sustavima datotečni sustav logično skup fizičkih datotečnih sustava povezanih na jednu točku. Jedna od najosnovnijih ljepota takve organizacije, po mom mišljenju, je mogućnost dinamičke izmjene strukture postojećeg datotečnog sustava. Također, zahvaljujući naporima programera, danas imamo priliku povezati datotečni sustav gotovo bilo koje vrste i na bilo koji prikladan način. Govoreći o "metodi", prije svega želim naglasiti sposobnost OS kernela da radi sa sustavima datoteka putem mrežnih veza.

Mnogi mrežni protokoli daju nam mogućnost rada s udaljenim datotekama, bilo FTP, SMB, Telnet ili SSH. Zahvaljujući mogućnosti kernela, na kraju, da ne ovisi o tipu datotečnog sustava koji se povezuje, imamo mogućnost povezivanja bilo čega i na bilo koji način pomoću programa za montiranje.

Danas želim govoriti o NFS - Network File System. Ova tehnologija vam omogućuje povezivanje pojedinačnih FS točaka na udaljenom računalu sa sustavom datoteka lokalnog računala. Sam NFS protokol omogućuje brzo, sigurno i pouzdano izvođenje operacija s datotekama. Što nam još treba? :-)

Što je potrebno da ovo funkcionira

Kako ne bismo dugo lupetali na temu verzija NFS-a i njihove podrške u raznim kernelima, odmah ćemo pretpostaviti da je vaša verzija kernela najmanje 2.2.18. U službenoj dokumentaciji programeri obećavaju punu podršku za funkcionalnost NFS verzije 3 u ovoj jezgri i novijim.

Montaža

Za pokretanje NFS poslužitelja na mom Ubuntu 7.10 - Gutsy Gibbon, morao sam instalirati pakete nfs-common i nfs-kernel-server. Ako je potreban samo NFS klijent, tada nfs-kernel-server ne treba biti instaliran.

Podešavanje poslužitelja

Nakon što su svi paketi uspješno instalirani, trebate provjeriti radi li NFS demon:

/etc/init.d/nfs-kernel-server status

Ako demon nije pokrenut, mora se pokrenuti naredbom

/etc/init.d/nfs-kernel-server start

Nakon što je sve uspješno pokrenuto, možete započeti s izvozom datotečnog sustava. Sam proces je vrlo jednostavan i traje minimalno vremena.

Glavna konfiguracijska datoteka NFS poslužitelja nalazi se u /etc/exports i ima sljedeći format:

Imenik stroj1(opcija11,opcija12) stroj2(opcija21,opcija22)

imenik— apsolutni put do direktorija FS poslužitelja kojem želite dati pristup

strojX— DNS naziv ili IP adresa klijentskog računala s kojeg je dopušten pristup

opcijaXX- FS izvozni parametri, najčešće korišteni od njih:

  • ro- pristup datotekama dopušten je samo za čitanje
  • rw- pristup je odobren za čitanje / pisanje
  • no_root_squash- prema zadanim postavkama, ako se povežete na NFS resurs kao root, poslužitelj će, radi sigurnosti, pristupiti datotekama na svojoj strani u ime korisnika nitko. Međutim, ako omogućite ovu opciju, tada će se datotekama na strani poslužitelja pristupati kao root. Budite oprezni s ovom opcijom.
  • nema_provjere_podstabla- prema zadanim postavkama, ako ne izvozite cijelu particiju na poslužitelju, već samo dio datotečnog sustava, demon će provjeriti nalazi li se tražena datoteka fizički na istoj particiji ili ne. Ako izvozite cijelu particiju ili točka montiranja izvezenog FS-a ne utječe na datoteke s drugih fizičkih jedinica, tada možete omogućiti ovu opciju. To će vam omogućiti povećanje brzine poslužitelja.
  • sinkronizacija— uključite ovu opciju ako postoji mogućnost iznenadnog prekida veze ili nestanka struje poslužitelja. Ako ova opcija nije uključena, rizik od gubitka podataka kada se NFS poslužitelj iznenada zaustavi je znatno povećan.

Dakle, recimo da ashep-desktop računalu želimo dati pristup direktoriju /var/backups na ashep-laptop računalu. Za kopiranje sigurnosno kopiranih datoteka s ashep-desktop potreban je pristup direktoriju. Moja datoteka je ovakva:

/var/backups ashep-desktop(rw,no_subtree_check,sync)

Nakon dodavanja retka u /etc/exports, morate ponovno pokrenuti NFS poslužitelj kako bi promjene stupile na snagu.

/etc/init.d/nfs-kernel-server ponovno pokretanje

To je sve. Možete započeti povezivanje izvezenog FS-a na klijentskom računalu.

Postavljanje klijenta

Na strani klijenta, udaljeni datotečni sustav montira se na isti način kao i svi ostali - s naredbom mount. Također, nitko vam ne brani da koristite /etc/fstab ako trebate automatski povezati datotečni sustav kada se OS pokrene. Dakle, opcija montiranja izgledat će ovako:

Montiraj -t nfs ashep-laptop:/var/backups/ /mnt/ashep-laptop/backups/

Ako je sve prošlo dobro i trebate se automatski spojiti na udaljeni datotečni sustav pri dizanju, samo dodajte red u /etc/fstab:

Ashep-laptop:/var/backups /mnt/ashep-laptop/backups nfs auto 0 0

Što drugo

Tako smo dobili praktičan, mali pregled mogućnosti NFS-a. Naravno, ovo je samo mali dio onoga što NFS može. Ovo je dovoljno za korištenje kod kuće ili u malom uredu. Ako vam ovo nije dovoljno, preporučam prvo čitanje

Za distribuciju datoteka unutar lokalne mreže mogu se razlikovati sljedeće tehnologije (razmatraju se sustavi temeljeni na Linuxu):

  • Network File System (NFS) - protokol za mrežni pristup datotečnim sustavima;
  • Datoteke koje se prenose preko Shell protokola (FISH) - mrežnog protokola koji koristi ili RSH za prijenos datoteka između računala;
  • Secure SHell FileSystem (SSHFS) - klijent datotečnog sustava za montiranje diskovnih uređaja na udaljenim sustavima, koji se koristi za interakciju s udaljenim sustavom SFTP;
  • Samba - softverski paket koji vam omogućuje pristup mrežnim pogonima i pisačima na različitim operativnim sustavima koristeći SMB / CIFS protokol;

U ovoj bilješci govorit ćemo o NFS.

NFS (mrežni datotečni sustav) korisno kada trebate distribuirati datoteke/direktorije svima unutar mreže. Transparentnost pristupa putem NFS omogućuje klijentima montiranje udaljenog datotečnog sustava kao lokalnog direktorija, a datotečni sustavi mogu biti različitih vrsta. To znači da svaka klijentska aplikacija koja može raditi s lokalnom datotekom može jednako dobro raditi s datotekom povezanom putem NFS bez ikakvih izmjena na samom programu.

Na dobrobiti NFS može se pripisati:

  • smanjenje opterećenja na procesoru;
  • prikaz zajedničkih resursa kao redovnih direktorija u sustavu;
  • Trenutno dostupan NFS v4.1, koji je uveo novu značajku pNFS omogućujući paralelnu implementaciju dijeljenja datoteka. Postoji i proširenje za NFS 2 i 3 - WebNFS, koji omogućuju lakšu integraciju u web preglednike i mogućnost rada kroz vatrozid.

    Shema rada NFS protokol.

    Instalacija i konfiguracija NFS poslužitelja pod Linuxom

    Provjerite podržava li sustav NFS

    Cat /proc/datotečni sustavi | grep nfs

    Pod, ispod Arch Linux server i klijent su u istom paketu

    Yaourt -S nfs-utils

    Za instaliranje poslužitelja nfs-kernel-poslužitelj) i klijent ( nfs-zajednički) pod, ispod ubuntu potrebni paketi

    sudo apt-get instalacija nfs-kernel-server nfs-common portmap

    Dalje u bilješci, IP će se koristiti za poslužitelj 192.168.1.100 . Kako bi poslužitelju uvijek bio dodijeljen isti IP, potrebno je u DHCP poslužitelju (najčešće routeru) zadati raspodjelu određenog IP-a na određenu MAC adresu. Ili podignite svoj lokalni DNS poslužitelj. Na primjer ili.

    Možete saznati MAC adresu koristeći ifconfig (polje eter u Arch Linux).

    NFSv4 pretpostavlja da postoji korijenski direktorij unutar kojeg se već nalaze datoteke za distribuciju. Na primjer, /srv/nfs- korijen, /srv/nfs/audio- imenik za distribuciju glazbe. Ako ne slijedite ovaj novi smjer u verziji 4 , tada možete dobiti pogrešku prilikom povezivanja od strane klijenta:

    Mount.nfs: pristup odbijen od strane poslužitelja tijekom montiranja 192.168.1.100:/home/proft/torrents

    Ako još uvijek želite koristiti pristup bez korijenskog direktorija na poslužitelju za NFS, tada kada montirate od strane klijenta, morate izričito navesti verziju 3

    # za naredbu montiranja mount -o "vers=3" 192.168.1.100:/home/proft/torrents /home/proft/nfs/torrents # za fstab 192.168.1.100:/home/proft/torrents /home/proft/nfs/ torrenti nfs soft,nfsvers=3 0 0

    Kvarenje NFSv4 s korijenskim imenikom u /srv/nfs/ i montiranje ugniježđenih direktorija s mount --bind.

    Pretpostavimo da želimo

    • distribuirati imenik ~/torrenti S rw pristup za svi unutar lokalne mreže;
    • distribuirati imenik ~/fotografije S ro pristup za host s IP-om 192.168.1.101 ;

    Najprije stvorimo korijenski direktorij i potrebne poddirektorije.

    Sudo mkdir -p /srv/nfs/(torrenti,fotografije)

    Montirajte postojeće direktorije torrenti, fotografije u /srv/nfs.

    # sudo vim /etc/fstab /home/proft/torrents /srv/nfs/torrents none bind 0 0 /home/proft/photos /srv/nfs/photos none bind 0 0

    Uredi /etc/exports, koji opisuje sve zajedničke imenike

    # sudo vim /etc/exports # format datoteke: direktorij dozvoljen-hosts(opcije) /srv/nfs/torrents 192.168.1.1/24(rw,async) /srv/nfs/photos 192.168.1.101(ro,async)

    Primijetite da nema razmaka između dopušteni-domaćini i (opcije). Prisutnost prostora uvodi drugačije tumačenje pravila.

    Dostupne opcije:

    • ro (rw) - dopustiti pristup samo za čitanje (čitanje/pisanje);
    • subtree_check (no_subtree_check) - u nekim slučajevima morate izvesti ne cijeli odjeljak, već samo njegov dio. U isto vrijeme, poslužitelj NFS mora izvršiti dodatne provjere zahtjeva klijenata kako bi osigurao da oni samo pokušavaju pristupiti datotekama u odgovarajućim poddirektorijima. Takva kontrola podstabla ( provjere podstabla) donekle usporava interakciju s klijentima, ali ako ga odbijete, možete imati problema sa sigurnošću sustava. Možete poništiti kontrolu nad podstablom pomoću opcije nema_provjere_podstabla. Opcija provjera_podstabla, koji uključuje takvu kontrolu, pretpostavlja se prema zadanim postavkama. Kontrola podstabla može se izostaviti ako je izvezeni direktorij isti kao particija diska;
    • sinkronizacija (asinkronizacija) Određuje da poslužitelj treba odgovoriti na zahtjeve samo nakon što su promjene napravljene tim zahtjevima zapisane na disk. Opcija asinkroni nalaže poslužitelju da ne čeka da se informacije zapišu na disk, što poboljšava performanse, ali smanjuje pouzdanost, jer u slučaju prekida veze ili kvara opreme podaci se mogu izgubiti;
    • noaccess - Odbija pristup navedenom direktoriju. Može biti korisno ako ste prethodno podesili pristup svim korisnicima mreže na određeni direktorij, a sada želite ograničiti pristup u poddirektoriju samo na neke korisnike;
    • no_root_squash - zadani korisnik korijen na stroju klijenta neće imati ista prava na direktorij na poslužitelju. Ova opcija uklanja ovo ograničenje;
    • sakriti- NFS ne prikazuje automatski ne-lokalne resurse (na primjer, montirane pomoću mount --bind), ova opcija omogućuje prikaz takvih resursa;
    • nesigurno - korištenje neprivilegiranih portova (> 1024);

    Pokretanje NFS poslužitelja

    # pod archlinux sudo systemctl pokrenite rpc-idmapd.service rpc-mountd.service # pod ubuntu sudo /etc/init.d/nfs-kernel-server pokrenite

    Ubuduće, kada mijenjate konfiguracijsku datoteku, dovoljno ju je ponovno pročitati naredbom:

    sudo exportfs -rav

    rpcinfo -p naredba | grep nfs vam omogućuje da provjerite je li poslužitelj uspješno pokrenut.

    Klijent za Linux

    Montaža

    # pod archlinux yaourt -S nfs-utils # pod ubuntu sudo apt-get instaliraj portmap nfs-common

    Stvorite direktorije za montiranje mrežnih resursa bujice i fotografije

    Mkdir -p ~/nfs/(torrenti,fotografije)

    Za ručno montiranje, pokrenite

    sudo mount -t nfs -o rw,soft 192.168.1.100:/srv/nfs/torrenti /home/proft/nfs/torrenti sudo mount -t nfs -o rw,soft 192.168.1.100:/srv/nfs/photos /home /proft/nfs/fotografije

    Opcija mekan specificira tiho otkazivanje pokušaja povezivanja dijeljenja nakon određenog vremena (vrijeme je postavljeno opcijom retrans). Pročitajte više u čovjek nfs.

    Ova metoda nije baš zgodna, jer ćete svaki put nakon ponovnog pokretanja morati pokrenuti ove naredbe. Učinimo montiranje automatskim.

    Za automatsko montiranje uredite datoteku /etc/fstab

    # sudo vim /etc/fstab 192.168.1.100:/srv/nfs/torrents /home/proft/net/torrents nfs rw,soft 0 0 192.168.1.100:/srv/nfs/photos /home/proft/net/photos nfs ro,meko 0 0

    Ali ova metoda također ima svoje nedostatke, na primjer, ako poslužitelj nije dostupan, tada se učitavanje klijenta može zamrznuti zbog pokušaja povezivanja s NFS poslužiteljem. Da biste to popravili, pogledajte dolje o tome AutoFS.

    AutoFS - automatsko povezivanje mrežnih resursa

    Moguće je montirati udaljeni resurs pomoću AutoFS pri prvom pristupu i automatski se demontira kada nema aktivnosti.

    AutoFS koristi predloške koji se nalaze u /etc/autofs. Glavni uzorak se zove auto.majstor, može ukazivati ​​na jedan ili više drugih predložaka za određene vrste medija.

    Montaža

    # pod archlinux yaourt -S autofs # pod ubuntu sudo apt-get install autofs

    Postoji nekoliko načina za određivanje metoda automatskog montiranja. Ja koristim ovaj: /home/proft/nfs automatski se kreira direktorij s nazivom NFS poslužitelja u kojem se automatski kreiraju dostupni direktoriji na poslužitelju.

    # sudo vim /etc/autofs/auto.master /home/proft/nfs /etc/autofs/auto.nfs --timeout=60

    Dodatni parametar pauza postavlja broj sekundi nakon kojih će se uređaj isključiti. Parametar duh specificira da će konfigurirani resursi uvijek biti prikazani, a ne samo kada su dostupni (ova opcija je omogućena prema zadanim postavkama u AutoFS 5)

    Opisat ćemo u /etc/autofs/auto.nfs NFS poslužitelj i korijenski direktorij.

    # sudo vim /etc/autofs/auto.nfs nfsserver 192.168.1.100:/srv/nfs

    Sada na prvi poziv /home/proft/nfs/torrenti NFS dijeljenje će se automatski montirati.

    Ponovno pokrenite uslugu autofs:

    # pod archlinux sudo systemctl restart autofs # pod ubuntu sudo /etc/init.d/autofs restart

    Također možete odrediti vrijeme čekanja na dostupnost NFS resursa. Da biste to učinili, morate promijeniti vrijednosti MOUNT_WAIT.

    # pod archlinuxom # sudo vim /etc/conf.d/autofs MOUNT_WAIT=5 # pod ubuntuom sudo /etc/default/autofs MOUNT_WAIT=5

    Prisilno korištenje NFS v3

    U nekim slučajevima NFSv4 može teći sporo. Da biste to popravili, možete prisilno koristiti treću verziju.

    Dajem upute za instalaciju i konfiguraciju NFS-a (Network File System). NFS je mrežni datotečni sustav koji vam omogućuje pristup datotekama i direktorijima na udaljenom računalu (poslužitelju) kao da su te datoteke i direktoriji lokalni. Glavna prednost takvog sustava je u tome što pojedine radne stanice mogu koristiti manje vlastitog diskovnog prostora, budući da se zajednički podaci pohranjuju na zasebnom stroju (data store) i dostupni su drugim strojevima na mreži. NFS je aplikacija klijent-poslužitelj gdje je uloga pohrane dodijeljena poslužitelju. Svaki član mreže je NFS klijent koji montira mrežni pogon poslužitelja u svoj datotečni sustav.

    Uzmimo Ubuntu 12.04 kao poslužitelj.
    Koristit ćemo i testirati Centos i Winows 7 kao klijente.

    Glavni poslužitelj: 192.168.2.213 (Ubuntu)

    Klijenti: 192.168.2.72 (Centos), 192.168.2.180 (Windows)

    Podešavanje poslužitelja

    Prvo morate postaviti poslužitelj. Budući da ćemo koristiti Ubuntu kao poslužitelj, moramo instalirati odgovarajući paket

    [e-mail zaštićen]:~# apt-get instaliraj nfs-kernel-server

    Nakon instaliranja potrebnog paketa, izradili smo dvije konfiguracijske datoteke. Iz dnevnika instalacije:

    … Stvaranje konfiguracijske datoteke /etc/idmapd.conf s novom verzijom Stvaranje konfiguracijske datoteke /etc/default/nfs-common s novom verzijom …

    Prva datoteka opisuje korisnika (stvoren prilikom instaliranja paketa) i grupu , za sudjelovanje u mapiranju-e (identifikacija korisnika).

    [e-mail zaštićen]:~# cat /etc/idmapd.conf Verbosity = 0 Pipefs-Directory = /run/rpc_pipefs # postavite svoju domenu ovdje, ako se id razlikuje od FQDN minus hostname # Domena = lokalna domena Nobody-User = nitko Nobody-Group = nogroup

    Kao što znamo, u Linuxu svaka datoteka pripada određenom korisniku koji ima svoj (UID, GID), ali na Windows sustavima shema je malo drugačija. I u tom smislu, izumljen je mehanizam mapiranja, koji čini prevođenje različitih korisnika iz različitih operativnih sustava u oblik razumljiv za Linux datotečni sustav.
    Druga je datoteka potrebna za konfiguraciju Kerberos provjere autentičnosti i konfiguraciju nestandardnog porta na kojem će demon slušati. Ne trebamo ga još. O konfiguraciji Kerberosa raspravljat ćemo u sljedećem članku.

    [e-mail zaštićen]:~# cat /etc/default/nfs-common # Ako ne postavite vrijednosti za NEED_ opcije, one će se pokušati # automatski detektirati; ovo bi trebalo biti dovoljno za većinu ljudi. Valjane alternative # za NEED_ opcije su "da" i "ne". # Želite li pokrenuti statd daemon? Nije potreban za NFSv4. NEED_STATD= # Opcije za rpc.statd. # Treba li rpc.statd slušati na određenom portu? Ovo je posebno korisno # kada imate vatrozid temeljen na portu. Za korištenje fiksnog porta, postavite ovu # ovu varijablu na statd argument poput: "--port 4000 --outgoing-port 4001". # Za više informacija pogledajte rpc.statd(8) ili http://wiki.debian.org/SecuringNFS STATDOPTS= # Želite li pokrenuti gssd demon? Potreban je za Kerberos montiranja. POTREBNO_GSSD=

    Sada nastavimo s postavljanjem.
    Svi direktoriji za dijeljenje moraju biti registrirani u datoteci /etc/exports. Za početak, stvorimo 2 mape u početnom direktoriju i ispustimo datoteke u njih. Stablo direktorija i datoteka za izvoz:

    [e-mail zaštićen]:~# stablo /dom/alex/ /dom/alex/

    Sada trebate dodijeliti korisnika i grupu za ove direktorije (preuzimamo ih iz datoteke /etc/idmapd.conf).

    [e-mail zaštićen]:~# chown -R nitko:nogroup nfs_dir1/ [e-mail zaštićen]:~# chown -R nitko:nogroup nfs_dir2/

    Prvo, izvezimo direktorij nfs_dir1 za određeni IP. Uređivanje datoteke /etc/exprots.

    [e-mail zaštićen]:~# vim /etc/exports # Za određeni host (Windows) /home/alex/nfs_dir1 192.168.2.180(rw,sync,all_squash,no_subtree_check,insecure) # Za bilo koji host na podmreži /home/alex/nfs_dir2 192.168 .2.0/ 24(rw,no_root_squash,sync,no_subtree_check)

    Ovdje možete vidjeti minimalni skup opcija za ispravan rad pohrane s Windows OS-om.

    • /home/alex/nfs_dir1– put do mape za koju se distribuira pristup;
    • 192.168.2.180 – IP adresa na koju se distribuira pristup mapi (možete navesti cijelu mrežu, tada će unos izgledati kao 192.168.2.0/24)
    • (rw,sync,all_squash,no_subtree_check)- skup opcija.

    Popularne opcije:

    • rw–read/write (može imati vrijednost ro-read-only);
    • no_root_squash– prema zadanim postavkama, root korisnik na klijentskom računalu neće imati pristup dijeljenom direktoriju poslužitelja. Ovom opcijom uklanjamo to ograničenje. Iz sigurnosnih razloga, bolje je to ne činiti;
    • sinkronizacija- sinkroni način pristupa (može uzeti suprotnu vrijednost - asinkroni);
    • nema pristupa– Uskraćuje pristup navedenom imeniku. Može biti korisno ako ste prethodno odredili pristup za sve korisnike mreže određenom direktoriju, a sada želite ograničiti pristup u poddirektoriju samo nekim korisnicima.
    • sve_squash- podrazumijeva da će sve veze biti napravljene od anonimnog korisnika (potrebno za Windows klijent)
    • anonuid= 1000 - povezuje anonimnog korisnika s "lokalnim" korisnikom;
    • anongid= 1000 - povezuje anonimnog korisnika s "lokalnom" grupom korisnika.
    • bez_provjere_podstabla(provjera_podstabla)– ako se izvozi poddirektorij datotečnog sustava, ali ne cijeli datotečni sustav, poslužitelj provjerava nalazi li se tražena datoteka u izvezenom poddirektoriju. Onemogućivanje provjere smanjuje sigurnost, ali povećava brzinu prijenosa podataka.
    • Tipično, Linux (i drugi operativni sustavi slični Unixu) rezerviraju TCP i UDP portove od 1-1023 (tzv. sigurni portovi) za korištenje od strane root korisničkih procesa. Kako bi se osiguralo da je root pokrenuo udaljenu NFS vezu, NFS poslužitelj obično zahtijeva od udaljenih klijenata da koriste sigurne portove. Međutim, neki operativni sustavi (npr. Windows) ne poštuju ovu konvenciju. U takvim slučajevima, opcija nesiguran omogućuje NFS klijentu korištenje bilo kojeg TCP/UDP priključka. Obično je potrebno kada servisirate Windows klijente.

    Sve dostupne opcije i sintaksa za snimanje domaćina, grupa domaćina itd. može se pročitati u priručniku

    [e-mail zaštićen]:~# exportfs -a

    Sada provjeravamo što smo izvezli.

    [e-mail zaštićen]:~# exportfs -v /home/alex/nfs_dir1 192.168.2.180(rw,wdelay,all_squash,no_subtree_check,insecure) /home/alex/nfs_dir2 192.168.2.0/24(rw,wdelay,no_root_squash,no_subtree_check)

    Poslužitelj je konfiguriran.

    Postavljanje klijenata

    Postavljanje Windows klijenta

    Ako nije bilo poruka o greškama. Možete započeti montažu na strani klijenta.
    Prvo, morate dodati uslugu (client service) NFS. Da biste to učinili, idite na Start —> Upravljačka ploča —> Programi i značajke i kliknite na stavku izbornika s lijeve strane Uključite ili isključite značajke sustava Windows. U prozoru koji se pojavi odaberite Klijent za NFS i kliknite u redu(Sl. 1).


    Slika 1

    Zatim morate montirati pogon. Da biste to učinili, možete koristiti naredbeni redak ili jednostavno kliknuti Desnom tipkom miša kliknite My Computer i odaberite Map Network Drive. I unesite redak \\192.168.2.213\home\alex\nfs_dir1. Ovo je IP adresa poslužitelja i put do mape (slika 2).


    Slika 2

    Ako je sve u redu, vidjet ćemo disk (slika 3).


    Slika 3

    Isto se može učiniti pomoću naredbenog retka (slika 4).


    Slika 4

    Moguće greške:

    Nećete moći preslikati NFS mrežni pogon na Windows OS (Slika 5) ako
    1. NFS klijent nije instaliran
    2. Omogućen (nije konfiguriran) vatrozid
    3. Nema mrežnog pristupa poslužitelju
    4. Unesene su netočne opcije montiranja
    5. Nekonfigurirano (neprimijenjene postavke) izvoz na poslužitelju.
    6. Dodajte nesigurnu opciju u postavke izvoza


    Slika 5 - Pogreška pri povezivanju mrežnog NFS pogona

    Nećete moći dodati datoteku u montirani datotečni sustav (Slika 6) ako:
    1. Prava na mapu nisu postavljena na poslužitelju (nitko:nogroup)
    2. Opcija all_squash nije postavljena u postavkama izvoza
    3. Opcija rw nije postavljena u postavkama izvoza


    Slika 6 - Greška prilikom dodavanja datoteke na NFS disk

    Konfiguriranje Centos klijenta

    Postavljanje Linux sustava prilično je jednostavno i bezbolno. Vi samo trebate instalirati potrebne pakete i montirati disk. Centos treba sljedeće pakete

    # yum instalirajte nfs-utils nfs-utils-lib

    # mkdir -p /mnt/nfs # montiranje 192.168.2.213:/home/alex/nfs_dir1 /mnt/nfs # montiranje /dev/mapper/vg_slave-lv_root na / tip ext4 (rw) proc na /proc tip proc (rw) sysfs na /sys tip sysfs (rw) devpts na /dev/pts tip devpts (rw,gid=5,mode=620) tmpfs na /dev/shm tip tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0" ) /dev/sda1 na /boot tip ext4 (rw) nijedan na /proc/sys/fs/binfmt_misc tip binfmt_misc (rw) sunrpc na /var/lib/nfs/rpc_pipefs tip rpc_pipefs (rw) 192.168.2.213:/home/ alex/nfs_dir1 na /mnt/nfs tip nfs (rw,vers=4,addr=192.168.2.213,clientaddr=192.168.2.72)

    U ovom slučaju, možemo dodati bilo koju datoteku i direktorij u nfs_dir1 montiranu mapu u ime bilo kojeg korisnika sustava ( sve_squash). Ali ako montiramo drugu mapu nfs_dir2, tada SAMO root može pisati u nju, jer postoji opcija no_root_squash. Provjeravamo.

    # mkdir /mnt/dir1 # mkdir /mnt/dir2 # montiranje 192.168.2.213:/home/alex/nfs_dir1 /mnt/dir1 # montiranje 192.168.2.213:/home/alex/nfs_dir2 /mnt/dir2 ili # montiranje -t nfs4 -o rw,hard,intr,bg 192.168.2.213:/home/alex/nfs_dir2 /mnt/dir2 # echo "Zdravo" > /mnt/dir1/file1 # echo "Zdravo" > /mnt/dir2/file1 # su alex $ echo "Hello" > /mnt/dir1/file1 $ echo "Hello" > /mnt/dir2/file1 bash: /mnt/dir2/file1: Dozvola odbijena

    Moguće oznake montiranja.

    Zastava Opis
    rw Montiranje datotečnog sustava za čitanje/pisanje (poslužitelj ga mora izvesti u načinu čitanja/pisanja)
    th Montiranje datotečnog sustava samo za čitanje
    bg Ako montiranje datotečnog sustava ne uspije (poslužitelj ne odgovara), trebali biste operaciju staviti u pozadinu i nastaviti s obradom drugih zahtjeva za montiranje
    teško Ako poslužitelj padne, operacije koje mu pokušavaju pristupiti blokirane su dok se poslužitelj ponovno ne uključi
    mekan Ako poslužitelj ne radi, operacije koje mu pokušavaju pristupiti ne uspijevaju uz poruku o pogrešci. Ovu oznaku je korisno postaviti kako bi se spriječili procesi koji vise u slučaju neuspješnog montiranja ne baš važnih datotečnih sustava.
    intr Omogućuje vam da prekinete blokirane operacije s tipkovnice (prikazat će se poruke o pogrešci)
    nointr Ne dopušta vam prekidanje blokiranih operacija s tipkovnice
    retrans=n Određuje koliko se puta zahtjev mora ponoviti prije nego što se vrati poruka o pogrešci (za datotečne sustave montirane s mekom zastavom)
    timeo=n Određuje interval vremenskog ograničenja za zahtjeve (u desetinkama sekunde)
    veličina=n Postavlja veličinu međuspremnika za čitanje na n bajtova
    wsize=fl Postavlja veličinu međuspremnika za pisanje na n bajtova
    sec=način Postavlja sigurnosni način rada
    vers=n Postavlja verziju NFS protokola
    proto = protokol Odabire transportni protokol; trebao bi biti tcp protokol za NVS verziju 4

    Također možete provjeriti s konzole je li poslužitelj ispravno eksportirao datotečni sustav.

    [e-mail zaštićen]~# showmount -e 192.168.2.213 Popis izvoza za 192.168.2.213: /home/alex/nfs_dir2 192.168.2.0/24 /home/alex/nfs_dir1 192.168.2.180

    Dodaj nosač u automatsko učitavanje

    # cat /etc/fstab ... 192.168.2.213:/home/alex/nfs_dir2 /mnt/dir2 nfs4 rw,bg,intr,hard,nodev,nosuid 0 0

    [e-mail zaštićen]~# montiranje -a -t nfs4

    Moguće greške.

    [e-mail zaštićen]~# mount -a -t nfs4 mount.nfs4: točka montiranja /mnt/dir2 ne postoji [e-mail zaštićen]~# mount -a -t nfs4 mount.nfs4: udaljeno dijeljenje nije u "host:dir" formatu

    U prvom slučaju morate stvoriti mapu. U drugom - sintaktičke pogreške u fstabu.
    Ako naiđete na pogreške tijekom montiranja NFS particija, prođite kroz popis Moguće greške iz prethodnog odjeljka.
    Također možete koristiti autofs za montiranje NFS particija. O čemu će biti riječi u.

    Mrežni datotečni sustav (NFS)- Protokol za mrežni pristup datotečnim sustavima, omogućuje povezivanje udaljenih datotečnih sustava.
    Izvorno razvijen od strane Sun Microsystems 1984. Temeljen na Sun RPC: Remote Procedure Call. NFS je neovisan o vrsti datotečnog sustava poslužitelja i klijenta. Postoje mnoge implementacije NFS poslužitelja i klijenata za različite operativne sustave. Trenutno se koristi NFS v.4, koji podržava različite načine provjere autentičnosti (osobito Kerberos i LIPKEY koji koriste RPCSEC GSS protokol) i popise kontrole pristupa (i POSIX i Windows tipovi).
    NFS klijentima pruža transparentan pristup datotekama i datotečnom sustavu poslužitelja. Za razliku od FTP-a, NFS protokol pristupa samo onim dijelovima datoteke kojima proces pristupa, a njegova glavna prednost je što ovaj pristup čini transparentnim. Zbog toga svaka klijentska aplikacija koja može raditi s lokalnom datotekom može jednako dobro raditi s NFS datotekom, bez mijenjanja samog programa.
    NFS klijenti pristupaju datotekama na NFS poslužitelju slanjem RPC zahtjeva poslužitelju. Ovo se može implementirati korištenjem normalnih korisničkih procesa - naime, NFS klijent može biti korisnički proces koji upućuje specifične RPC pozive poslužitelju, što također može biti korisnički proces.

    Verzije
    NFSv1 je bio za internu upotrebu samo u eksperimentalne svrhe. Pojedinosti o implementaciji definirane su u RFC 1094.
    NFSv2 (RFC 1094, ožujak 1989.) izvorno se u potpunosti izvodio preko UDP-a.
    NFSv3 (RFC 1813, lipanj 1995.). Deskriptori datoteka u verziji 2 su niz fiksne veličine od 32 bajta. U verziji 3, ovo je polje promjenjive veličine s veličinom do 64 bajta. Niz promjenjive duljine u XDR-u definiran je brojačem od 4 bajta iza kojeg slijede pravi bajtovi. Ovo smanjuje veličinu deskriptora datoteke u implementacijama kao što je UNIX, gdje je potrebno samo oko 12 bajtova, ali omogućuje ne-Unix implementacijama razmjenu dodatnih informacija.
    Verzija 2 ograničava broj bajtova po RPC proceduri READ ili WRITE na 8192 bajta. Ovo ograničenje nije na snazi ​​u verziji 3, što zauzvrat znači da će korištenjem UDP-a ograničenje biti samo IP veličina datagrama (65535 bajtova). To omogućuje korištenje velikih paketa za čitanje i pisanje na brzim mrežama.
    Veličine datoteka i pomaci početnih bajtova za READ i WRITE rutine sada koriste 64-bitno adresiranje umjesto 32-bitnog, što vam omogućuje rad s većim datotekama.
    Atributi datoteke vraćaju se u svakom pozivu koji može utjecati na atribute.
    Zapisi (WRITE) mogu biti asinkroni, dok su u verziji 2 morali biti sinkroni.
    Jedna je procedura uklonjena (STATFS) i dodano ih je sedam: ACCESS (provjera dopuštenja datoteke), MKNOD (stvaranje posebne Unix datoteke), READDIRPLUS (vraćanje naziva datoteka u direktoriju zajedno s njihovim atributima), FSINFO (vraćanje statističkih informacija o datotečni sustav ), FSSTAT (vraća informacije o dinamičkom datotečnom sustavu), PATHCONF (vraća informacije o POSIX.1 datoteci) i COMMIT (obvezuje prethodno napravljena asinkrona pisanja u trajnu pohranu).
    U vrijeme uvođenja verzije 3 programeri su počeli više koristiti TCP kao transportni protokol. Dok su neki programeri već koristili TCP za NFSv2, Sun Microsystems je dodao TCP podršku u NFS verziji 3. To je korištenje NFS-a preko Interneta učinilo izvedivijim.
    NFSv4 (RFC 3010, prosinac 2000., RFC 3530, revidiran travanj 2003.), pod utjecajem AFS-a i CIFS-a, uključio je poboljšanja performansi, visoku sigurnost i pojavio se kao potpuni protokol. Verzija 4 bila je prva verzija razvijena u suradnji s Internet Engineering Task Force (IETF) nakon što je Sun Microsystems predao razvoj NFS protokola. NFS verziju v4.1 odobrio je IESG u siječnju 2010. kao RFC 5661. Važna nova značajka u verziji 4.1 je specifikacija pNFS - Paralelni NFS, mehanizam za paralelni pristup NFS klijenta podacima s više distribuiranih NFS poslužitelja. Prisutnost takvog mehanizma u standardu mrežnog datotečnog sustava pomoći će u izgradnji distribuiranih sustava za pohranu podataka i informacija u "oblaku".

    NFS struktura
    NFS struktura uključuje tri komponente na različitim razinama:
    Aplikacijski sloj (sam NFS) su udaljeni pozivi procedura (rpc), koji izvode potrebne operacije s datotekama i direktorijima na strani poslužitelja.
    Funkcije prezentacijskog sloja obavlja XDR (eXternal Data Representation) protokol, koji je međuplatformski standard apstrakcije podataka. XDR protokol opisuje unificirani, kanonski oblik prikaza podataka koji ne ovisi o arhitekturi računalnog sustava. Prilikom prijenosa paketa, RPC klijent pretvara lokalne podatke u kanonski oblik, a poslužitelj radi suprotno.
    RPC (Remote Procedure Call) usluga, koja pruža zahtjev za udaljenim procedurama od strane klijenta i njihovo izvršavanje na poslužitelju, predstavlja funkcije na razini sesije. Povezivanje mrežnih resursa
    Postupak povezivanja mrežnog resursa pomoću NFS-a naziva se "izvoz". Klijent može zatražiti od poslužitelja popis resursa za izvoz koje predstavlja. Sam NFS poslužitelj ne emitira popis svojih izvezenih resursa.
    Ovisno o navedenim opcijama, izvezeni resurs može biti montiran (priložen) "samo za čitanje", možete odrediti popis hostova kojima je dopušteno montiranje, odrediti korištenje sigurnog RPC-a (secureRPC), itd. Jedna od opcija određuje način montaže: "tvrdo" (tvrdo) ili "meko" (meko).
    S "tvrdim" montiranjem, klijent će pokušati montirati datotečni sustav bez obzira na sve. Ako poslužitelj ne radi, to će uzrokovati prekid rada cijele NFS usluge: procesi koji pristupaju datotečnom sustavu prijeći će u stanje čekanja da RPC zahtjevi završe s izvršavanjem. Sa stajališta korisničkih procesa, datotečni sustav će izgledati kao vrlo spor lokalni disk. Kada se poslužitelj vrati u radno stanje, NFS usluga će nastaviti funkcionirati.
    Uz soft mount, NFS klijent će se nekoliko puta pokušati spojiti na poslužitelj. Ako poslužitelj ne odgovori, sustav izdaje poruku o pogrešci i prestaje pokušavati montirati. Sa stajališta logike operacija datoteka, kada poslužitelj zakaže, meko montiranje oponaša kvar lokalnog diska.
    Izbor načina ovisi o situaciji. Ako se podaci na klijentu i poslužitelju moraju sinkronizirati tijekom privremenog kvara usluge, tada je poželjno "tvrdo" montiranje. Ovaj način je također neophodan u slučajevima kada montirani datotečni sustavi sadrže programe i datoteke koji su vitalni za rad klijenta, posebno za strojeve bez diska. U drugim slučajevima, posebno kada je riječ o sustavima samo za čitanje, način mekog montiranja čini se praktičnijim.

    Dijeljenje u mješovitoj mreži
    NFS je idealan za mreže bazirane na UNIX-u jer dolazi s većinom verzija ovog operativnog sustava. Štoviše, podrška za NFS implementirana je na razini UNIX kernela. Korištenje NFS-a na Windows klijentskim računalima stvara određene probleme povezane s potrebom instaliranja specijaliziranog i prilično skupog klijentskog softvera. U takvim mrežama, čini se da je poželjnije korištenje alata za dijeljenje resursa koji se temelje na SMB/CIFS protokolu, posebno softvera Samba.

    Standardi
    RFC 1094 NFS: Specifikacija protokola mrežnog datotečnog sustava] (ožujak 1989.)
    RFC 1813 NFS verzija 3 specifikacija protokola] (lipanj 1995.)
    RFC 2224 NFS URL shema
    RFC 2339 Ugovor između Internet društva, IETF-a i Sun Microsystems, Inc. u vezi s NFS V.4 protokolima
    RFC 2623 NFS verzija 2 i verzija 3 Sigurnosni problemi i korištenje NFS protokola RPCSEC_GSS i Kerberos V5
    RFC 2624 NFS verzija 4 Razmatranja dizajna
    RFC 3010 NFS verzija 4 protokola
    RFC 3530 Protokol mrežnog sustava datoteka (NFS) verzija 4
    RFC 5661 Mrežni datotečni sustav (NFS) Verzija 4 Minor Verzija 1 Protokol

    Korišteni izvori
    1. en.wikipedia.org
    2. en.science.wikia.com
    3.phone16.ru
    4.4stud.info
    5.yandex.ru
    6.google.com

    Najpopularniji povezani članci