Nastavitev standardnih datotečnih sistemov Linux in konfiguracija strežnika NFSv4 - 2. del


Pooblaščeni inženir Linux Foundation (LFCE) je usposobljen za nastavljanje, konfiguriranje, upravljanje in odpravljanje težav z omrežnimi storitvami v sistemih Linux in odgovarja za načrtovanje in izvajanje sistemske arhitekture ter reševanje vsakodnevnih težav.

Predstavljamo vam Linux Foundation Certification Program (LFCE).

V prvem delu te serije smo razložili, kako namestiti strežnik NFS (omrežni datotečni sistem) in nastavili, da se storitev samodejno zažene ob zagonu. Če tega še niste storili, si oglejte ta članek in pred nadaljevanjem sledite opisanim korakom.

  1. Namestitev omrežnih storitev in konfiguriranje samodejnega zagona pri zagonu - 1. del

Zdaj vam bom pokazal, kako pravilno konfigurirate strežnik NFSv4 (brez varnosti preverjanja pristnosti), tako da lahko nastavite omrežne skupne rabe za uporabo v odjemalcih Linuxa, kot da bi bili ti datotečni sistemi nameščeni lokalno. Upoštevajte, da lahko za namene preverjanja pristnosti uporabite LDAP ali NIS, vendar obe možnosti ne spadata v področje certificiranja LFCE.

Konfiguriranje strežnika NFSv4

Ko bo strežnik NFS deloval, bomo svojo pozornost usmerili na:

  1. določanje in konfiguriranje lokalnih imenikov, ki jih želimo deliti prek omrežja, in
  2. samodejno pritrditev teh omrežnih delnic v odjemalcih bodisi z datoteko /etc/fstab ali s pomočjo pripomočka na osnovi jedra automount (autofs).

Kasneje bomo razložili, kdaj izbrati eno ali drugo metodo.

Preden začnemo, se moramo prepričati, da se idmapd demon izvaja in konfigurira. Ta storitev izvaja preslikavo imen NFSv4 ( [zaščitena z e-pošto] ) na ID-je uporabnikov in skupin in je potrebna za izvajanje strežnika NFSv4.

Uredite /etc/default/nfs-common , da omogočite idmapd.

NEED_IDMAPD=YES

In uredite /etc/idmapd.conf z imenom vaše lokalne domene (privzeta je FQDN gostitelja).

Domain = yourdomain.com

Nato zaženite idmapd.

# service nfs-common start 	[sysvinit / upstart based systems]
# systemctl start nfs-common 	[systemd based systems]

Datoteka /etc/export vsebuje glavne konfiguracijske smernice za naš strežnik NFS, določa datotečne sisteme, ki se bodo izvozili na oddaljene gostitelje, in določa razpoložljive možnosti. V tej datoteki je vsaka omrežna skupna raba označena z ločeno vrstico, ki ima privzeto naslednjo strukturo:

/filesystem/to/export client1([options]) clientN([options])

Kjer je /datotečni sistem/do/izvoz absolutna pot do izvoženega datotečnega sistema, medtem ko odjemalec1 (do odjemalcaN) predstavlja določenega odjemalca (ime gostitelja ali naslov IP) ali omrežje (dovoljeni so nadomestni znaki), kamor se delež izvozi. Končno, možnosti je seznam z vejico ločenih vrednosti (možnosti), ki se upoštevajo pri izvozu deleža. Upoštevajte, da med vsakim imenom gostitelja in oklepaji, ki mu je pred njim, ni presledkov.

Tu je seznam najpogostejših možnosti in njihov ustrezen opis:

  1. ro (okrajšava samo za branje): oddaljeni odjemalci lahko izvožene datotečne sisteme namestijo samo z dovoljenji za branje.
  2. rw (okrajšava za branje in pisanje): Omogoča oddaljenim gostiteljem, da naredijo zapise v izvoženih datotečnih sistemih.
  3. wdelay (okrajšava za zakasnitev pisanja): strežnik NFS odloži izvajanje sprememb na disku, če sumi, da je neizogibna druga povezana zahteva za pisanje. Če pa strežnik NFS prejme več majhnih nepovezanih zahtev, bo ta možnost zmanjšala zmogljivost, zato jo lahko z možnostjo no_wdelay izklopite.
  4. sinhronizacija : NFS strežnik odgovori na zahteve šele, ko so spremembe dodeljene stalnemu pomnilniku (tj. trdemu disku). Nasprotno, možnost async , lahko poveča zmogljivost, vendar za ceno izgube ali poškodbe podatkov po ponovnem zagonu nečistega strežnika.
  5. root_squash : preprečuje oddaljenim korenskim uporabnikom, da imajo na strežniku privilegije super uporabnika, in jim dodeli ID uporabnika za nikogar. Če želite\" zgnječiti " vse uporabnike (in ne samo root), lahko uporabite možnost vsi_skvoš .
  6. anonuid / anongid : izrecno nastavi UID in GID anonimnega računa (nihče).
  7. preverjanje_poddreveta : Če se izvozi samo podimenik datotečnega sistema, ta možnost preveri, ali se zahtevana datoteka nahaja v tem izvoženem podimeniku. Če pa se izvozi celoten datotečni sistem, bo onemogočanje te možnosti s no_subtree_check pospešilo prenose. Danes je privzeta možnost no_subtree_check , saj preverjanje poddreves ponavadi povzroča več težav, kot je vredno, meni izvoznik man 5.
  8. fsid = 0 | root (nič ali root): določa, da je navedeni datotečni sistem koren več izvoženih imenikov (velja samo v NFSv4).

V tem članku bomo uporabili imenika /NFS-SHARE in /NFS-SHARE/mydir v 192.168.0.10 (strežnik NFS) kot naš testni datotečni sistemi.

Z naslednjim ukazom lahko vedno naštejemo razpoložljive omrežne skupne rabe v strežniku NFS:

# showmount -e [IP or hostname]

V zgornjem rezultatu lahko vidimo, da sta bili delnici /NFS-SHARE in /NFS-SHARE/mydir na 192.168.0.10 izvoženi odjemalcu z naslovom IP 192.168.0.17 .

Naša začetna konfiguracija (glejte imenik /etc/export na vašem strežniku NFS) za izvoženi imenik je naslednja:

/NFS-SHARE  	192.168.0.17(fsid=0,no_subtree_check,rw,root_squash,sync,anonuid=1000,anongid=1000)
/NFS-SHARE/mydir    	192.168.0.17(ro,sync,no_subtree_check)

Po urejanju konfiguracijske datoteke moramo znova zagnati storitev NFS:

# service nfs-kernel-server restart 		[sysvinit / upstart based system]
# systemctl restart nfs-server			[systemd based systems]

Za podrobnosti o namestitvi oddaljenih delnic NFS na zahtevo se lahko obrnete na 5. del serije LFCS (\ "Kako namestiti/odklopiti lokalne in omrežne (Samba in NFS) datotečne sisteme v Linuxu"). z uporabo ukaza mount ali trajno prek datoteke /etc/fstab .

Slaba stran namestitve omrežnega datotečnega sistema s temi metodami je ta, da mora sistem dodeliti potrebna sredstva, da bo delež vedno nameščen, ali vsaj dokler se ne odločimo, da jih bomo odstranili ročno. Druga možnost je samodejno namestitev želenega datotečnega sistema na zahtevo (brez uporabe ukaza priklopi ) s pomočjo samodejnih datotek , ki lahko namestijo datotečne sisteme, ko se uporabljajo, in jih po obdobje neaktivnosti.

Autofs se glasi /etc/auto.master , ki ima naslednjo obliko:

[mount point]	[map file]

Kjer se [datoteka zemljevida] uporablja za označevanje več točk vpenjanja znotraj [točke pritrditve] .

Ta glavna datoteka zemljevida ( /etc/auto.master ) se nato uporabi za določitev, katere točke vpenjanja so definirane, in nato zažene postopek samodejnega vgradnje z navedenimi parametri za vsako točko vpenjanja.

Uredite svoj /etc/auto.master na naslednji način:

/media/nfs	/etc/auto.nfs-share	--timeout=60

in ustvarite datoteko zemljevida z imenom /etc/auto.nfs-share z naslednjo vsebino:

writeable_share  -fstype=nfs4 192.168.0.10:/
non_writeable_share  -fstype=nfs4 192.168.0.10:/mydir

Upoštevajte, da je prvo polje v /etc/auto.nfs-share ime podimenika znotraj /media/nfs . Vsak podimenik dinamično ustvarijo samodejni pregledi.

Zdaj znova zaženite storitev autofs:

# service autofs restart 			[sysvinit / upstart based systems]
# systemctl restart autofs 			[systemd based systems]

in na koncu, da omogočite samodejni zagon ob zagonu, zaženite naslednji ukaz:

# chkconfig --level 345 autofs on
# systemctl enable autofs 			[systemd based systems]

Ko znova zaženemo samodejne datoteke , nam ukaz prikaže, da je datoteka zemljevida ( /etc/auto.nfs-share ) nameščena na določeni imenik v /etc/auto.master :

Upoštevajte, da še ni bil dejansko nameščen noben imenik, vendar bo samodejno, ko bomo poskušali dostopati do skupnih rab, določenih v /etc/auto.nfs-share :

Kot lahko vidimo, storitev za samodejno povezovanje\" priklopi " datoteko zemljevida, tako rekoč, vendar čaka, da se datotečnim sistemom dejansko namesti zahteva.

Možnosti anonuid in anongid , skupaj z root_squash , kot je nastavljeno v prvi skupni rabi, omogočajo preslikavo zahtev, ki jih izvaja korenski uporabnik v odjemalca na lokalni račun v strežniku.

Z drugimi besedami, ko root v odjemalcu ustvari datoteko v tem izvoženem imeniku, se njegovo lastništvo samodejno preslika v uporabniški račun z UID in GID = 1000, če tak račun obstaja na strežniku:

Zaključek

Upam, da ste lahko s pomočjo tega članka kot vodilo uspešno nastavili in konfigurirali strežnik NFS, primeren za vaše okolje. Za nadaljnjo pomoč se lahko obrnete tudi na ustrezne strani z man (na primer izvozi človeka in man idmapd.conf ).

Enostavno preizkusite druge možnosti in preizkusite primere, kot je opisano prej, in ne oklevajte z uporabo spodnjega obrazca za pošiljanje komentarjev, predlogov ali vprašanj. Z veseljem vas bomo slišali.