3 545
muokkausta
p (opetusmateriaaleihin, tää on kyl pahasti päällekkäin) |
(huhhui) |
||
Rivi 1: | Rivi 1: | ||
Hyvä opas löytyy osoitteesta http://www.vanemery.com/Linux/NFSv4/NFSv4-no-rpcsec.html | Hyvä opas löytyy osoitteesta http://www.vanemery.com/Linux/NFSv4/NFSv4-no-rpcsec.html | ||
[[NFS]] käyttää mm. seuraavia konfiguraatiotiedostoja ja skriptejä: | |||
/etc/fstab - asiakaskoneessa | /etc/fstab - asiakaskoneessa | ||
Rivi 25: | Rivi 25: | ||
Luo nfs-määrityksiä sisältävä tiedosto: | Luo nfs-määrityksiä sisältävä tiedosto: | ||
touch /etc/sysconfig/nfs | [[touch]] /etc/sysconfig/nfs | ||
Lisää kys. tiedostoon rivit: | Lisää kys. tiedostoon rivit: | ||
# Muuta tähän “yes�?, jos haluat Kerberos 5 autentikoinnin | # Muuta tähän “yes�?, jos haluat Kerberos 5 autentikoinnin | ||
SECURE_NFS=�?no�? | SECURE_NFS=�?no�? | ||
# NFS prosessien määrä | # NFS prosessien määrä | ||
RPCNFSDCOUNT=8 | RPCNFSDCOUNT=8 | ||
Luo jaettavat kansiot: | Luo jaettavat kansiot: | ||
mkdir /home/jako1<br> | [[mkdir]] /home/jako1<br> | ||
mkdir /home/jako2<br> | mkdir /home/jako2<br> | ||
Luo jako1 ja jako2 kansioon tekstitiedostot testaamista varten ja kirjoita niihin jotain sisältöä. | Luo jako1 ja jako2 kansioon tekstitiedostot testaamista varten ja kirjoita niihin jotain sisältöä. | ||
touch /home/jako1/testi1.txt<br> | touch /home/jako1/testi1.txt<br> | ||
touch /home/jako2/testi2.txt<br> | touch /home/jako2/testi2.txt<br> | ||
Käynnistä tarvittavat palvelut (portmap, rpcidmapd, nfslock ja nfs) | Käynnistä tarvittavat palvelut (portmap, rpcidmapd, nfslock ja nfs) | ||
service portmap start | service portmap start | ||
service rpcidmapd start | service rpcidmapd start | ||
service nfslock start | service nfslock start | ||
service nfs start | service nfs start | ||
Voit tarkistaa nfs:ään liittyvät palvelut komennolla: | Voit tarkistaa nfs:ään liittyvät palvelut komennolla: | ||
rpcinfo -p | rpcinfo -p | ||
sekä niihin liittyviä portteja komennolla: | sekä niihin liittyviä portteja komennolla: | ||
netstat -tupa | netstat -tupa | ||
Asiakkaan puoli: | ==Asiakkaan puoli:== | ||
Suojaa portmapper: | Suojaa portmapper: | ||
portmap : 127. : ALLOW | portmap : 127. : ALLOW | ||
portmap : ALL : DENY | portmap : ALL : DENY | ||
Luo liitospaikat: | |||
[[mkdir]] -m 755 /mnt/nfsjako1 | |||
mkdir -m 755 /mnt/nfsjako2 | |||
Käynnistä tarvittavat palvelut: | |||
service portmap start | |||
service rpcidmapd start | |||
==Vain luku -liitos== | |||
===Palvelimessa=== | |||
muokkaa /etc/exports tiedostoa: | |||
/home/jako1 vastaanottavan.koneen.ip.osoite(ro,fsid=0,insecure,no_subtree_check,sync,anonuid=65534,anongig=65534) | |||
Otetaan muutokset käyttöön: | |||
exportfs -rv | |||
Voit nähdä jaon parametrit komennolla: | |||
exportfs - | exportfs -v | ||
Jaetut hakemistot näet myös komennolla: | |||
showmount -e | |||
===Asiakkaassa=== | |||
Liittäminen tapahtuu mount komennolla (irroittaminen umount). Mount-komento sisältää useita tarkenteita, katso lisää man mount komennolla. | |||
o | |||
options ro(read-only) | |||
intr | |||
Mahdollistaa nfs-kutsun peruuttamisen kun palvelin ei vastaa | |||
Liitä /home/jako1 oman koneesi /mnt/nfsjako1 hakemistoon komennolla: | |||
[[mount]] -t nfs4 -o ro,intr serverin_ip:/ /mnt/nfsjako1 | |||
Siirry liittämääsi hakemistoon: | |||
cd /mnt/nfsjako1 | |||
Tarkista sisältö: | |||
ls | |||
Yritä kirjoittaa hakemistoon: | |||
touch jeejee.txt (aiheuttaa virheen koska vain luku oikeudet) | |||
cd (poistu /mnt/nfsjako1 hakemistosta, jotta voit irrottaa liitoksen) | |||
[[umount]] /mnt/nfsjako1 | |||
==Kirjoitusoikeudet sisältävä liitos== | |||
Kirjoitusoikeudet sisältävä liitos | |||
Palvelimessa | ===Palvelimessa=== | ||
Muutetaan ensimmäiseksi jaettavan hakeiston oikeuksia komennolla: | Muutetaan ensimmäiseksi jaettavan hakeiston oikeuksia komennolla: | ||
chmod 1777 /home/nfsjako2 | chmod 1777 /home/nfsjako2 | ||
Eli asetetaan kaikille kaikki oikeudet ja sen lisäksi sticky bit. Hakemistoon asetettu sticky bit tarkoittaa että vain tiedoston omistaja voi poistaa tiedoston kyseisestä hakemistosta. | Eli asetetaan kaikille kaikki oikeudet ja sen lisäksi sticky bit. Hakemistoon asetettu sticky bit tarkoittaa että vain tiedoston omistaja voi poistaa tiedoston kyseisestä hakemistosta. | ||
Lisää /etc/exports tiedostoon rivi (ja kommentoi aiempi): | Lisää /etc/exports tiedostoon rivi (ja kommentoi aiempi): | ||
/home/jako2 vastaanottavan.koneen.ip.osoite(rw,fsid=0,insecure,no_subtree_check,sync,anonuid=65534,anongig=65534) | /home/jako2 vastaanottavan.koneen.ip.osoite(rw,fsid=0,insecure,no_subtree_check,sync,anonuid=65534,anongig=65534) | ||
Otetaan muutokset käyttöön: | Otetaan muutokset käyttöön: | ||
exportfs -rv | exportfs -rv | ||
Asiakkaassa | ===Asiakkaassa=== | ||
mount -t nfs4 -o rw,intr serverin_ip:/ /mnt/nfsjako2 | mount -t nfs4 -o rw,intr serverin_ip:/ /mnt/nfsjako2> | ||
Siirry liittämääsi hakemistoon: | Siirry liittämääsi hakemistoon: | ||
cd /mnt/nfsjako2 | cd /mnt/nfsjako2 | ||
Yritä kirjoittaa hakemistoon: | Yritä kirjoittaa hakemistoon: | ||
touch jeejee.txt<br> | touch jeejee.txt<br> | ||
Kirjoittaminen siis onnistuu asiakaskoneesta roottina ja tavallisena käyttäjänä, mutta poistaminen ja vain roottina tehtyjen tiedostojen (asiakaskoneen root ei ole palvelinkoneen root!) onnistuu vain rootilta. | Kirjoittaminen siis onnistuu asiakaskoneesta roottina ja tavallisena käyttäjänä, mutta poistaminen ja vain roottina tehtyjen tiedostojen (asiakaskoneen root ei ole palvelinkoneen root!) onnistuu vain rootilta. | ||
Asiakas- ja palvelinkoneessa tulee siis olla saman nimen ja uid:n omaavat käyttäjät, jotta kyseinen menettely olisi sujuvaa (NIS tai LDAP ollessa käytössä asia onkin jo kunnossa). Voit luoda käyttäjän sekä palvelimeen että asiakaskoneeseen komennolla:<br> | Asiakas- ja palvelinkoneessa tulee siis olla saman nimen ja uid:n omaavat käyttäjät, jotta kyseinen menettely olisi sujuvaa (NIS tai LDAP ollessa käytössä asia onkin jo kunnossa). Voit luoda käyttäjän sekä palvelimeen että asiakaskoneeseen komennolla:<br> | ||
useradd -u uidnro username | useradd -u uidnro username | ||
Luo sekä palvelimeen nfsuser1 niminen käyttäjä uid:llä 600:<br> | Luo sekä palvelimeen nfsuser1 niminen käyttäjä uid:llä 600:<br> | ||
useradd -u 600 nfsuser1<br> | useradd -u 600 nfsuser1<br> | ||
passwd nfsuser1<br> | passwd nfsuser1<br> | ||
Tämän lisäksi molempien koneiden tulee kuulua samaan domainiin. Muuta /etc/idmapd.conf tiedostoon toimialueeksi sama kuin tulevaan asiakkaaseen. | Tämän lisäksi molempien koneiden tulee kuulua samaan domainiin. Muuta /etc/idmapd.conf tiedostoon toimialueeksi sama kuin tulevaan asiakkaaseen. | ||
Domain = sukunimesi.jee | Domain = sukunimesi.jee | ||
Käynnistä rpcidmapd uudestaan | Käynnistä rpcidmapd uudestaan | ||
service rpcidmapd restart | service rpcidmapd restart | ||
Siirry nfsuser1 käyttäjäksi asiakaskoneessa komennolla: | Siirry nfsuser1 käyttäjäksi asiakaskoneessa komennolla: | ||
su nfsuser1 | su nfsuser1 | ||
Luo tiedosto /mnt/nfsjako2 hakemistoon ja poista se: | Luo tiedosto /mnt/nfsjako2 hakemistoon ja poista se: | ||
touch /mnt/nfsjako2/poistettava.txt | touch /mnt/nfsjako2/poistettava.txt | ||
rm /mnt/nfsjako2/poistettava.txt | rm /mnt/nfsjako2/poistettava.txt | ||
cd (poistu /mnt/nfsjako2 hakemistosta, jotta voit irrottaa liitoksen) | cd (poistu /mnt/nfsjako2 hakemistosta, jotta voit irrottaa liitoksen) | ||
umount /mnt/nfsjako2 | umount /mnt/nfsjako2 | ||
Automaattinen liitos | ==Automaattinen liitos== | ||
Lisää asiakaskoneen /etc/fstab tiedostoon rivi: | Lisää asiakaskoneen /etc/fstab tiedostoon rivi: | ||
serverin_ip:/ /mnt/nfsjako2 nfs4 rw,hard,intr,proto=tcp,port=2049,auto 0 0 | serverin_ip:/ /mnt/nfsjako2 nfs4 rw,hard,intr,proto=tcp,port=2049,auto 0 0 | ||
Liitä asiakaskoneessa niinkuin fstab tiedostossa esitetty komennolla: | Liitä asiakaskoneessa niinkuin fstab tiedostossa esitetty komennolla: | ||
mount -v /mnt/nfsjako2 | mount -v /mnt/nfsjako2 | ||
Irroita liitos: | Irroita liitos: | ||
umount -v /mnt/nfsjako2 | umount -v /mnt/nfsjako2 | ||
Useamman yhtäaikaisen nfsv4-jaon ja liitoksen tekeminen | ==Useamman yhtäaikaisen nfsv4-jaon ja liitoksen tekeminen== | ||
Palvelimen jakamat jaot näkyvät yhtenä isona tiedostojärjestelmänä, mutta voit jakaa ja liittää useita hakemistoja mount --bind komennon avulla. | Palvelimen jakamat jaot näkyvät yhtenä isona tiedostojärjestelmänä, mutta voit jakaa ja liittää useita hakemistoja mount --bind komennon avulla. | ||
Palvelimessa | ===Palvelimessa=== | ||
Luo hakemisto /home/jako ja siirrä aiemmin tehdyt jako1 ja jako2 sen alle. | Luo hakemisto /home/jako ja siirrä aiemmin tehdyt jako1 ja jako2 sen alle. | ||
Muuta /home/jako/ hakemiston oikeudet | Muuta /home/jako/ -hakemiston oikeudet | ||
chmod 1777 /home/jako<br> | chmod 1777 /home/jako<br> | ||
Anna komennot: | Anna komennot: | ||
mount --bind /jako1 /home/jako/jako1 | mount --bind /jako1 /home/jako/jako1 | ||
mount --bind /jako2 /home/jako/jako2 | mount --bind /jako2 /home/jako/jako2 | ||
Muuta /etc/exports tiedosto muotoon (huomaa nohide vs fsid=0): | Muuta /etc/exports tiedosto muotoon (huomaa nohide vs fsid=0): | ||
/home/jako vastaanottavan.koneen.ip.osoite(rw,fsid=0,insecure,no_subtree_check,sync,anonuid=65534,anongig=65534)<br> | /home/jako vastaanottavan.koneen.ip.osoite(rw,fsid=0,insecure,no_subtree_check,sync,anonuid=65534,anongig=65534)<br> | ||
/home/jako/jako1 vastaanottavan.koneen.ip.osoite(ro,nohide,insecure,no_subtree_check,sync,anonuid=65534,anongig=65534)<br> | /home/jako/jako1 vastaanottavan.koneen.ip.osoite(ro,nohide,insecure,no_subtree_check,sync,anonuid=65534,anongig=65534)<br> | ||
/home/jako/jako2 vastaanottavan.koneen.ip.osoite(rw,nohide,insecure,no_subtree_check,sync,anonuid=65534,anongig=65534)<br><br> | /home/jako/jako2 vastaanottavan.koneen.ip.osoite(rw,nohide,insecure,no_subtree_check,sync,anonuid=65534,anongig=65534)<br><br> | ||
Asiakaskoneessa | ===Asiakaskoneessa=== | ||
Muuta /etc/fstab rivit muotoon: | Muuta /etc/fstab rivit muotoon: | ||
serverin_ip:/jako1 /mnt/nfsjako1 nfs4 rw,hard,intr,proto=tcp,port=2049,auto 0 0 | serverin_ip:/jako1 /mnt/nfsjako1 nfs4 rw,hard,intr,proto=tcp,port=2049,auto 0 0 | ||
serverin_ip:/jako2 /mnt/nfsjako2 nfs4 rw,hard,intr,proto=tcp,port=2049,auto 0 0 | serverin_ip:/jako2 /mnt/nfsjako2 nfs4 rw,hard,intr,proto=tcp,port=2049,auto 0 0 | ||
Liitä nfs-jaot: | Liitä nfs-jaot: | ||
mount -v /mnt/nfsjako | mount -v /mnt/nfsjako | ||
mount -v /mnt/nfsjako2 | mount -v /mnt/nfsjako2 | ||
Laita palvelut käynnistymään automaattisesti: | Laita palvelut käynnistymään automaattisesti: | ||
chkconfig --level 0123456 portmap off | chkconfig --level 0123456 portmap off | ||
chkconfig --level 345 portmap on | chkconfig --level 345 portmap on | ||
chkconfig --level 0123456 rpcidmapd off | chkconfig --level 0123456 rpcidmapd off | ||
chkconfig --level 345 rpcidmapd on | chkconfig --level 345 rpcidmapd on | ||
chkconfig --level 0123456 nfslock off | chkconfig --level 0123456 nfslock off | ||
chkconfig --level 345 nfslock on | chkconfig --level 345 nfslock on | ||
chkconfig --level 0123456 nfs off | chkconfig --level 0123456 nfs off | ||
chkconfig --level 345 nfs on | chkconfig --level 345 nfs on | ||
[[Luokka:Opetusmateriaalit]] | [[Luokka:Opetusmateriaalit]] |