Newsgroup: it.comp.os.linux.iniziare
Titolo: problemi con NFS

Ciao a tutti.
Ho due macchine SUSE SLES7 (nel post userò i nomi fittizi "nfsserver"
e "nfsclient"). Banalmente, vorrei che nfsserver esportasse una
directory via NFS e che nfssclient la montasse.
Ho configurato il server NFS su nfsserver usando YAST2. Ho visto che
ha creato il seguente file /etc/exports:
/opt/oracle/ \
 *(ro)
Da nfsclient provo a montare la directory usando sempre YAST2 ma mi
dice semplicemente "I was unable to mount the NFS entries in
/etc/fstab". Usando mount da riga di comando il messaggio è il
seguente:
nfsclient:~ # mount /mnt/nfsserver/opt/oracle
mount: RPC: Unable to receive; errno = Connection refused
Sembra che ci sia un problema di comunicazione tra nfsclient e
nfsserver. Quale può essere? Qui di seguito riporto il file /etc/fstab
di nfsclient, limitatamente alla riga interessata:
nfsserver.miodominio.it:/opt/oracle       /mnt/nfsserver/opt/oracle  
nfs     defaults 0 0
Grazie in anticipo e buon lavoro/studio a tutti.
- Cristian

mount: RPC: Unable to receive; errno = Connection refused
E' il portmapper che non accetta connessioni. Il servizio portmap deve 
essere attivo su entrambe le macchine. Ricorda che gli ultimi portmapper 
sono cmpilati con il supporto libwrap e quindi usano /etc/hosts.allow e 
/etc/hosts.deny per permettere o meno l'accesso alle rpc. Controlla quei 
file o almeno fai in modo che /etc/hosts.allow sul client contenga:
portmap: inirizzo.del.server
e viceversa. Anche un firewall che chiuda la porta 111 sarebbe impedirebbe 
il funzionamente di nfs.
-- 
Enrico Bodo  -   PostDoc Fellow      
University of Rome "La Sapienza" 
Department of Chemistry         

 il funzionamente di nfs.
Ciao, grazie della risposta.
Ho provato a modificare i file /etc/hosts.allow su entrambe le
macchine e a fare  ripartire portmap ma mi da lo stesso errore.
Non c'è un firewall tra le due macchine e se faccio un telnet a manina
sulla porta 111 la connessione viene aperta.
Che cosa può essere?
Ciao, Cristian

Che cosa può essere?
Allora ricomincia da capo senza yast cosi' al limite io capisco dove sta
l'inghippo. Uccidi il server nfs sul server. Edita /etc/exports sul server a
mano e scrivici dentro:
/opt/oracle/   indirizzo.del.client (ro)
Poi fai ripartire il server nfs sul server. Dal client adesso scrivi:
# mkdir /mnt/oracle
# mount -t nfs indirizzo.del.server:/opt/oracle /mnt/oracle
Se in /etc/hosts.allow hai messo quello che ti dicevo, *deve* funzionare.


Nel fausto dì di 15 Feb 2002 09:16:13 GMT, il prode _Bodo_
presente alla corte di _it.comp.os.linux.iniziare_
così ebbe l'ardire di pronunziarsi:
| 
| Allora ricomincia da capo senza yast cosi' al limite io capisco dove sta
| l'inghippo. Uccidi il server nfs sul server. Edita /etc/exports sul server a
| mano e scrivici dentro:
| 
  Oh, può anche essere che il portmap è sí autorizzato nel file
/etc/hosts.allow, ma che non sia lanciato!
Prova a dare a mano il comando rpc.portmap (o solamente portmap) e rifai il
mount.
  Sandro
 
-- 
In a world without walls and fences
You would not need windows and gates.
(Confucius)

 mount.
Mi vergogno come un ladro, ma ho fatto esattamente quello che ha detto
Bodo, ho fermato e fatto ripartire NFS e anche portmap su entrambe le
macchine ma mi dà sempre lo stesso errore!
Cos'altro può essere?
- Cris


Allora se sei sul client lancia il comando:
# rpcinfo -p indirizzo.del.server
dovrebbe uscire una cosa del tipo:
   program vers proto   port
    100000    2   tcp    111  portmapper
    100000    2   udp    111  portmapper
Se e' cosi' anche al contrario allora i portmapper si vedono senza problemi 
e mi concentrerei sulla riga di mount che la prima volta avevi scritto in 
modo sbagliato. 


 # rpcinfo -p indirizzo.del.server
nfsclient:~ # rpcinfo -p 
nfsserver.miodominio.it
No remote programs registered.
Eppure:
nfsserver:~ # ps -aux | grep nfs
root      6562  0.0  0.0     0    0 ?        SW   Feb15   0:00 [nfsd]
root      6566  0.0  0.0     0    0 ?        SW   Feb15   0:00 [nfsd]
root      6568  0.0  0.0     0    0 ?        SW   Feb15   0:00 [nfsd]
root      6569  0.0  0.0     0    0 ?        SW   Feb15   0:00 [nfsd]
root      9487  0.0  0.0  1500  560 pts/0    S    09:01   0:00 grep nfs
nfsserver:~ # ps -aux | grep portm
bin       6515  0.0  0.0  1316  544 ?        S    Feb15   0:00 /sbin/portmap
root      9491  0.0  0.0  1500  560 pts/0    S    09:01   0:00 grep portm
Che significa?
Ciao e grazie per l'aiuto, 
- Cris


Che c'e' un /etc/hosts.deny che impedisce l'accesso al portmap del server. 
Oppure un firewall blocca la 111. Svuota /etc/hosts.deny e riprova, poi dopo 
lo riempi nella maniera corretta.


 lo riempi nella maniera corretta.
Su entrambe le macchine la configurazione di tcp wrapper č:
/etc/hosts.deny
---------------
ALL: ALL: deny
/etc/hosts.allow
----------------
portmap: 
l-altra-macchina.miodominio.it
: allow
Non c'č nessun firewall tra le due macchine e - non so se conta - ma
se faccio un telnet sulla porta 111 dal client al server la
connessione viene accettata.
Ciao, Cristian

connessione viene accettata.
Non conta in questo caso.


Nel fausto dě di 19 Feb 2002 00:06:35 -0800, il prode _Cristian Veronesi_
presente alla corte di _it.comp.os.linux.iniziare_
cosě ebbe l'ardire di pronunziarsi:
| 
| Su entrambe le macchine la configurazione di tcp wrapper č:
| 
| /etc/hosts.deny
| ---------------
| ALL: ALL: deny
|
  Prova a mettere:
ALL: ALL
 
| /etc/hosts.allow
| ----------------
| portmap: 
l-altra-macchina.miodominio.it
: allow
|
  Prova solamente con:
portmap: 
l-altra-macchina.miodominio.it


portmap: 
l-altra-macchina.miodominio.it
: allow
Hey, ricordo male, o per wrappare il portmapper NON e' consentito l'uso
dei nomi, ma solo degli indirizzi IP?
Riprova mettendoci l'indirizzo, al posto del nome.
-- 
           |Save our planet!
  Ciao     |Save wildlife;
  roberto  |For your E-MAIL use only recycled Bytes !!
           |roberto poggi  
rpo...@softhome.net

 le digerisce bene.... pero' mi sembra una mezza ca$$ata.
A me sembra una ca$$ata tutta intera, e grossa anche, ma a quanto pare
la riga che gli fa casino è "ALL:ALL:deny" in /etc/hosts.deny.
Ho provato, riprovato e triprovato ma sembra che l'unico modo per
fargli digerire la cosa sia deny-are i singoli servizi e *non* usare
la wildcard ALL, in questo modo:
/etc/hosts.deny
---------------
in.ftpd: ALL: deny
in.telnetd: ALL: deny
portmap: ALL: deny
/etc/hosts.allow
----------------
in.ftpd: 
qualcuno.miodominio.it
: allow
in.telnetd: 
qualcunaltro.miodominio.it
: allow
portmap: 
1.2.3.4
: allow
(N.B. come giustamente ha fatto notare Roberto, per wrappare il
portmapper non è consentito l'uso dei nomi, ma solo degli indirizzi
IP).
La cosa mi piace poco, perchè rischio di scordarmi un servizio
aperto... qualcuno sa perchè diamine portmap non accetta la wildcard
ALL:ALL sui servizi?
Ho anche provato a seguire i consigli di Alessandro Selli ma non
cambia nulla.
Ciao e grazie a tutti per le risposte, Cristian