Network File System v.3: Difference between revisions
No edit summary |
|||
(138 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
= | =Grupi liikmed= | ||
NFS 3 | -Thomas Tomson A31<br> | ||
-Laas Siimon A31<br> | |||
-Arno Joonsaar A32 | |||
=Versioon= | |||
1.0 | |||
==Viimase muutmise aeg== | |||
15.12.2009 13:15 | |||
=Sissejuhatus= | |||
Network File System (NFS) võimaldab serveri failisüsteemi välja jagamist klientidele nii, et see näib nende jaoks lokaalse failisüsteemina. Vaatluse all on varasem NFSv3 ja uus ning põnev NFSv4. Võrguketas võimaldab lihtsamat failide haldamist, varundamist ja monitooringut.<br> | |||
Järgnev artikkel kirjeldab Network File System v.3 ja v.4 serveri ja kliendi seadistust, testimist ja varundamist Ubuntu 9.04 ja 9.10 versiooniga. | |||
= | ==Legend== | ||
Eduka väikefirma töötajate töökal grupil on käsil uus ja põnev projekt, mille edukaks edendamiseks on vaja ligipääsu tsentreeritud serveris asuvatele dokumentidele. Nad kuuluvad kõik samasse gruppi ning sellel grupil on vaja pidevalt viimast versiooni töös olevatest failidest. | |||
*Kõik teenuse kasutajad kuuluvad gruppi "nfsusers" | |||
*Serveris on NFSv3 puhul jagatud kaust nimega /var/nfs | |||
*Kliendile näib see mounditud kaustana /var/files | |||
*Kõikidele klientidele on antud lugemis- ja kirjutamisõigus. | |||
*Root kasutaja serverisse ühendumist ei lubata | |||
==Eeldused== | |||
-NFS-i testimiseks on vaja eraldi virtuaalmasinaid serveri ja kliendi jaoks.<br> | |||
-Hetkel testitud Ubuntu Linuxi versioonidega 9.04 ja 9.10. | |||
=NFS serveri installeerimine= | |||
Logime ennast root kasutajaks: | Logime ennast root kasutajaks: | ||
<pre> | <pre> | ||
sudo -i | sudo -i | ||
</pre> | </pre> | ||
Enne installerimist tasub uuendada tarkvara nimekirja: | Enne installerimist tasub uuendada tarkvara nimekirja: | ||
<pre> | <pre> | ||
Line 12: | Line 41: | ||
</pre> | </pre> | ||
Installeerimine apt-käsu abil: | |||
Installeerimine apt abil: | |||
<pre> | <pre> | ||
apt-get install nfs-kernel-server nfs-common portmap | apt-get install nfs-kernel-server nfs-common portmap | ||
Line 21: | Line 47: | ||
=NFS serveri seadistamine= | ==NFS serveri seadistamine== | ||
Luua | Luua kasutajagrupp ''nfsusers'': | ||
<pre> | |||
groupadd nfsusers | |||
</pre> | |||
Luua jagatavate failide jaoks kataloog, näiteks. | |||
<pre> | <pre> | ||
mkdir /var/nfs | mkdir /var/nfs | ||
</pre> | |||
Määrata loodud kausta grupiks ''nfsusers''. | |||
<pre> | |||
chgrp nfsusers /var/nfs | |||
</pre> | |||
Lisa loodud kausta grupiõigustele lugemis- ja kirjutamisbitt | |||
<pre> | |||
chmod g+rw /var/nfs | |||
</pre> | </pre> | ||
Ava nanoga fail /etc/exports | Ava nanoga fail /etc/exports | ||
<pre> | <pre> | ||
nano /etc/exports | nano /etc/exports | ||
</pre> | </pre> | ||
Line 36: | Line 76: | ||
Lisada faili lõppu rida | Lisada faili lõppu rida | ||
<pre> | <pre> | ||
/var/nfs <kliendi masina ip>(rw, | /var/nfs <kliendi masina ip>(rw,root_squash,no_subtree_check) | ||
</pre> | </pre> | ||
Selgitus: | |||
rw - lubame klientidele lugemist ja kirjutamist.<br> | |||
root_squash - Serveriga ühenduda püüdev root kasutaja UID-ga 0 mapitakse anonüümseks kasutajaks. (st. turvariskide vähendamiseks ei lubada sharele ligi)<br> | |||
no_subtree_check - suurendab mõningatel juhtudel natuke süsteemi töökindlust. | |||
NFS serveri reloadiks kasuta järgmist käsklust: | |||
<pre> | <pre> | ||
/etc/init.d/nfs-kernel-server restart | |||
</pre> | </pre> | ||
Ainult failis /etc/exports tehtud muudatusi saad rakendada ka serverile restarti tegemata, kasutades käsku | |||
<pre> | <pre> | ||
exportfs -a | |||
</pre> | </pre> | ||
Kontrollida | Kontrollida kasutusel olevaid porte käsuga | ||
<pre> | <pre> | ||
netstat -lntu | |||
</pre> | </pre> | ||
Vaata, et kuulatakse järgmiseid porte | |||
<pre> | |||
#Väljundist huvitavad meid read: | |||
Active Internet connections (only servers) | |||
Proto Recv-Q Send-Q Local Address Foreign Address State | |||
tcp 0 0 0.0.0.0:2049 0.0.0.0:* LISTEN | |||
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN | |||
</pre> | |||
Selgitus: 2049 - standard pordi number NFSi jaoks.<br> | |||
111-portmapper | |||
Kontrollida et NFS on töökorras | |||
<pre> | |||
rpcinfo -p | |||
#Väljundist huvitavad meid read: | |||
program vers proto port | |||
100000 2 tcp 111 portmapper | |||
100000 2 udp 111 portmapper | |||
100003 2 udp 2049 nfs | |||
100003 3 udp 2049 nfs | |||
100003 4 udp 2049 nfs | |||
</pre> | |||
Hiljem kliendi seadistamisel failide jagamise kontrollimiseks on abiks kui tekitada kausta /var/nfs mingi suvaline fail. | |||
<pre> | <pre> | ||
touch foo.txt | touch foo.txt | ||
Line 63: | Line 131: | ||
=NFS kliendi installeerimine= | =NFS kliendi installeerimine= | ||
Installeerimine apt abil: | Logime ennast root kasutajaks: | ||
<pre> | |||
sudo -i | |||
</pre> | |||
Enne installerimist tasub uuendada tarkvara nimekirja: | |||
<pre> | |||
apt-get update | |||
</pre> | |||
Installeerimine apt-käsu abil: | |||
<pre> | <pre> | ||
apt-get install portmap nfs-common | |||
</pre> | </pre> | ||
=NFS kliendi seadistamine= | ==NFS kliendi seadistamine== | ||
Luua kasutajagrupp ''nfsusers'': | |||
<pre> | |||
groupadd nfsusers | |||
</pre> | |||
Jälgida et NFSi kasutaja kuuluks gruppi ''nfsusers''. Et kontrollida mis gruppi kasutaja kuulub kasuta ''groups'' käsku. | |||
<pre> | |||
groups <kasutajanimi> | |||
</pre> | |||
Loo kataloog /var/files salvestatavate failide jaoks | Juhul kui kasutaja ei kuulu nimetatud gruppi lisada ta sinna. | ||
<pre> | |||
addgroup <kasutajanimi> nfsusers | |||
</pre> | |||
Loo kataloog, näiteks /var/files, salvestatavate failide jaoks | |||
<pre> | <pre> | ||
mkdir /var/files | mkdir /var/files | ||
</pre> | </pre> | ||
Testimiseks tuleb mountida loodud kataloog käsitsi kasutades mount käsku | Määrata loodud kausta grupiks ''nfsusers''. | ||
<pre> | |||
chgrp nfsusers /var/files | |||
</pre> | |||
Testimiseks tuleb mountida eelmises punktis loodud kataloog esialgu käsitsi kasutades selleks ''mount'' käsku | |||
<pre> | <pre> | ||
mount <serveri ip>:/var/nfs /var/files | mount <serveri ip>:/var/nfs /var/files | ||
Line 88: | Line 186: | ||
Kontrollida et serverisse loodud foo.txt oleks nähtav kliendi /var/files kaustast. | Kontrollida et serverisse loodud foo.txt oleks nähtav kliendi /var/files kaustast. | ||
Kui mountimine ja jagamine õnnestusid muuda faili /etc/fstab | Kontrollida kas on võimalik luua kliendi arvutist uut faili. | ||
Mountimise lõpetamiseks kasutada käsku: | |||
<pre> | |||
umount /var/files | |||
</pre> | |||
Kui mountimine ja kausta jagamine õnnestusid muuda faili /etc/fstab | |||
<pre> | <pre> | ||
nano /etc/fstab | nano /etc/fstab | ||
Line 97: | Line 203: | ||
<serveri ip>:/var/nfs /var/files nfs rw 0 0 | <serveri ip>:/var/nfs /var/files nfs rw 0 0 | ||
</pre> | </pre> | ||
Ühenda automaatselt kõik mis kuulub automaatsesse ühendamisesse | |||
<pre> | |||
mount -a | |||
</pre> | |||
=NFSv3 varundamine= | |||
Luua serveris ja kliendi masinas kaustad varunduskoopiate jaoks, näiteks ''/var/backup''. | |||
<pre> | |||
mkdir /var/backup | |||
</pre> | |||
Serveris tee koopia failist | |||
<pre> | |||
cp /etc/exports /var/backup | |||
</pre> | |||
Kliendi arvutis tee koopia failist | |||
<pre> | |||
cp /etc/fstab /var/backup | |||
</pre> | |||
=Taastamine= | |||
Taastamiseks kopeerida varem varundatud failid algupärastesse asukohtadesse. | |||
Serveris: | |||
<pre> | |||
cp /var/backup/exports /etc | |||
</pre> | |||
Kliendi masinas: | |||
<pre> | |||
cp /var/backup/fstab /etc | |||
</pre> | |||
=Network File System version 4= | |||
==NFSv3 ja NFSv4 võrdlus== | |||
-NFSv4 peamine eelis on mitmed keerukad turvamehhanismid mis on kliendile kohustuslikud. Nende mehhanismide seas on Kerberos 5 ja SPKM3, lisaks tradistsioonilisele AUTH_SYS autentimisele. Uus API võimaldab lihtsat turvamehhanismide lisamist tulevikus.<br> | |||
-NFSv4 võimaldab kliendi poolt anda failile seisundi (lukustamine, lugemine, kirjutamine jne) ning teavitada sellest serverit.<br> | |||
-NFSv4 võimaldab faili delegeerimist - server võimaldab kliendil muuta faili oma cache'is, saatmata serverile päringuid kuni serverisse tuleb päring teiselt kliendilt sama faili kohta. See omakorda vähendab liiklust serveri ja kliendi vahel juhul kui teised kasutajad ei soovi ligi pääseda samaaegselt ühele failile.<br> | |||
-NFSv4 kasutab kokkuliidetud RPCsid. NFSv4 klient suudab kombineerida mitu traditsioonilist NFS operatsiooni ühte RPC päringusse ning seega viia läbi keerulisi operatsioone tõhusamalt.<br> | |||
-NFSv4 toetab nimedega atribuute. Kasutajate ja gruppide info talletatakse stringi, mitte numbrilise väärtuse kujul. ACLid, kasutajnimed, grupi nimed ja nimedega atribuudid talletatakse, kasutades UTF-8 kodeeringut.<br> | |||
-NFSv4 kombineerib erinevad NFS protokollid ühte protokolli et võimaldada paremat ühilduvust võrgu tulemüüridega. | |||
==Legend== | |||
Otsustatakse üle minna NFSv4-le seoses Kerberose autentimise võimalusega. Hetkel toimub ainult NFS protokolli muutus ja Kerberost kasutusele ei võeta. Kui Kerberost mitte kasutada, tuleb ainult olemasolevat süsteemi konfiguratsiooni täiendada. | |||
*Kasutajad kuuluvad gruppi "nfsusers" | |||
*Pseudo failisüsteemi juur on kaust /var/nfs | |||
*Kasutajatele on jagatud kaust nimega /var/nfs/files | |||
*Kliendile näib see mounditud kaustana /var/files | |||
*Kõikidele klientidele on antud lugemis- ja kirjutamisõigus. | |||
*Root kasutaja serverisse ühendumist ei lubata | |||
==Serveri uuendamine== | |||
Luua kausta /var/nfs kaust nimega ''files'' | |||
<pre> | |||
mkdir /var/nfs/files | |||
</pre> | |||
Avada nanoga fail /etc/default/nfs-kernel-server | |||
<pre> | |||
nano /etc/default/nfs-kernel-server | |||
</pre> | |||
Muuta faili sisu vastavalt | |||
<pre> | |||
NEED_SVCGSSD=no | |||
</pre> | |||
Selgitus: SVCGSSD on deemon Kerberosega ühendumiseks, mille lülitame välja. 'No' on vaikimisi seadistus juhul kui Kerberost ei kasutata. | |||
Avada nanoga fail /etc/default/nfs-common | |||
<pre> | |||
nano /etc/default/nfs-common | |||
</pre> | |||
Muuta faili sisu vastavalt | |||
<pre> | |||
NEED_IDMAPD=yes | |||
NEED_GSSD=no | |||
</pre> | |||
Selgitus: IDMAPD vajalik ainult NFS 4 puhul. Transleerib UID ja GID nimedeks.<br> | |||
GSSD - võimaldab kasutada GSS teenuseid. Vastutab Kerberose mountide eest. 'No' on vaikimisi seadistus juhul kui Kerberost ei kasutata. | |||
Avada nanoga fail /etc/exports | |||
<pre> | |||
nano /etc/exports | |||
</pre> | |||
Muuta varem faili lõppu lisatud rida ja lisada rida: | |||
<pre> | |||
/var/nfs <kliendi masina ip>(rw,fsid=0,no_subtree_check,async,root_squash) | |||
/var/nfs/files <kliendi masina ip>(rw,no_subtree_check,async,root_squash) | |||
</pre> | |||
Avada nanoga fail /etc/idmapd.conf | |||
<pre> | |||
nano /etc/idmapd.conf | |||
</pre> | |||
Muuta failis domeeni parameeter õigeks. | |||
<pre> | |||
Domain = <sinu domeeni nimi> | |||
</pre> | |||
Tehke teenusele restart | |||
<pre> | |||
service nfs-kernel-server restart | |||
</pre> | |||
Failide jagamise kontrollimiseks tekita kausta /var/nfs/files suvaline fail. | |||
<pre> | |||
touch foo.txt | |||
</pre> | |||
==Kliendi uuendamine== | |||
Mountida salvestatavate failide jaoks loodud kataloog esialgu käsitsi | |||
<pre> | |||
mount -t nfs4 <serveri ip>:/files /var/files | |||
</pre> | |||
Mountimise õnnestumise kontrollimiseks sisesta käsk | |||
<pre> | |||
df -h | |||
</pre> | |||
Kontrollida et serverisse loodud foo.txt oleks nähtav kliendi /var/files kaustast. | |||
Kontrollida kas on võimalik luua kliendi arvutist uut faili. | |||
Avada nanoga fail /etc/fstab | |||
<pre> | |||
nano /etc/fstab | |||
</pre> | |||
Muuta viimast rida | |||
<pre> | |||
<serveri ip>:/files /var/files nfs4 _netdev,auto 0 0 | |||
</pre> | |||
Avada nanoga fail /etc/idmapd.conf | |||
<pre> | |||
nano /etc/idmapd.conf | |||
</pre> | |||
Muuta failis domeeni parameeter õigeks. | |||
<pre> | |||
Domain = <sinu domeeni nimi> | |||
</pre> | |||
Kui tegu on aeglase võrguga või peale alglaadimist on mountimisega probleeme, muuta faili /etc/rc.local | |||
<pre> | |||
sleep 5 | |||
mount /var/files | |||
</pre> | |||
=NFSv4 varundamine= | |||
Serveris tee koopia failidest | |||
<pre> | |||
cp /etc/exports /var/backup | |||
</pre> | |||
<pre> | |||
cp /etc/default/nfs-kernel-server /var/backup | |||
</pre> | |||
<pre> | |||
cp /etc/default/nfs-common /var/backup | |||
</pre> | |||
<pre> | |||
cp /etc/idmapd.conf /var/backup | |||
</pre> | |||
Kliendi arvutis tee koopia failidest | |||
<pre> | |||
cp /etc/fstab /var/backup | |||
</pre> | |||
<pre> | |||
cp /etc/idmapd.conf /var/backup | |||
</pre> | |||
=Taastamine= | |||
Taastamiseks kopeerida varem varundatud failid algupärastesse asukohtadesse. | |||
Serveris: | |||
<pre> | |||
cp /var/backup/exports /etc | |||
</pre> | |||
<pre> | |||
cp /var/backup/nfs-kernel-server /etc/default | |||
</pre> | |||
<pre> | |||
cp /var/backup/nfs-common /etc/default | |||
</pre> | |||
<pre> | |||
cp /var/backup/idmapd.conf /etc | |||
</pre> | |||
Kliendi masinas: | |||
<pre> | |||
cp /var/backup/fstab /etc | |||
</pre> | |||
<pre> | |||
cp /var/backup/idmapd.conf /etc | |||
</pre> | |||
=Logid= | |||
NFS saadab oma logiteateid syslogisse, kust neid saab vajadusel grepiga otsida. Kuna NFS töötab kerneli teenusena (syslog prefix kernel), ei ole võimalik NFSi logisid eraldi välja suunata. Lahendseks oleks NFS kasutamine userspace teenusena, kuid sellel on jällegi omad puudused. | |||
=Lingid= | |||
-http://nfs.sourceforge.net/ (ülevaate saamiseks NFS-ist tervikuna)<br> | |||
-http://www.ubuntugeek.com/nfs-server-and-client-configuration-in-ubuntu.html (väga hea step-by-step õpetus NFSv3 jaoks)<br> | |||
-https://help.ubuntu.com/community/NFSv4Howto (väga hea step-by-step õpetus NFSv4 jaoks)<br> | |||
-http://www.redhat.com/docs/manuals/enterprise/RHEL-5-manual/Deployment_Guide-en-US/s1-nfs-client-config-options.html (veel mountimise optioneid) | |||
[[Category: IT infrastruktuuri teenused]] |
Latest revision as of 20:02, 15 December 2009
Grupi liikmed
-Thomas Tomson A31
-Laas Siimon A31
-Arno Joonsaar A32
Versioon
1.0
Viimase muutmise aeg
15.12.2009 13:15
Sissejuhatus
Network File System (NFS) võimaldab serveri failisüsteemi välja jagamist klientidele nii, et see näib nende jaoks lokaalse failisüsteemina. Vaatluse all on varasem NFSv3 ja uus ning põnev NFSv4. Võrguketas võimaldab lihtsamat failide haldamist, varundamist ja monitooringut.
Järgnev artikkel kirjeldab Network File System v.3 ja v.4 serveri ja kliendi seadistust, testimist ja varundamist Ubuntu 9.04 ja 9.10 versiooniga.
Legend
Eduka väikefirma töötajate töökal grupil on käsil uus ja põnev projekt, mille edukaks edendamiseks on vaja ligipääsu tsentreeritud serveris asuvatele dokumentidele. Nad kuuluvad kõik samasse gruppi ning sellel grupil on vaja pidevalt viimast versiooni töös olevatest failidest.
- Kõik teenuse kasutajad kuuluvad gruppi "nfsusers"
- Serveris on NFSv3 puhul jagatud kaust nimega /var/nfs
- Kliendile näib see mounditud kaustana /var/files
- Kõikidele klientidele on antud lugemis- ja kirjutamisõigus.
- Root kasutaja serverisse ühendumist ei lubata
Eeldused
-NFS-i testimiseks on vaja eraldi virtuaalmasinaid serveri ja kliendi jaoks.
-Hetkel testitud Ubuntu Linuxi versioonidega 9.04 ja 9.10.
NFS serveri installeerimine
Logime ennast root kasutajaks:
sudo -i
Enne installerimist tasub uuendada tarkvara nimekirja:
apt-get update
Installeerimine apt-käsu abil:
apt-get install nfs-kernel-server nfs-common portmap
NFS serveri seadistamine
Luua kasutajagrupp nfsusers:
groupadd nfsusers
Luua jagatavate failide jaoks kataloog, näiteks.
mkdir /var/nfs
Määrata loodud kausta grupiks nfsusers.
chgrp nfsusers /var/nfs
Lisa loodud kausta grupiõigustele lugemis- ja kirjutamisbitt
chmod g+rw /var/nfs
Ava nanoga fail /etc/exports
nano /etc/exports
Lisada faili lõppu rida
/var/nfs <kliendi masina ip>(rw,root_squash,no_subtree_check)
Selgitus:
rw - lubame klientidele lugemist ja kirjutamist.
root_squash - Serveriga ühenduda püüdev root kasutaja UID-ga 0 mapitakse anonüümseks kasutajaks. (st. turvariskide vähendamiseks ei lubada sharele ligi)
no_subtree_check - suurendab mõningatel juhtudel natuke süsteemi töökindlust.
NFS serveri reloadiks kasuta järgmist käsklust:
/etc/init.d/nfs-kernel-server restart
Ainult failis /etc/exports tehtud muudatusi saad rakendada ka serverile restarti tegemata, kasutades käsku
exportfs -a
Kontrollida kasutusel olevaid porte käsuga
netstat -lntu
Vaata, et kuulatakse järgmiseid porte
#Väljundist huvitavad meid read: Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:2049 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
Selgitus: 2049 - standard pordi number NFSi jaoks.
111-portmapper
Kontrollida et NFS on töökorras
rpcinfo -p #Väljundist huvitavad meid read: program vers proto port 100000 2 tcp 111 portmapper 100000 2 udp 111 portmapper 100003 2 udp 2049 nfs 100003 3 udp 2049 nfs 100003 4 udp 2049 nfs
Hiljem kliendi seadistamisel failide jagamise kontrollimiseks on abiks kui tekitada kausta /var/nfs mingi suvaline fail.
touch foo.txt
NFS kliendi installeerimine
Logime ennast root kasutajaks:
sudo -i
Enne installerimist tasub uuendada tarkvara nimekirja:
apt-get update
Installeerimine apt-käsu abil:
apt-get install portmap nfs-common
NFS kliendi seadistamine
Luua kasutajagrupp nfsusers:
groupadd nfsusers
Jälgida et NFSi kasutaja kuuluks gruppi nfsusers. Et kontrollida mis gruppi kasutaja kuulub kasuta groups käsku.
groups <kasutajanimi>
Juhul kui kasutaja ei kuulu nimetatud gruppi lisada ta sinna.
addgroup <kasutajanimi> nfsusers
Loo kataloog, näiteks /var/files, salvestatavate failide jaoks
mkdir /var/files
Määrata loodud kausta grupiks nfsusers.
chgrp nfsusers /var/files
Testimiseks tuleb mountida eelmises punktis loodud kataloog esialgu käsitsi kasutades selleks mount käsku
mount <serveri ip>:/var/nfs /var/files
Mountimise õnnestumise kontrollimiseks sisesta käsk
df -h
Kontrollida et serverisse loodud foo.txt oleks nähtav kliendi /var/files kaustast.
Kontrollida kas on võimalik luua kliendi arvutist uut faili.
Mountimise lõpetamiseks kasutada käsku:
umount /var/files
Kui mountimine ja kausta jagamine õnnestusid muuda faili /etc/fstab
nano /etc/fstab
Faili lõppu lisada rida
<serveri ip>:/var/nfs /var/files nfs rw 0 0
Ühenda automaatselt kõik mis kuulub automaatsesse ühendamisesse
mount -a
NFSv3 varundamine
Luua serveris ja kliendi masinas kaustad varunduskoopiate jaoks, näiteks /var/backup.
mkdir /var/backup
Serveris tee koopia failist
cp /etc/exports /var/backup
Kliendi arvutis tee koopia failist
cp /etc/fstab /var/backup
Taastamine
Taastamiseks kopeerida varem varundatud failid algupärastesse asukohtadesse.
Serveris:
cp /var/backup/exports /etc
Kliendi masinas:
cp /var/backup/fstab /etc
Network File System version 4
NFSv3 ja NFSv4 võrdlus
-NFSv4 peamine eelis on mitmed keerukad turvamehhanismid mis on kliendile kohustuslikud. Nende mehhanismide seas on Kerberos 5 ja SPKM3, lisaks tradistsioonilisele AUTH_SYS autentimisele. Uus API võimaldab lihtsat turvamehhanismide lisamist tulevikus.
-NFSv4 võimaldab kliendi poolt anda failile seisundi (lukustamine, lugemine, kirjutamine jne) ning teavitada sellest serverit.
-NFSv4 võimaldab faili delegeerimist - server võimaldab kliendil muuta faili oma cache'is, saatmata serverile päringuid kuni serverisse tuleb päring teiselt kliendilt sama faili kohta. See omakorda vähendab liiklust serveri ja kliendi vahel juhul kui teised kasutajad ei soovi ligi pääseda samaaegselt ühele failile.
-NFSv4 kasutab kokkuliidetud RPCsid. NFSv4 klient suudab kombineerida mitu traditsioonilist NFS operatsiooni ühte RPC päringusse ning seega viia läbi keerulisi operatsioone tõhusamalt.
-NFSv4 toetab nimedega atribuute. Kasutajate ja gruppide info talletatakse stringi, mitte numbrilise väärtuse kujul. ACLid, kasutajnimed, grupi nimed ja nimedega atribuudid talletatakse, kasutades UTF-8 kodeeringut.
-NFSv4 kombineerib erinevad NFS protokollid ühte protokolli et võimaldada paremat ühilduvust võrgu tulemüüridega.
Legend
Otsustatakse üle minna NFSv4-le seoses Kerberose autentimise võimalusega. Hetkel toimub ainult NFS protokolli muutus ja Kerberost kasutusele ei võeta. Kui Kerberost mitte kasutada, tuleb ainult olemasolevat süsteemi konfiguratsiooni täiendada.
- Kasutajad kuuluvad gruppi "nfsusers"
- Pseudo failisüsteemi juur on kaust /var/nfs
- Kasutajatele on jagatud kaust nimega /var/nfs/files
- Kliendile näib see mounditud kaustana /var/files
- Kõikidele klientidele on antud lugemis- ja kirjutamisõigus.
- Root kasutaja serverisse ühendumist ei lubata
Serveri uuendamine
Luua kausta /var/nfs kaust nimega files
mkdir /var/nfs/files
Avada nanoga fail /etc/default/nfs-kernel-server
nano /etc/default/nfs-kernel-server
Muuta faili sisu vastavalt
NEED_SVCGSSD=no
Selgitus: SVCGSSD on deemon Kerberosega ühendumiseks, mille lülitame välja. 'No' on vaikimisi seadistus juhul kui Kerberost ei kasutata.
Avada nanoga fail /etc/default/nfs-common
nano /etc/default/nfs-common
Muuta faili sisu vastavalt
NEED_IDMAPD=yes NEED_GSSD=no
Selgitus: IDMAPD vajalik ainult NFS 4 puhul. Transleerib UID ja GID nimedeks.
GSSD - võimaldab kasutada GSS teenuseid. Vastutab Kerberose mountide eest. 'No' on vaikimisi seadistus juhul kui Kerberost ei kasutata.
Avada nanoga fail /etc/exports
nano /etc/exports
Muuta varem faili lõppu lisatud rida ja lisada rida:
/var/nfs <kliendi masina ip>(rw,fsid=0,no_subtree_check,async,root_squash) /var/nfs/files <kliendi masina ip>(rw,no_subtree_check,async,root_squash)
Avada nanoga fail /etc/idmapd.conf
nano /etc/idmapd.conf
Muuta failis domeeni parameeter õigeks.
Domain = <sinu domeeni nimi>
Tehke teenusele restart
service nfs-kernel-server restart
Failide jagamise kontrollimiseks tekita kausta /var/nfs/files suvaline fail.
touch foo.txt
Kliendi uuendamine
Mountida salvestatavate failide jaoks loodud kataloog esialgu käsitsi
mount -t nfs4 <serveri ip>:/files /var/files
Mountimise õnnestumise kontrollimiseks sisesta käsk
df -h
Kontrollida et serverisse loodud foo.txt oleks nähtav kliendi /var/files kaustast.
Kontrollida kas on võimalik luua kliendi arvutist uut faili.
Avada nanoga fail /etc/fstab
nano /etc/fstab
Muuta viimast rida
<serveri ip>:/files /var/files nfs4 _netdev,auto 0 0
Avada nanoga fail /etc/idmapd.conf
nano /etc/idmapd.conf
Muuta failis domeeni parameeter õigeks.
Domain = <sinu domeeni nimi>
Kui tegu on aeglase võrguga või peale alglaadimist on mountimisega probleeme, muuta faili /etc/rc.local
sleep 5 mount /var/files
NFSv4 varundamine
Serveris tee koopia failidest
cp /etc/exports /var/backup
cp /etc/default/nfs-kernel-server /var/backup
cp /etc/default/nfs-common /var/backup
cp /etc/idmapd.conf /var/backup
Kliendi arvutis tee koopia failidest
cp /etc/fstab /var/backup
cp /etc/idmapd.conf /var/backup
Taastamine
Taastamiseks kopeerida varem varundatud failid algupärastesse asukohtadesse.
Serveris:
cp /var/backup/exports /etc
cp /var/backup/nfs-kernel-server /etc/default
cp /var/backup/nfs-common /etc/default
cp /var/backup/idmapd.conf /etc
Kliendi masinas:
cp /var/backup/fstab /etc
cp /var/backup/idmapd.conf /etc
Logid
NFS saadab oma logiteateid syslogisse, kust neid saab vajadusel grepiga otsida. Kuna NFS töötab kerneli teenusena (syslog prefix kernel), ei ole võimalik NFSi logisid eraldi välja suunata. Lahendseks oleks NFS kasutamine userspace teenusena, kuid sellel on jällegi omad puudused.
Lingid
-http://nfs.sourceforge.net/ (ülevaate saamiseks NFS-ist tervikuna)
-http://www.ubuntugeek.com/nfs-server-and-client-configuration-in-ubuntu.html (väga hea step-by-step õpetus NFSv3 jaoks)
-https://help.ubuntu.com/community/NFSv4Howto (väga hea step-by-step õpetus NFSv4 jaoks)
-http://www.redhat.com/docs/manuals/enterprise/RHEL-5-manual/Deployment_Guide-en-US/s1-nfs-client-config-options.html (veel mountimise optioneid)