NFS
Sissejuhatus
NFS - Network File System
NFS on selline tehnika, mis võimaldab ühele töötava linuxi masina failisüsteemile külge mount'ida mingi kataloogi (see võib olla ka juurkataloog) teisest töötava linuxi masina failisüsteemist. Eelduseks on, et need kaks masinat on omavahel võrku ühendatud ja võrk nö. toimib. Tulemusena toimub failide liigutamine/kopeerimine ühest masinast teise nii nagu seda tehakse ühe masina failisüsteemi siseselt st. mitte ftp vaid cp'ga.
Võib ütelda, et masina juta.ee failisüsteemi on kataloogi /nfs alla mountitud masina ut.ee juurikas.
Teostus
Asume siis vaatama, mida on vaja, et eelpoolkireldatud olukord saavutada.
- Esmalt veenduge, et te saate masinaid omavahel pingida, teha telnet'i ja nt.ftp'd. Kui see on olemas on põhjust edasi minna.
- Võimalik, et tuleb kompileerida uus kernel milles on olemas üks linnuke juures (kuigi ta on seal enamst ka vaikimisi): NFS - kernel peab toetama NFS'i.
- Seejärel veenduge, et bootimisel on üles tõmmatud mõlemas masinas portmapper ja sellega seotud asjad. Tunnistuseks, et asjad on selles suhtes
korras on käsk rpcinfo -p sarnane väljund:
# rpcinfo -p program vers proto port 100000 2 tcp 111 portmapper 100000 2 udp 111 portmapper 100005 1 udp 667 mountd 100005 2 udp 667 mountd 100005 1 tcp 670 mountd 100005 2 tcp 670 mountd 100003 2 udp 2049 nfs 100003 2 tcp 2049 nfs
Tavaliselt on vaikimisi see asi nii nagu NFS seda ootab.
- Nüüd peab masinas mis oma faile lubab kuhugi mountida (meie näite kohaselt masinas ut.ee's) ära näitama, et ta tõesti lubab ligi:
# cat /etc/exports / juta.ee(rw)
Antud juhul lubatakse juta.ee kasutajatele mountida lugemiseks/kirjutamiseks kogu ut.ee failisüsteemi. Tegelikult on seda natuke liiga palju lubatud :)
Ja mis kõige tähtsam, et ut.ee saaks teadlikuks uutest määratlustest tuleb käivitada daemonid uuesti:
# cat /etc/export_fs #!/bin/sh killall -HUP /usr/sbin/rpc.mountd killall -HUP /usr/sbin/rpc.nfsd
- Ja kui see on korras, siis peaks juta.ee's käsu
# mount -t nfs ut.ee:/ /nfs
andes asja külge mountida.
Siin tuleb veel mainida asjaolu, et kui nimed kahe masina puhul mingil põhujusel et taha laheneda, siis võib kasutada ka IP aadresse. Ning mugavam on panna viimane käsk, ehk /etc/fstab'i, aga igaks juhuks 'noauto'. Kui juhtub, et juta.ee bootimisel ei ole ut.ee asjaks valmis, siis on palju ootamist ja veateateid.
Seega too rida on nt. selline:
ut.ee:/ /nfs nfs rsize=1024,wsize=1024,noauto 0 0
Kindlasti peaks panema nfs-i tööle tcp portidel, muidu võib tekkida igasuguseid anomaaliaid. Mountides peaks siis järgnevalt:
ut.ee:/ /nfs nfs tcp,rsize=1024,wsize=1024,noauto 0 0
proovida saab ka
mount -o tcp ut.ee:/nfs /nfs
Siis on oluline tähele panna, et read size ja write size optsioonide vahel pole tühikut.
/nfs kataloogi kohta juta.ee's failisüsteemis üteldakse ka 'mount point'.
Igaks juhuks olgu ütledud, et ükskõik kummast arvutist enne voolu välja lülitamist tuleb ikka failisüteemid enne umountida! Ja teha kõik muu mis tarvis.
NFS-i korral peaks tingimata mõtlema clustri peale. Selleks soovitaks linuxi puhul kasutada http://www.linux-ha.org/.
/var/lib/nfs tuleks panna ühisele kettale (iscsi, FC), mis võetaks soovitatavalt kuskilt kettakastist, odav lahendus oleks rsync või glusterfs, millest on siin ka pikalt kirjutatud [1].
Et vaadelda mida mounditud klientide poolt
# showmount -e Exports list on localhost: /mnt 192.168.1.2