Ero sivun ”Fedora/NFSv4” versioiden välillä
Pb (keskustelu | muokkaukset) p (Luokka:Tiedostojärjestelmät) |
p (ihmeelliset merkit pois) |
||
Rivi 31: | Rivi 31: | ||
Lisää kys. tiedostoon rivit: | Lisää kys. tiedostoon rivit: | ||
# Muuta tähän | # Muuta tähän "yes", jos haluat Kerberos 5 autentikoinnin | ||
SECURE_NFS= | SECURE_NFS="no" | ||
# NFS prosessien määrä | # NFS prosessien määrä | ||
RPCNFSDCOUNT=8 | RPCNFSDCOUNT=8 |
Versio 20. maaliskuuta 2007 kello 18.10
Sivu sisältää päällekkäistä tietoa artikkelin NFS kanssa ja sivut tulisi yhdistää. Yhdistämisestä on keskusteltu artikkelien keskustelusivuilta.
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/exports - palvelimessa /etc/auto.master – asiakaskoneessa /etc/sysconfig/nfs - palvelimessa /etc/idmapd.conf – asiakkaassa ja palvelimessa /etc/gssapi_mech.conf - asiakkaassa ja palvelimessa /etc/init.d/portmap - asiakkaassa ja palvelimessa /etc/init.d/nfs - palvelimessa /etc/init.d/rpcidmapd - asiakkaassa ja palvelimessa
Oletuksena käytetään porttia 2049, joten avaa kyseinen portti palomuurista lisäämällä tiedostoon /etc/sysconfig/iptables rivi
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 2049 -j ACCEPT
Käynnistä palomuuri uudestaan muutosten jälkeen:
service iptables restart
Suojaa portmapper lisäämällä /etc/hosts.allow tiedostoon:
portmap : 127. : ALLOW portmap : ALL : DENY
Luo nfs-määrityksiä sisältävä tiedosto:
touch /etc/sysconfig/nfs
Lisää kys. tiedostoon rivit:
# Muuta tähän "yes", jos haluat Kerberos 5 autentikoinnin
SECURE_NFS="no"
# NFS prosessien määrä
RPCNFSDCOUNT=8
Luo jaettavat kansiot:
mkdir /home/jako1
mkdir /home/jako2
Luo jako1 ja jako2 kansioon tekstitiedostot testaamista varten ja kirjoita niihin jotain sisältöä.
touch /home/jako1/testi1.txt
touch /home/jako2/testi2.txt
Käynnistä tarvittavat palvelut (portmap, rpcidmapd, nfslock ja nfs)
service portmap start service rpcidmapd start service nfslock start service nfs start
Voit tarkistaa nfs:ään liittyvät palvelut komennolla:
rpcinfo -p
sekä niihin liittyviä portteja komennolla:
netstat -tupa
Asiakkaan puoli:
Suojaa portmapper:
portmap : 127. : ALLOW 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,anongid=65534)
Otetaan muutokset käyttöön:
exportfs -rv
Voit nähdä jaon parametrit komennolla:
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
Palvelimessa
Muutetaan ensimmäiseksi jaettavan hakeiston oikeuksia komennolla:
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.
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)
Otetaan muutokset käyttöön:
exportfs -rv
Asiakkaassa
mount -t nfs4 -o rw,intr serverin_ip:/ /mnt/nfsjako2>
Siirry liittämääsi hakemistoon:
cd /mnt/nfsjako2
Yritä kirjoittaa hakemistoon:
touch jeejee.txt
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:
useradd -u uidnro username
Luo sekä palvelimeen nfsuser1 niminen käyttäjä uid:llä 600:
useradd -u 600 nfsuser1
passwd nfsuser1
Tämän lisäksi molempien koneiden tulee kuulua samaan domainiin. Muuta /etc/idmapd.conf tiedostoon toimialueeksi sama kuin tulevaan asiakkaaseen. Domain = sukunimesi.jee
Käynnistä rpcidmapd uudestaan
service rpcidmapd restart
Siirry nfsuser1 käyttäjäksi asiakaskoneessa komennolla:
su nfsuser1
Luo tiedosto /mnt/nfsjako2 hakemistoon ja poista se:
touch /mnt/nfsjako2/poistettava.txt rm /mnt/nfsjako2/poistettava.txt
cd (poistu /mnt/nfsjako2 hakemistosta, jotta voit irrottaa liitoksen) umount /mnt/nfsjako2
Automaattinen liitos
Lisää asiakaskoneen /etc/fstab tiedostoon rivi:
serverin_ip:/ /mnt/nfsjako2 nfs4 rw,hard,intr,proto=tcp,port=2049,auto 0 0
Liitä asiakaskoneessa niinkuin fstab tiedostossa esitetty komennolla:
mount -v /mnt/nfsjako2
Irroita liitos:
umount -v /mnt/nfsjako2
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.
Palvelimessa
Luo hakemisto /home/jako ja siirrä aiemmin tehdyt jako1 ja jako2 sen alle.
Muuta /home/jako/ -hakemiston oikeudet
chmod 1777 /home/jako
Anna komennot:
mount --bind /jako1 /home/jako/jako1 mount --bind /jako2 /home/jako/jako2
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)
/home/jako/jako1 vastaanottavan.koneen.ip.osoite(ro,nohide,insecure,no_subtree_check,sync,anonuid=65534,anongig=65534)
/home/jako/jako2 vastaanottavan.koneen.ip.osoite(rw,nohide,insecure,no_subtree_check,sync,anonuid=65534,anongig=65534)
Asiakaskoneessa
Muuta /etc/fstab rivit muotoon:
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
Liitä nfs-jaot:
mount -v /mnt/nfsjako mount -v /mnt/nfsjako2
Laita palvelut käynnistymään automaattisesti:
chkconfig --level 0123456 portmap off chkconfig --level 345 portmap on chkconfig --level 0123456 rpcidmapd off chkconfig --level 345 rpcidmapd on chkconfig --level 0123456 nfslock off chkconfig --level 345 nfslock on chkconfig --level 0123456 nfs off chkconfig --level 345 nfs on