[SOLVED] NFS exportfs probléma

Fórumok

Sziasztok!

Először is mindekinek Happy Sysadmin Day-t!! ;)

Van egy kis problémán az exportfs paranccsal kapcsolatosan. A Netapp NFS exportoktól eltérően ha Ubi alatt kiadom az exportfs -a (vagy -r) parancsot akkor minden esetben keresi mindazon hostokat (alive) amik az exports fájlban szerepelnek. Ha a gép ki van kapcsolva, akkor a hozzá tartozó exportot ki is veszi az exportokból. Így ha később azt a hostot bekapcsolják, akkor azon értelemszerűen nem lesznek meg a kiajánlások. Ilyenkor mindig a szerveren ki kell újra adni az exportfs -a parancsot, majd a hoston mount -a. Igen, de a hálózatomban több gépre vannak eyportok és nem mindig van az összes bekapcsolva, tehát minden egyes exportfs kiadása után lesz(nek) gép(ek) amik az adott pillanatban ki vannak kapcsolva, így azoktól a szerver el fogja venni az exportot.
Van erre valami megoldás, vagy workaround hogy az exportfs -a parancs kiadásakor NE csekkolja hogy a hostok online vannak-e vagy sem? Vagy hogy lehetne ezt a hibát kiküszöbölni?

Hozzászólások

Ami lemaradt: Olyat is csinál a rendszer hogy pl az egyik laptopon (kliens és nem az NFS szerverről van szó) nem egyszer előfordul hogy mikor pld este kikapcsolom a gépet, a mountok még rendben vannak. Majd másnap reggel bekapcsolom, nincsenek meg az exportok (közben tutira nem volt a szerveren kiadva az exportfs parancs, mert cska én férek hozzá). Ilyenkor ha csinálok egy mount -a -t, akkor hibát dob:
mcll@mcll-ubuntu1404 ~ $ sudo mount -a
[sudo] password for mcll:
mount.nfs: access denied by server while mounting 192.168.1.240:/home/mcll

Ilyenkor ha megnézem az exportokat, ott látszólag rendben van:
mcll@mcll-ubuntu1404 ~ $ showmount -e 192.168.1.240
Export list for 192.168.1.240:
..töröltem a többit..
/home/mcll mcll-ubuntu1404.local

Ezt úgy tudom csak javítani, ha felmegyek a szerverre és kiadom az exportfs -a parancsot. De persze ekkor jön az a hiba amit fennt írtam. Ez után a kliensen a mount -a paranccsal fel is csatolódik szépen.

Az exports fájlomban nem IP alapján megy a kiajánlás mert dinamikus az IP cím kiosztásom (máshol is használok egyes gépeket), ezért az mcll-ubuntu1404.local hostnév.

Tehát valahogy így néz ki (csak egy kivonat) az /etc/exports fájl ide vonatkozó része:
/home/mcll mcll-ubuntu1404.local(rw,sync,no_root_squash,no_subtree_check)

A névfeloldás megy, bár furán, mert ugyan pingelhető:
root@mcllserver1 ~ # ping mcll-ubuntu1404.local
PING mcll-ubuntu1404.local (192.168.1.136) 56(84) bytes of data.
64 bytes from mcll-ubuntu1404.local (192.168.1.136): icmp_req=1 ttl=64 time=0.161 ms
64 bytes from mcll-ubuntu1404.local (192.168.1.136): icmp_req=2 ttl=64 time=0.197 ms
^C
--- mcll-ubuntu1404.local ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 0.161/0.179/0.197/0.018 ms

de a host parancs nem látja:
root@mcllserver1 ~ # host mcll-ubuntu1404.local
Host mcll-ubuntu1404.local not found: 3(NXDOMAIN)

Nem tudom ez befolyásolhatja-e, szerintem nem.

Szóval jó lenne valami megoldás hogy az exportfs parancs kiadásakor ne essenek le azok az exportok melyeknél a hostok éppen ki vannak kapcsolva.

Köszi
Üdv

mcll

Dinamikus a címkiosztásod a 192.168.1-es tartományban?
Ha dinamikus mi alapján kapod meg mindig ugyanazt a hostnevet hozzá?
A /etc/hosts fájlban soroltad fel a neveket, vagy hol?
A hosts parancs pl. a /etc/hosts fájlt nem olvassa.
Ha máshol is használod a gépeket attól még lehetne nekik fix ip beírva a dhcp szerveren...

Igen dinamikus. A gép hostneve.local alapján adja a router, ahol nem jár le az IP cím ideje.
Amúgy a DHCP szerveren fix beállítás nem is rossz ötlet, ezt még nem próbáltam ki. Azonban ez nem hiszem hogy segít az alapproblémámon, azaz azon hogy az exportfs -a parancs kiadásakor ne foglalkozzon azzal hogy az adott exporthoz tartozó host éppen online vagy offline állapotban van (és ha offline, akkor az export listából ki is veszi az adott hostot).

Hmm. Azt hiszem helyesbítenem kell az előző postomat. :) Ugyanis lehet ez volt a gond. Azaz .local formulát használtam, ami megkeresi a hosznévhez tartozó IP címet a DHCP listában. Ha a gép offline, akkor a listában sincs, így IP-címet sem fog kapni az exportfs parancs. Most hogy beállítottam a routerben hogy az adott mac című adapterhez melyik IP-t rendelje melyik hostnév alatt, és az exports fájlban nem a .local hostnevet írom, hanem azt amit a routerben is megjelöltem (és persze az NFS szerver hosts fájljába is beírtam hogy mely ip-hez mely hostnevet társítsa), így most az exportfs -a parancs hiba nélkül lefut, azaz az offline gépek fele is ki lett exportálva a cucc. Most úgy tűnik minden rendben. Holnap kiderül, mert az egyik lányom nincs itthon, a laptopja sem, így ő lesz holnap délelőtt ez "éles" teszt. Ha a gépe bekapcsolása után rendben felcsatolódnak a share-k akkor happy leszek. :)

Szóval azt hiszem a válaszod segített, THX! ;)

Ö... jól értelek, a .local-t használod TLD-ként az otthoni hálódon?
Ha igen és van rajta windows is, sürgősen találj ki helyette valami újat! Sajnos már nem emlékszem a részletekre, innen meg már töröltem azt a blog bejegyzésemet, de qrrva nagyokat lehet szopni miatta, mert a windows spec. célokra használja a .local-t...