La condivisione automatica di nfs fallisce con err = 2, RPC: Timeout

1

Voglio montare automaticamente una condivisione nfs ogni volta che un utente accede al nostro Mac Minis. La mia idea originale era quella di utilizzare la condivisione remota come spazio per le home directory dell'utente, ma non essendo in grado di montare la condivisione, sto solo provando a farlo montare su una directory non correlata tramite autofs.

Il mio /etc/auto_master assomiglia a questo:

+auto_master
/net              -hosts -nobrowse,hidefromfinder,nosuid
/home             auto_home -nobrowse,hidefromfinder
/Network/Servers  -fstab
/-                -static
/-                auto_nfs -nobrowse,nosuid

Il mio /etc/auto_nfs :

/home_tmp -fstype=nfs,vers=3,rw,resvport,tcp,soft,intr,rsize=8192,wsize=8192,noatime,timeo=900,retrans=3 192.168.0.2:/home_tmp 

Il computer remoto è in esecuzione 4.9.11-1-ARCH x86_64 GNU / Linux ed è /etc/exports simile a

/home_tmp -nohide,sync,rw 192.168.0.0/26

e la condivisione è visibile anche dal client:

$ showmount -e 192.168.0.2
Exports list on 192.168.0.2:
/home_tmp                           192.168.0.0/26

La macchina che tenta di montare la condivisione nfs si trova nella sottorete 192.168.0.0/26.

Quando eseguo un sudo mount -t nfs -o resvport,rw 192.168.0.2:/home_tmp /home_tmp , posso passare a /home_tmp e vederne il contenuto. Ma quando provo a cambiare in questa directory con automount, ottengo:

$ cd /home_tmp
-bash: cd: /home_tmp: No such file or directory

Il registro di sistema mostra:

automountd: MOUNT  REQUEST: name=/home_tmp [] map=auto_nfs opts=nobrowse,nosuid path=/home_tmp direct=1
automountd:   PUSH /etc/auto_nfs
automountd:   POP /etc/auto_nfs
automountd:   mapline:  -fstype=nfs,vers=3,rw,resvport,tcp,soft,intr,rsize=8192,wsize=8192,noatime,timeo=900,retrans=3 192.168.0.2:/home_tmp
automountd:   do_mount1:
automountd:   (nfs,nfs)   /home_tmp -vers=3,rw,resvport,tcp,soft,intr,rsize=8192,wsize=8192,noatime,timeo=900,retrans=3
automountd:               192.168.0.2:/home_tmp      penalty=0
automountd:   nfsmount: input:
automountd:       192.168.0.2[other]
automountd:       nfsmount: mount on /home_tmp vers=3,rw,resvport,tcp,soft,intr,rsize=8192,wsize=8192,noatime,timeo=900,retrans=3:
automountd:         192.168.0.2:/home_tmp
automountd:       ping: 192.168.0.2 request vers=3 min=3
automountd: pingnfs: 192.168.0.2: RPC: Timed out
automountd:       pingnfs FAIL: can't get nfs version
automountd: NFS server 192.168.0.2 not responding
automountd:       Couldn't mount 192.168.0.2:/home_tmp, err=2
automountd: MOUNT  REPLY  : status=2, AUTOFS_DONE
automountd: mount of /home_tmp failed: No such file or directory
automountd: MOUNT  REQUEST: name=/home_tmp [] map=auto_nfs opts=nobrowse,nosuid path=/home_tmp direct=1
automountd:   PUSH /etc/auto_nfs
automountd:   POP /etc/auto_nfs
automountd:   mapline:  -fstype=nfs,vers=3,rw,resvport,tcp,soft,intr,rsize=8192,wsize=8192,noatime,timeo=900,retrans=3 192.168.0.2:/home_tmp
automountd:   do_mount1:
automountd:   (nfs,nfs)   /home_tmp -vers=3,rw,resvport,tcp,soft,intr,rsize=8192,wsize=8192,noatime,timeo=900,retrans=3
automountd:               192.168.0.2:/home_tmp      penalty=0
automountd:   nfsmount: input:
automountd:       192.168.0.2[other]
automountd:       nfsmount: mount on /home_tmp vers=3,rw,resvport,tcp,soft,intr,rsize=8192,wsize=8192,noatime,timeo=900,retrans=3:
automountd:         192.168.0.2:/home_tmp
automountd:       Couldn't mount 192.168.0.2:/home_tmp, err=2
automountd: MOUNT  REPLY  : status=2, AUTOFS_DONE
automountd: automountd exited

Ho letto da qualche parte che questo errore RPC: Timed out può essere causato dall'avvio del server nfs prima di qualche altro servizio, quindi ho riavviato il server nfs, ma senza alcun effetto. Qualche consiglio benvenuto per risolvere questo ...

    
posta PVitt 09.03.2017 - 14:47
fonte

2 risposte

0

Risulta che si tratta di un semplice problema del firewall. La risposta di Fravadona mi ha indirizzato nella giusta direzione. Il reparto IT non sapeva quale porta aprire (111 era già aperta) e non aveva il tempo di approfondire al momento, quindi aprivano ampiamente le porte. Mi hanno detto che cambieranno i firewall nel prossimo futuro e avranno un aspetto dettagliato quando saranno finiti. Spero di ricordare di aggiornare il post qui.

    
risposta data 13.03.2017 - 13:38
fonte
0

La tua distribuzione Arch Linux probabilmente contiene un server NFSv4. Il server NFSv4 richiede una directory di base (ad es. / Srv / nfs4).

Ogni condivisione aggiuntiva deve essere una sottodirectory (ad es. / srv / nfs4 / home_tmp). Quindi sposta il lato server / home_tmp nella directory di base.

Il file / etc / exports ha un aspetto simile a questo:

/srv/nfsv4 192.168.0.0/26(rw,fsid=0,insecure,no_subtree_check,async)
/srv/nfsv4/home_tmp 192.168.0.0/26(rw,nohide,insecure,no_subtree_check,async)

(testato solo con async ma dovrebbe funzionare anche con sync )

Ricarica il file con exportfs -arv sul server.

Anche il tuo file client / etc / auto_nfs deve essere modificato:

/home_tmp -fstype=nfs,vers=3,rw,resvport,tcp,soft,intr,rsize=8192,wsize=8192,noatime,timeo=900,retrans=3 192.168.0.2:/srv/nfsv4/home_tmp

Infine inserisci sudo automount -vc nella shell del client per "aggiornare" la condivisione montata.

Per configurare le home directory in rete per gli utenti di OS X è necessaria l'integrazione della directory o almeno la raccomandazione (ad esempio LDAP o AD). Per i server Linux ho trovato un vecchio how-to: Automount OS X Home Directory che utilizzano OpenLDAP e Linux . Non so se l'approccio funziona ancora bene con le nuove versioni di macOS. Un how-to aggiornato richiederebbe una nuova domanda qui o al errore del server .

    
risposta data 10.03.2017 - 22:33
fonte

Leggi altre domande sui tag