16.04 CIFS “L'host è inattivo” ma non lo sono


27

Ho il mio setup CIFS in fstab e stanno funzionando come dovrebbero all'avvio. Montano come dovrebbero e funzionano per un po '. Dal nulla sembra (potrebbe essere dopo aver sbloccato la macchina, ecc.) Ottengo l'errore "L'host è inattivo" nel tentativo di accedervi. Ne ho molti e sono tutti giù. Sono inoltre condivisi dallo stesso server. In questo momento controllo su un computer Windows e una macchina 14.04 obsoleta e sono attivi e funzionano come dovrebbero. Dopo aver fatto clic sulle condivisioni in nautilus e aver ricevuto errori ripetuti, ricominceranno a funzionare. Per accedere a una condivisione "inattiva" sono necessari circa 2-3 minuti facendo clic in modo casuale su diversi supporti e tornando al primo quando viene visualizzato automaticamente i dati nel punto di montaggio.

Non ho questo problema su macchine 14.04 che non sono state aggiornate da un po '. Tutte queste macchine sono perfettamente funzionanti e il CIFS non va mai "giù". Il 16.04 non sono stati un problema fino a poco tempo fa.

Mi sono assicurato di aggiornarmi a giorni alterni e ho ripulito le vecchie intestazioni di Linux (a posteriori avrei probabilmente dovuto ripristinare). Lo faccio perché sto implorando che appaia una soluzione, ma sono state settimane di combattimenti su supporti CIFS senza soluzione.


Sto avendo lo stesso esatto problema. Di recente è iniziato poche settimane fa. Qualche fortuna?
Ian H,

No, ancora affrontando lo stesso problema. Stai eseguendo gnome-shell per caso? Sto iniziando a chiedermi se questo è stato il punto di svolta perché ho un laptop che era ok fino a quando gnome-shell
DevinM,

No, utilizzo urxvt. Penso che questo sia un bug nella miccia.
Ian H,

Risposte:


14

Sto affrontando lo stesso problema. Sembra che abbia qualcosa a che fare con le ultime versioni del kernel e samba.

Sono riuscito a risolverlo aggiungendo vers = 2.0 ai comandi mount (o alla fine di ogni riga fstab)


3
Potresti forse provare a rendere questo più chiaro per gli altri? Mostra la linea dal tuo fstab o shell e spiega perché aiuta?
Zanna,

Ciao, ho applicato questa soluzione alternativa seguendo i passaggi indicati sul launchpad: bugs.launchpad.net/ubuntu/+source/cifs-utils/+bug/1687273
josepcoves

Sto testando questa correzione ora. Fin qui tutto bene. Se domani funzionerà ancora, lo accetterò come risposta. Grazie per le informazioni!
DevinM,

Non funziona per me: puoi pubblicare quello che hai fatto? Come si dice quale numero di versione utilizzare?
hippyjim,

4
Dato che questa è la risposta accettata, si dovrebbe forse menzionare che provare i valori validi per versprodurrebbe i migliori risultati, invece di raccomandare una particolare versione del protocollo (che non funzionerà su server obsoleti). Inizia con una versione con protocollo elevato e scendi uno alla volta. Se si finisce con vers=1.0il server remoto potrebbe essere necessario aggiornare (se possibile) o altrimenti protetto.
0xC0000022L

38

Dopo molti test l'aggiunta vers=1.0nella linea di montaggio sembra risolvere il problema. Il mount ora funziona su Ubuntu 17.10 come per anni su versioni precedenti di Ubuntu.


3
Dopo molti tentativi x 10 questa è l'unica soluzione che ha funzionato. vers=2.0non ha funzionato.
Olivier Pons,

Non conosco vers = 1.0 vs 2.0 o 3.0 e non trovo alcuna menzione nelle pagine man, ma questo ha funzionato per me.
Greg Chabala,

3
//192.168.1.222/volume_1 / media / nas cifs username = ****, password = ****, vers = 1.0
Steven

@GregChabala: forse prova ad mount.cifs(8)es. Con man 8 mount.cifs? Con la mount.cifsversione 6.8 (dal cifs-utilspacchetto) la pagina man contiene una menzione di vers=arg.
0xC0000022L

vers=1.0ha funzionato nel mio caso.
Sohel Pathan

7

Ho affrontato lo stesso problema da solo, volevo montare automaticamente usando il metodo trovato nel wiki di Ubuntu ( https://wiki.ubuntu.com/MountWindowsSharesPermanently ) anche se ho lo stesso problema di cui sopra:mount error(112): Host is down

La cosa è ciò che mi ha aiutato è l'aggiunta vers=3.0di opzioni e:

//servername/sharename /media/windowMBsshare cifs credentials=/home/ubuntuusername/.smbcredentials,iocharset=utf8,sec=ntlm,vers=3.0 0 0

Quindi sembra che funzioni ora solo se si ignora SMB1 e ne si usa uno specificato, SMB3 ha funzionato per me, quindi non ho provato nient'altro.

Ho usato un account locale sul computer Windows non uno con nome di dominio outlook.com poiché ho letto qualcosa che potrebbe causare conflitti.


sembra che un recente aggiornamento alla build di anteprima dell'insider di Windows 10 pro 16232.rs_prerelease.170624-1334 includesse una modifica che mi richiedeva di aggiungere vers=3.0per montare una condivisione che in precedenza funzionava senza di essa.
Dylan Oliver,

6

Altri hanno già accennato alla soluzione, ma potrebbe valere la pena di spiegare brevemente il motivo.

mount.cifs in Ubuntu 16.04 utilizza il protocollo SMB1 per impostazione predefinita.

Nelle versioni successive di mount.cifs, la versione SMB predefinita è 2.1 o 3.0.

Gli attuali server Windows non supportano più il protocollo SMB 1.0, a meno che non siano specificamente configurati nel loro registro per accettarlo. Pertanto, per impostazione predefinita, rifiutano le connessioni dai client utilizzando il protocollo SMB1. Il che porta al messaggio fuorviante "L'host è inattivo".

Ma alcuni sistemi meno recenti (il più delle volte NAS) non supportano i protocolli 2.1 o 3.

La soluzione è dire mount.cifsdi usare il protocollo giusto per connettersi al tuo server, usando l' vers=opzione. Ad esempio, per connettersi a un computer Windows 10:

mount -t cifs ... -o vers=3.0,...

o su un vecchio NAS da Ubuntu 18.04 o successivo:

mount -t cifs ... -o vers=1.0,...

Da man mount.cifs(in Ubuntu 16.04):

   vers=
       SMB protocol version. Allowed values are:

       ·   1.0 - The classic CIFS/SMBv1 protocol. This is the default.

       ·   2.0 - The SMBv2.002 protocol. This was initially introduced in
           Windows Vista Service Pack 1, and Windows Server 2008. Note
           that the initial release version of Windows Vista spoke a
           slightly different dialect (2.000) that is not supported.

       ·   2.1 - The SMBv2.1 protocol that was introduced in Microsoft
           Windows 7 and Windows Server 2008R2.

       ·   3.0 - The SMBv3.0 protocol that was introduced in Microsoft
           Windows 8 and Windows Server 2012.

       Note too that while this option governs the protocol version used,
       not all features of each version are available.

Se definisci il tuo mount in /etc/fstab, potrebbe assomigliare a questo:

//server/share  /mnt/share  cifs  defaults,vers=3.0,...your_other_options...,nofail,x-systemd.device-timeout=15 0 0

cifs vers = 1.0, credentials = / root / .smbcredentials, ha funzionato per me in 18.04 LTS. Includere "valori predefiniti" in fsatb ha generato un errore di analisi in modo che l'eliminazione del testo evitasse l'errore.
Graham

@Graham smb1 è estremamente obsoleto e pericoloso. È anche più lento. Prova ad arrivare almenovers=2.1
Joel Coehoorn il

@JoelCoehoorn ma vers = 1.0 ha funzionato mentre le versioni successive no ... Ho iniziato con 3 e ho cambiato il verso in basso fino a 1.0 ha funzionato. Da allora assolutamente nessun problema.
Graham,

@Graham Quindi devi correggere l'host a cui ti stai connettendo in modo che supporti smb2.1 o successivo. SMB1.0 è davvero male .
Joel Coehoorn,

@JoelCoehoorn Ho seguito i consigli contenuti in questo thread: serverfault.com/questions/414074/mount-cifs-host-is-down per risolvere il problema. Ho appena provato di nuovo vers = 3.0 e lo stesso errore persiste e l'unità non si monta. Cosa c'è di così terribile in vers = 1.0?
Graham,

0

Ho avuto lo stesso problema dopo un aggiornamento client di cifs-utils alla 6.7-2. E sostanzialmente la soluzione di josepcoves e user695658 ha funzionato per me. Ma solo il valore 1.0 per l'opzione mount 'vers' ha funzionato per me. Sembra che il valore predefinito per il parametro 'vers' non sia più 1.0.


Questo è un duplicato della risposta accettata.
Karel,
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.