mount.nfs: accesso negato dal server durante il montaggio


12

Sul mio sistema Ubuntu, ho questa linea in / etc / fstab:

myserver:/home/me /mnt/me nfs rsize=8192,wsize=8192,timeo=14,intr

Quando io faccio

sudo mount -a

Ottengo:

mount.nfs: access denied by server while mounting myserver:/home/me

Come posso diagnosticare questo problema? Il server nfs è anche Ubuntu.

Dettagli aggiuntivi: Sono in grado di montare questa condivisione nfs da altri client Ubuntu sulla stessa rete senza problemi. Tuttavia, il client problematico è diverso in quanto è in esecuzione all'interno di VirtualBox su un sistema Windows. Posso eseguire il ping "myserver" bene dal client problematico.

EDIT: / etc / exports su "myserver":

/home/me *(rw,all_squash,async,no_subtree_check,anonuid=1000,anongid=1000)

/etc/hosts.allow e /etc/hosts.deny su "myserver" sono entrambi commenti. E tieni presente che posso connettermi bene da altri client sulla stessa rete.


hai provato ad accodare i file di registro sul server ubuntu nfs remoto? Verifica se si sta tentando di montare nfs dalla macchina virtuale nella finestra di Windows.
Patrick R,

quali file di registro esattamente?
JoelFan,

C'è qualcosa che appare in / var / log / messages?
Matt Simmons,

Risposte:


22

Trovato!

Uno dei registri aveva la linea:

refused mount request from 192.168.1.108 for /home/me (/home/me): illegal port 64112

Ho cercato su google e ho scoperto che, poiché la porta è oltre 1024, avevo bisogno di aggiungere l'opzione "insicuro" alla relativa linea in / etc / exports sul server. Una volta che l'ho fatto (ed eseguito exportfs -r), il mount -a sul client ha funzionato.


3
Mentre funziona, ora qualsiasi utente non root può fingere di essere una nuova istanza di NFS e avere accesso a tutti i tuoi file. Qualcuno sa se esiste un modo per far smettere al client nfs di usare questi numeri di porta elevati?
semi

Grazie mille per questo, mi ha salvato il culo. Era pronto a rinunciare dopo ORE di googling. Non l'ho visto nei registri perché cercavo "nfs", ma in realtà questo ha registrato il mio "mountd".
Cory J,

1
@Cory J, grazie per il tempo dedicato a farmi sapere che mi ha aiutato! Il tuo commento mi ha fatto dare un'altra occhiata a questa domanda e vedo che ha oltre 12.000 visualizzazioni! Quindi probabilmente ha aiutato altre persone, ma tu sei l'unico che ha detto "grazie"! :)
JoelFan il

10

Questa domanda è correlata a come è impostata la rete per la tua VM.

Per impostazione predefinita con VirtualBox, hai una rete NAT . Quale risultato nella traduzione del porto .

Questo passo per passo dà:

  1. Il client NFS sta usando una porta riservata (<1024 ... che può essere aperta solo da root -> protetto)
  2. Virtualbox esegue la conversione delle porte (NAT) -> la porta client è ora maggiore di 1024
  3. Il server NFS rifiuta la connessione per quella porta non sicura.

Come menzionato da @JoelFan, una soluzione sarebbe quella di impostare l' insecureopzione sul server. Questa è una soluzione rapida ma ... insicura;)

Ciò che ha risolto il caso per me (in modo sicuro) è stato il passaggio dalla rete NAT alla rete Bridge per questo vm. In questo modo, la mia VM ha il suo indirizzo IP e non viene eseguita la traduzione della porta.


2

Indovina cosa ... per me, l'origine dello stesso errore era una mancata corrispondenza della versione tra il mio client NFS e il server.

I log erano silenziosi come se non fosse successo nulla e solo nfswatch in esecuzione sul lato server mi ha aiutato a chiarire la situazione.

Il problema è stato risolto aggiungendo l'opzione mount nfsver sul lato client:

server:/path   /mount/point   nfs   nfsvers=3   0 0

Questo era anche il mio problema. Debian 6 (Squeeze) con il mountpacchetto v2.17.2-9 installato. La soluzione ha funzionato.
Alastair Irvine,

1

Hai verificato che la risoluzione dei nomi è corretta sul server per il client che sta tentando di connettersi (ed è elencato nel file delle esportazioni)?


vedere le mie modifiche nella domanda ... Sto permettendo a tutti
JoelFan,

0

controllare i file hosts.allowe hosts.denyse il client è stato inserito correttamente. quando ciò non aiuta, pubblica il tuo file di esportazione.


vedi le mie modifiche alla domanda
JoelFan,

0

Se questo aiuta altre persone, ho un Synology NAS e il punto NFS ha effettivamente aggiunto un altro elemento al percorso.

Stavo cercando di montare "xxx.xxx.xxx.xxx/folder" poiché questo è ciò che faccio in Windows. Ma per Ubuntu con NFS ho dovuto usare "xxx.xxx.xxx.xxx/volume1/folder".

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.