Kirjoittaja Aihe: NFS jaot kuntoon [kysytty]  (Luettu 16912 kertaa)

LinuxMan

  • Vieras
NFS jaot kuntoon [kysytty]
« : 21.05.06 - klo:21.34 »
NFS Mini HOWTO - Kuinka asetan jaot kahden linux koneen välille?

Tämä onkin ensimmäinen HOWTOni tälle foorumille.
Nyt olisi siis tarkoituksena jakaa toiselta linux koneelta tiedostot toiselle koneelle.
Mennään suoraan asiaan:

Yleensä kernelissä on valmiina NFS hommelit, mutta tarkita esim. Synapticilla, että "nfs-common" sekä "nfs-kernel-server" paketit on asennettu, jos ei ole asenna ne.

Seuraavaksi avaa tekstieditoriin "/etc/exports" tiedosto.

Koodia: [Valitse]
sudo gedit /etc/exports
Tähän tiedostoon siis määritellään kelle jaetaan ja mitä. Itselläni tiedoston sisältö on seuraavanlainen.

Koodia: [Valitse]
/home/juho/    192.168.0.2(rw,sync)
mutta rivi voi hyvinkin olla seuraavanlainen:

Koodia: [Valitse]
/home/foo/ 192.168.0.2(rw,sync)    192.168.0.3(ro,sync)
eli koneella 192.168.0.2 on jakoihin luku- ja kirjoitusoikeudet kun 192.168.0.3 koneella vain lukuoikeudet.

rw = luku- ja kirjoitusoikeudet
ro = vain luku
sync = estää datahävikin eli tämä tulisi olla aina!
no_root_squash = asiakaskoneen root-käyttäjällä samat oikeudet jaettuun tavaraan kuin jakavan koneen root-käyttäjällä.
no_subtree_check = nopeuttaa hakemisto jos koko media on jaettu

Seuraavaksi voit käynnistää tarvittavat palvelut init.d skripteistä tai sitten suoraan boottaat koko koneen.

Koodia: [Valitse]
sudo /etc/init.d/nfs-common restart
sudo /etc/init.d/nfs-kernel-server restart

Voit tarkistaa NFS:n toimivuuden seuraavalla komennolla.

rpcinfo -p

Siirrytäänpä sitten asiakaskoneelle eli sille koneelle, jolle jaot halutaan. NFS on siitä erittäin hyvä, että asiakaskoneille ei yleensä tarvitse tehdä mitään muutoksia eli suoraan vain mountataan.

Koodia: [Valitse]
sudo mount -tnfs 192.168.0.1:/home/foo /home/foo2
eli 192.168.0.1 on kone, jolta tiedostot halutaan mountata ja /home/foo on jaossa oleva hakemisto. /home/foo2 on asiakaskoneen hakemisto jonne jaetut tiedostot halutaan liitettävän.

Jos haluat, että kone mounttaa automaattisesti käynnistyksen yhteydessä riittää kun heität seuraavan rivin fstabiin.

Eli komenna:

Koodia: [Valitse]
sudo gedit /etc/fstab
ja sinne seuraava rivi:

Koodia: [Valitse]
192.168.0.1:/home/foo  /liitos/piste    nfs          rw            0    0
Nyt jakojen pitäisi toimia. Tässä oli sitten vain NFS perusteita eikä kaikkia hienouksia ja ym. edistyneempiä juttuja kerrottu, mutta tällä pääsee kyllä pitkälle.

Toivottavasti tästä oli monille apua ja jos kysyttävää ilmenee niin kysy pois.
« Viimeksi muokattu: 16.08.08 - klo:15.50 kirjoittanut Kari Argillander »

Melmacian

  • Käyttäjä
  • Viestejä: 868
  • Ubuntu Hardy
    • Profiili
Re: NFS jaot kuntoon
« Vastaus #1 : 21.05.06 - klo:23.34 »
Kiva kiva, itselläni oli aikamoista tuskaa saada NFS toimimaan ekaa kertaa. Olisi ollut hyvä jos silloin olisi ollut suomenkielinen howto, mutta nytpä se on korjattu. Kiitos vain, tälle tulee varmasti tarvetta.

En testannut opasta käytännössä, mutta hyvälle vaikuttaa.

Nyt päätä askarruttaa se miten saisi iptablesilla sallittua NFS:n portit vain lähiverkkoon, kun itse pidän palomuurin perussääntönä, "sulje kaikki, salli vain tarvittavat." Olisi hienoa jos joku osaisi tehdä sillekkin jonlaisen howto:n.

LinuxMan

  • Vieras
Re: NFS jaot kuntoon
« Vastaus #2 : 22.05.06 - klo:09.46 »
Nyt päätä askarruttaa se miten saisi iptablesilla sallittua NFS:n portit vain lähiverkkoon, kun itse pidän palomuurin perussääntönä, "sulje kaikki, salli vain tarvittavat." Olisi hienoa jos joku osaisi tehdä sillekkin jonlaisen howto:n.

Tohon voisin vastata sen verran, että avaat editoriin /etc/hosts.allow ja sinne esim. seuraavia muutoksia.

Koodia: [Valitse]
statd: 192.168.0.2 , 192.168.0.3
rquotad: 192.168.0.2 , 192.168.0.3
mountd: 192.168.0.2 , 192.168.0.3
lockd: 192.168.0.2 , 192.168.0.3
portmap: 192.168.0.2 , 192.168.0.3

/etc/hosts.deny toimii täysin samalla tavalla, mutta sinne määritellään estettävät koneet kun tähän sallittavat. Eli jos hosts.deny tiedostoon laitetaan esim seuraavaa:

Koodia: [Valitse]
statd: ALL
rquotad: ALL
mountd: ALL
lockd: ALL
portmap: ALL

Kaiken järjen mukaan tuossa olisi nyt niin, että 192.168.0.2 ja 192.168.0.3 sallitaan, mutta kaikki muut osoitteet torjutaan. En ole testannut käytännössä niin ei toimivuudesta sen tarkempaa tietoa. Pitäisi testata kunhan tästä nyt kotia pääsen. :)

Melmacian

  • Käyttäjä
  • Viestejä: 868
  • Ubuntu Hardy
    • Profiili
Re: NFS jaot kuntoon
« Vastaus #3 : 23.05.06 - klo:15.59 »
Tutkin vähän tarkemmin ohjettasi.

Lainaus
Tähän tiedostoon siis määritellään kelle jaetaan ja mitä. Itselläni tiedoston sisältö on seuraavanlainen.

Koodia: [Valitse]
/home/juho/    192.168.0.2(rw,sync)
Tätä hieman tarkentaisin. Siis /home/juho on se hakemisto joka halutaan laittaa jaettavaksi ja sillä koneella jolla on ip 192.168.0.2 on oikeus tuohon jakoon. Laajemman ip alueen voi laitaa näin: 192.168.0.1/24, jolloin jakoon pääseen käsiksi tuolla alueella olevat koneet.


Lainaus
Koodia: [Valitse]
sudo mount -tnfs 192.168.0.1:/home/foo /home/foo2
Onko tässä typo, vai toimiiko -tnfs tosiaan noinkin? Ilman väliä sen luulisi ottavan vivuiksi myös kirjaimet n, f ja s:n. -t nfs on mielestäni oikeampi tapa ;)


Ja ne jotka käyttävät tätä ilman nattia kannattaa lukea tämä:
http://forum.ubuntu-fi.org/index.php?topic=2372.0
Niin saat kiinteän ip:n NFS:ää varten.


Muuten ohje on vallan mainio.
« Viimeksi muokattu: 23.05.06 - klo:16.01 kirjoittanut Epeli »

LinuxMan

  • Vieras
Re: NFS jaot kuntoon
« Vastaus #4 : 23.05.06 - klo:17.54 »
Kyllä tuo toimii ihan -tnfs eikä kyseessä ole typo. Tarkennan tuota ohjetta hieman.

jhalmu

  • Käyttäjä
  • Viestejä: 28
    • Profiili
    • lovetech
Re: NFS jaot kuntoon
« Vastaus #5 : 24.05.06 - klo:21.36 »
Ah, kiitos.
AMD64 +3500/1024Mb/Abit AN8-SLI/MSI GeForce 6600
Gutsy 32 ja MacBook2.0 (+ XP)
Skype: juhahalmu

fly

  • Käyttäjä
  • Viestejä: 265
    • Profiili
    • o_O
Re: NFS jaot kuntoon
« Vastaus #6 : 26.05.06 - klo:01.58 »
vau mikä ohje, pelastit monelta pään seinään hakkaukselta. kiitos! :D

jhalmu

  • Käyttäjä
  • Viestejä: 28
    • Profiili
    • lovetech
Re: NFS jaot kuntoon
« Vastaus #7 : 26.05.06 - klo:23.32 »
Paitsi että se jämähdyttää toisen koneen käynnistyksesä, jos toinen kone ei ole päällä. Olisko tähän jotain ohjetta?
AMD64 +3500/1024Mb/Abit AN8-SLI/MSI GeForce 6600
Gutsy 32 ja MacBook2.0 (+ XP)
Skype: juhahalmu

Ville Pöntinen

  • Käyttäjä
  • Viestejä: 2078
    • Profiili
Re: NFS jaot kuntoon
« Vastaus #8 : 27.05.06 - klo:02.04 »

Omassa verkossani on clientilla fstabissa optiona myös mm. bg (siis ekan viestin esimerkin tapaan:)

Koodia: [Valitse]
192.168.0.1:/home/foo  /liitos/piste    nfs          rw,bg            0    0
Tosin siellä on muitakin juttuja, joiden en usko vaikuttavan tähän. Jos tuo ei auta, voin katsoa töissä mitä kaikkea siellä on. Töissä tosin on muitakin ongelmia, jos palvelin on nurin, koska kirjautiminen NIS:n avulla.

Kiertotie on laittaa mounttaaminen fstabin sijasta käyttäjän kirjautumis-scriptiin.

Melmacian

  • Käyttäjä
  • Viestejä: 868
  • Ubuntu Hardy
    • Profiili
Re: NFS jaot kuntoon
« Vastaus #9 : 27.05.06 - klo:10.27 »
Yksi vaihtoehto olisi laittaa NFS-jaot mounttautumaan /etc/rc.local -tiedostossa. Siinä ollessaan käynnistys ei muistaakseni jumita, jos mountattavaa ei löydykkään.

Vai pitäisikö peräti tehdä joku scripti joka ensin stekkaa onko jakokoneen ip:tä olemassa ennen kuin yrittää mountata sen tiedostojärjestelmän.

Tosin pakko kai tuohon fstabiin on olla jokin vipu millä kone käynnistyy vaikka nfs-jakoja ei löytyisi. En ainakaan suostu uskomaan että se olisi niin huonosti suunniteltu :D
« Viimeksi muokattu: 27.05.06 - klo:15.59 kirjoittanut Epeli »

LinuxMan

  • Vieras
Re: NFS jaot kuntoon
« Vastaus #10 : 27.05.06 - klo:15.53 »
Paitsi että se jämähdyttää toisen koneen käynnistyksesä, jos toinen kone ei ole päällä. Olisko tähän jotain ohjetta?

Tuota en huomioinutkaan kun itselläni mountattava kone on yleensä melkein aina päällä.

Echramath

  • Käyttäjä
  • Viestejä: 242
    • Profiili
    • http://iki.fi/ech/
Re: NFS jaot kuntoon
« Vastaus #11 : 17.06.06 - klo:16.57 »
Koneelle kannattaisi näemmä pitää asentaa "portmap"-niminen paketti. En ole ihan perehtynyt, mitä se tekee (NFS on hämärä eläin), mutta joka tapauksessa sen kanssa mounttaaminen tuntuu etenevän olennaisesti nopeammin (sekunteja vs. minuutteja).

Mutua: puuttuvan osion ei pitäisi haitata elämää käynnistyksessä, varsinkin jos kyseessä on osio, jolla ei ole systeemin omia tiedostoja. Juuriosio jos on hukassa, ollaan ongelmissa ja ilman /usr:ää on ikävää, mutta /homen puuttuminen ei sinällään systeemiä itseään haittaa, käyttäjiä kyllä. Jos /warez puuttuu, eletään reissussa mainiosti.

Jos siis bootissa verkko puuttuu kokonaan tai muuten ei ole reittiä koneelle nimeltä palvelin (eli esimerkiksi kone ei tiedä verkkointerfacensa osoitetta koska DHCP ei toimi tai nimipalvelu ei osaa selvittää mikä moisen palvelimen osoite olisi) tai toisaalta jos palvelin palauttaa reject-viestin (nfs-serveri ei ole päällä), homman pitäisi mennä sujuvasti. Mountpointti jää tyhjäksi ja jatketaan boottia.

Sen sijaan jos palvelimelle on reitti, mutta syystä tai toisesta se ei vastaa laisinkaan (verkko välissä on katki, palvelin ei ole päällä, sen palomuuri ei anna mitään vastausta pyyntöön) saatetaan odotella melko tovi, ennen kuin luovutetaan. Samaten jos nimipalvelu kyllä pelaa koneen mielestä, mutta on hitaalla päällä, saatetaan odotella melko tovi, löytyisikö "palvelin", ennen kuin tulee ymmärrys, että ei. Tämä voi tuntua käyttäjän mielestä jumiutumiselta, mutta kyllä sen tuosta pitäisi aikansa odotettuaan toeta.

Sen sijaan jos jo mountattu nfs-jako "tippuu alta", saattaa ilmeisesti seurata ongelmia?

Melmacian

  • Käyttäjä
  • Viestejä: 868
  • Ubuntu Hardy
    • Profiili
Re: NFS jaot kuntoon
« Vastaus #12 : 18.06.06 - klo:15.13 »
Niin mitkä portit pitää avata palomuurista että tämä NFS toimii?

Koitin avata komennolla rpcinfo -p löytyvät portit, mutta ei auta. NFS ei toimi.

Tein palomuuri scriptiini näin:
Koodia: [Valitse]
# NFS

iptables -A TRUSTED -i eth0 -p tcp -m tcp --dport 2049 -j ACCEPT
iptables -A TRUSTED -i eth0 -p udp -m udp --dport 2049 -j ACCEPT
iptables -A TRUSTED -i eth0 -p tcp -m tcp --dport 111 -j ACCEPT
iptables -A TRUSTED -i eth0 -p udp -m udp --dport 111 -j ACCEPT

iptables -A TRUSTED -i eth0 -p tcp -m tcp --dport 1014:1017 -j ACCEPT
iptables -A TRUSTED -i eth0 -p udp -m udp --dport 1014:1017  -j ACCEPT

iptables -A TRUSTED -i eth0 -p tcp -m tcp --dport 369 -j ACCEPT
iptables -A TRUSTED -i eth0 -p udp -m udp --dport 369 -j ACCEPT

iptables -A TRUSTED -i eth0 -p tcp -m tcp --dport 530 -j ACCEPT
iptables -A TRUSTED -i eth0 -p udp -m udp --dport 530 -j ACCEPT

iptables -A TRUSTED -i eth0 -p tcp -m tcp --dport 51247 -j ACCEPT
iptables -A TRUSTED -i eth0 -p udp -m udp --dport 51247 -j ACCEPT

iptables -A TRUSTED -i eth0 -p tcp -m tcp --dport 32768 -j ACCEPT
iptables -A TRUSTED -i eth0 -p udp -m udp --dport 32768 -j ACCEPT

iptables -A TRUSTED -i eth0 -p tcp -m tcp --dport 600:1000 -j ACCEPT
iptables -A TRUSTED -i eth0 -p udp -m udp --dport 600:1000 -j ACCEPT




Koodia: [Valitse]
epeli@kumikone:~$ sudo /etc/init.d/nfs-common restart ; sudo /etc/init.d/nfs-kernel-server restart
 * Stopping nfs statd...                                                                                     [ ok ]
 * Starting nfs statd...                                                                                     [fail]
 * Stopping rpc mountd...                                                                                    [ ok ]
 * Stopping rpc nfsd...                                                                                      [ ok ]
 * Unexporting directories for NFS kernel daemon...                                                          [ ok ]
 * Exporting directories for NFS kernel daemon...                                                            [ ok ]
 * Starting rpc nfsd...                                                                                      [fail]

Mielestäni tässä pitäisi olla kaikki mahdollinen auki, että NFS toimisi. Mikä puuttuu?


EDIT: Sain homman toimimaan hieman eri tavalla!

Koodia: [Valitse]
# Remove all rules and chains
iptables -F
iptables -X

#Allow connections already established
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

#Accept everything from localhost
iptables -A INPUT -i lo -j ACCEPT

# lan (nfs)
iptables -A INPUT --source 192.168.0.1 -j ACCEPT
iptables -A INPUT --source 192.168.0.2 -j ACCEPT
iptables -A INPUT --source 192.168.0.3 -j ACCEPT
iptables -A INPUT --source 192.168.0.4 -j ACCEPT

# Bittorrent
iptables -A INPUT -p tcp -m tcp --dport 6881:6889 -j ACCEPT

# Allow IRC IDENT & DCC
iptables -A INPUT -p tcp -m tcp --sport 6667 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --sport 113 -j ACCEPT

iptables -A INPUT -p tcp --dport https -j ACCEPT
iptables -A INPUT -p tcp --dport 55000 -j ACCEPT


#Drop everything else
iptables -A INPUT -j DROP

#Outbound: allow everything
iptables -A OUTPUT -j ACCEPT
« Viimeksi muokattu: 18.06.06 - klo:19.42 kirjoittanut Epeli »

mockduck

  • Käyttäjä
  • Viestejä: 17
    • Profiili
Re: NFS jaot kuntoon
« Vastaus #13 : 17.10.06 - klo:12.36 »
seuraavia kysymyksiä:

olen tehnyt nfs-jaon kaverilleni, joka ei ole samassa sisäverkossa kanssani. siirtonopeudet tietysti hidastuu, mutta tiedostojen siirtäminen tapahtuu tosi omituisesti. tiedosto lähtee alkuun tulemaan hyvää vauhtia, hidastuu nopeasti kunnes pysähtyy täysin. jonkun ajan kuluttua sama homma. liikkuu siis sykäyksittäin, noin puolet koko siirtoajasta tiedoston siirto on pysähtynyt. onko tähän jotain ratkaisua?

kotona meillä on kaksi konetta, jotka ovat kiinni kytkimessä (tälläinen). saako nämä lähiverkkoon siten että liikennettä ei kierrätetä palveluntarjoajan kautta?




Melmacian

  • Käyttäjä
  • Viestejä: 868
  • Ubuntu Hardy
    • Profiili
Re: NFS jaot kuntoon
« Vastaus #14 : 17.10.06 - klo:12.44 »
olen tehnyt nfs-jaon kaverilleni, joka ei ole samassa sisäverkossa kanssani.
NFS:ää _ei_ pidä käyttää ulkoverkossa! Käytä mielummin SSH:ta(SFTP/SCP).


kotona meillä on kaksi konetta, jotka ovat kiinni kytkimessä (tälläinen). saako nämä lähiverkkoon siten että liikennettä ei kierrätetä palveluntarjoajan kautta?
Varmasti. Voit yrittää asettaa koneille staattiset ip:t joiden kautta muodostat yhteyden. Kokeile vaikka tätä.

mockduck

  • Käyttäjä
  • Viestejä: 17
    • Profiili
Re: NFS jaot kuntoon
« Vastaus #15 : 17.10.06 - klo:22.12 »
olen tehnyt nfs-jaon kaverilleni, joka ei ole samassa sisäverkossa kanssani.
NFS:ää _ei_ pidä käyttää ulkoverkossa! Käytä mielummin SSH:ta(SFTP/SCP).
joo, näin olen kuullut ja lopetinkin sen käytön. voisitko kertoa vielä mitä haittaa siitä on, jos kaverilla on staattinen ip-osoite ja ei anna oikeuksia kirjoittamiseen?

Lainaus
kotona meillä on kaksi konetta, jotka ovat kiinni kytkimessä (tälläinen). saako nämä lähiverkkoon siten että liikennettä ei kierrätetä palveluntarjoajan kautta?
Varmasti. Voit yrittää asettaa koneille staattiset ip:t joiden kautta muodostat yhteyden. Kokeile vaikka tätä.
kiitos, tämä toimi ja verkko on pystyssä  :)

[edit: lisätty yksi tyhjä rivi]

Ville Pöntinen

  • Käyttäjä
  • Viestejä: 2078
    • Profiili
Re: NFS jaot kuntoon
« Vastaus #16 : 17.10.06 - klo:22.25 »
joo, näin olen kuullut ja lopetinkin sen käytön. voisitko kertoa vielä mitä haittaa siitä on, jos kaverilla on staattinen ip-osoite ja ei anna oikeuksia kirjoittamiseen?

Pelkkä NFS kertoo auliisti kaikille kaverisi ip-osoitetta pinggaaville, että täällä ollaan... Ei tarvitse "kuin" räplätä tunnus+salasana auki ja pääsee lukemaan kaverisi tiedostoja. Tietty read-only-oikeudet jotain rajoittavat, mutten luottaisi siihen, ettei joku tätä kautta tulisi tekemään jotain muutakin.

Kaikki avoimen netin kautta kulkeva liikenne tulee ehdottamasti salata. Ssh-yhteyden järkkääminen kahden koneen välille ei ole vaikeata.

Edit: Lisätty unohtunut lainaus.
« Viimeksi muokattu: 17.10.06 - klo:22.26 kirjoittanut pontvil »

mikkohuo

  • Käyttäjä
  • Viestejä: 562
  • The Ubuntu Counter Project - user number #3339
    • Profiili
Vs: Re: NFS jaot kuntoon
« Vastaus #17 : 07.05.07 - klo:12.45 »
olen tehnyt nfs-jaon kaverilleni, joka ei ole samassa sisäverkossa kanssani. siirtonopeudet tietysti hidastuu, mutta tiedostojen siirtäminen tapahtuu tosi omituisesti. tiedosto lähtee alkuun tulemaan hyvää vauhtia, hidastuu nopeasti kunnes pysähtyy täysin. jonkun ajan kuluttua sama homma. liikkuu siis sykäyksittäin, noin puolet koko siirtoajasta tiedoston siirto on pysähtynyt. onko tähän jotain ratkaisua?

Täällä on sama ongelma, mutta koneet ovat samassa sisäverkossa! Eli tiedoston haku alkaa nopeasti, mutta hyytyy pian. SSH:lla tulee normaalisti, mutta se on vähän turhan hidas muuten. Mikähän voisi olla vikana?

EDIT: Ja vikana oli virhe DNS-palvelimissa. Nyt toimii, mutta ei mikään järin nopea ole silti.
« Viimeksi muokattu: 07.05.07 - klo:15.58 kirjoittanut mikkohuo »

Kari Argillander

  • Käyttäjä
  • Viestejä: 437
  • Kubuntu - Hardy
    • Profiili
Vs: NFS jaot kuntoon
« Vastaus #18 : 16.08.08 - klo:15.50 »
Voisiko ohjeen kirjoittaja/täydentäjät kirjoittaa viestin jossa vahvistavat että     

a) ohje on edelleen käyttökelpoinen Hardyssä (tuorein LTS, tuorein stable) eli uudet ominaisuudet eivät ole poistaneet tarvetta ohjeelle tai että ohjeessa käytetyt työkalut jne ovat edelleen Hardyssä käytössä
b) antavat luvan ohjeen siirtämiseen Ubuntu Suomen wikiin (http://wiki.ubuntu-fi.org). Kts. Wikin lisenssistä jne lisätietoja täältä: http://wiki.ubuntu-fi.org/#head-867666147f48c6b667ec0f6be3f5f16852046770
c) antavat luvan ohjeen siirtämiseen Linux.fi-wikiin (http://linux.fi/index.php/Etusivu). Kts. Wikin lisenssistä jne lisätietoja täältä: http://linux.fi/index.php/Linux.fi:Lisenssi

Sinun ei ole pakko antaa lupaa siirtää ohjetta molempiin wikeihin vastaat tällöin vain joka b:hen tai c:hen kyllä.
Kiitos!
Kaikkea täällä sanomaani saa käyttää public domain lisenssillä. Lainauksia ei saa käyttää ellei lainauksen lähde sitä salli. Tiedostoja ei saa käyttää ellei sitä erikseen sallita.