2012-05-29 16:50:55 +0000 2012-05-29 16:50:55 +0000
32
32

Errori di montaggio della condivisione CIFS

Sto cercando di montare una condivisione di rete da un Linksys NAS200 su Fedora 16.

Il programma che sto cercando di eseguire non accetta indirizzi di rete su cui salvare. L'ho eseguito senza specificare l'indirizzo IP del server e viene fuori un IP casuale. Ho specificato un IP e non riesce a trovare il dispositivo.

Ecco gli errori:

[root@HOME ~]# mount -t cifs -v //NAS_SERVER/public/ /mnt/ -o username=user,password=pass
mount.cifs kernel mount options: ip=184.106.31.190,unc=\NAS_SERVER\public,,ver=1,user=user,pass= ********
mount error(115): Operation now in progress
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
[root@HOME ~]# mount -t cifs -v //NAS_SERVER/public/ /mnt/ -o username=user,password=pass,ip=192.168.1.77
ip address 192.168.1.77 override specified
mount.cifs kernel mount options: ip=192.168.1.77,unc=\NAS_SERVER\public,,ver=1,user=user,pass= ********
Retrying with upper case share name
mount.cifs kernel mount options: ip=192.168.1.77,unc=\NAS_SERVER\PUBLIC,,ver=1,user=user,pass= ********
mount error(6): No such device or address
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

Ma funziona con smbclient:

[root@HOME ~]# smbclient -L 192.168.1.77
WARNING: The security=share option is deprecated
Enter user's password: 
Domain=[HOME] OS=[Unix] Server=[Samba 3.0.22]

Sharename Type Comment
--------- ---- -------
IPC$ IPC IPC Service (Network Storage)
DISK 1 Disk      
PUBLIC Disk      
ADMIN$ IPC IPC Service (Network Storage)
Domain=[HOME] OS=[Unix] Server=[Samba 3.0.22]

Server Comment
--------- -------
HOME Samba Server Version 3.6.5-85.fc16
NAS_SERVER Network Storage

Workgroup Master
--------- -------
HOME HOME

Perché non posso montare su questo server samba? Cosa significano questi errori?

Risposte (9)

35
35
35
2013-07-21 02:20:14 +0000

Risoluzione dei problemi di accesso a una cartella condivisa di Windows XP da Fedora:

Stai ricevendo l'errore:

mount error(115): Operation now in progress
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

1. Assicurati che Linux possa eseguire il ping dell'altro box.

Esegui questo comando sul box linux verso l'IP del box windows:

el@defiant /mnt $ ping 192.168.13.107
PING 192.168.13.107 (192.168.13.107) 56(84) bytes of data.
64 bytes from 192.168.13.107: icmp_req=1 ttl=128 time=0.366 ms
--- 192.168.13.107 ping statistics ---
44 packets transmitted, 44 received, 0% packet loss, time 42999ms
rtt min/avg/max/mdev = 0.178/0.227/0.366/0.038 ms

Se non riesci a raggiungere il box o la connettività va e viene, il mount potrebbe lamentarsi.

2. Assicuratevi che una cartella sia effettivamente condivisa su windows, seguite questi passi.

  1. Aprite il file browser a `C:## Risoluzione dei problemi di accesso a una cartella condivisa di Windows XP da Fedora:

Stai ricevendo l'errore:

mount error(115): Operation now in progress
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

1. Assicurati che Linux possa eseguire il ping dell'altro box.

Esegui questo comando sul box linux verso l'IP del box windows:

el@defiant /mnt $ ping 192.168.13.107
PING 192.168.13.107 (192.168.13.107) 56(84) bytes of data.
64 bytes from 192.168.13.107: icmp_req=1 ttl=128 time=0.366 ms
--- 192.168.13.107 ping statistics ---
44 packets transmitted, 44 received, 0% packet loss, time 42999ms
rtt min/avg/max/mdev = 0.178/0.227/0.366/0.038 ms

Se non riesci a raggiungere il box o la connettività va e viene, il mount potrebbe lamentarsi.

2. Assicuratevi che una cartella sia effettivamente condivisa su windows, seguite questi passi.

  1. Aprite il file browser a .
  2. Crea una nuova cartella chiamata public. Quindi ora hai C:\public
  3. Dentro quella cartella, crea un nuovo documento di testo chiamato “testing.txt”.
  4. Fai clic destro sulla cartella C:\public e vai su proprietà.
  5. Fai clic sulla scheda condivisione.
  6. Assicurati che: “Condividi questa cartella in rete” sia selezionato. Nota il nome della condivisione: ‘public’.
  7. Fai clic su ok. Una piccola mano dovrebbe apparire sotto la cartella, il che significa che è condivisa.

La cartella ‘public’ è ora condivisa e dovresti essere in grado di connetterti ad essa con Linux.

3. Su Linux, montare la condivisione con ‘mount’:

  1. Aprire una console e su a root.
  2. fate una directory mkdir /mnt/windows Questa sarà dove accederete ai file condivisi.

  3. eseguite il comando di montaggio che richiede una password:

  4. Il comando di cui sopra vi chiede una password, inserite la password corretta, una errata produrrà un errore. Se non siete sicuri della password, potete cambiare la password sul box di Windows in Pannello di controllo - ∇ Account utente.

  5. eseguire il comando cd /mnt/windows ed eseguire ls. Viene presentato il contenuto dell'unità:

  6. Vi siete collegati all'unità di Windows.

4. Collegatevi all'unità condivisa con konqueror o il file browser di linux:

  1. Aprite il vostro file browser, nel mio caso konqueror.
  2. Nella barra di localizzazione dei file, inserite smb://192.168.13.107/public e premete invio.
  3. Ti potrebbe essere presentata una casella di login con nome utente e password. Inserite il nome utente e la password del box di windows descritto all'inizio di questo post.
  4. Congratulazioni, sei connesso alla cartella condivisa.

TROUBLESHOOTING, se quanto sopra non funziona.

Step 1: Hai provato a riavviare entrambi i computer

Riavvia entrambi i tuoi computer. Dopo di che, assicuratevi che tutti gli aggiornamenti di Windows siano stati fatti. Assicuratevi che anche Linux abbia i suoi aggiornamenti software. Riavviate dopo gli aggiornamenti.

Step 2: Rivedi i tuoi firewall, ZoneAlarms, e altri software di sicurezza

Un pezzo di software progettato per proteggere il tuo computer da virus, malware o mali su internet potrebbe bloccare il tuo tentativo di condivisione file. Il firewall di Windows potrebbe essere in modalità paranoica. Anche se è improbabile che sia colpa di Windows Firewall, spegnilo temporaneamente per verificare che non sia il problema. (non lasciarlo spento).

Acquisite una lista di tutti i software di sicurezza che potrebbero essere impostati in modalità paranoica. Firewall di Windows, firewall di terze parti, ZoneAlarms, antivirus, Kaspersky, AVG, o qualsiasi altra cosa che affermi di proteggervi da virus/malware/male. Dovrete rivedere questi e disattivarli temporaneamente, o aprire una lista bianca attraverso di loro per il vostro indirizzo IP.

Step 3: Acquisire indizi dal software di sicurezza.

ZoneAlarm tiene un registro di tutti gli eventi e i tentativi di condivisione delle cartelle, vai su Overview->alerts and logs. E vedi una lista di tutti i tuoi tentativi falliti. Lo stesso è possibile per altri software. In questo caso, ti protegge da te stesso.

Step 4: Sospetta problemi nel router o nella rete locale stessa

Forse il router, i bridge wireless, gli hub muti, o altri dispositivi di rete hanno qualche direttiva shenanigan in esso bloccando il tuo tentativo di connessione alla cartella condivisa. Il router o il dispositivo stesso potrebbe bloccare una porta o avere qualcosa in modalità restrittiva. Qualcuno ci ha giocato intorno ultimamente? Prova a riportare il router alle impostazioni predefinite e riprova.

Step 5: Assicurati che la tua rete locale sia semplice e corretta.

Entrambi i tuoi computer sono collegati allo stesso router? Forse uno è collegato a un ponte wireless netgear di merda e l'altro a un router? Semplificate la rete facendo connettere tutti i computer a un router. Riavvia i router e internet, prova di nuovo.

Step 6: Ancora non funziona. Isolare l'unità difettosa.

È il momento di radunare i gatti e isolare l'unità difettosa. Provate che il box di Windows non sta condividendo il vostro file connettendosi alla condivisione con un altro computer. Prendi un portatile windows di un amico o un prodotto apple e connettilo alla tua rete e vedi se possono accedere alla condivisione. Se non ci riescono, il problema è il windows box, se ci riescono, il problema è il Linux box.

Step 7: Sospettare il firewall su Linux

Prendete nota di qualsiasi allarme di sicurezza speciale o software firewall speciale su Linux. Esegui system-config-firewall e assicurati che smb sia controllato. Controllate che Linux non stia impedendo il montaggio. Create una condivisione smb su un'altra macchina Linux, e provare a connettersi a quello.

Se niente di tutto ciò funziona. Usate l'opzione nucleare, reinstallate entrambi i sistemi operativi e ricominciate dall'inizio. Questa è un'operazione missilistica.

7
7
7
2013-04-12 03:20:37 +0000

Prova:

mount -t cifs -v //NAS_SERVER/public/ /mnt/ -o username=user,password=pass,sec=ntlm

La chiave è sec=ntlm

5
5
5
2016-08-18 17:44:47 +0000

Aggiungere altre possibili soluzioni a questo problema

Questo messaggio di errore non è molto descrittivo, ma significa che l'operazione è scaduta. Ci sono numerose possibili ragioni per questo, e durante la ricerca di questo problema, mi sono imbattuto in alcune soluzioni che non sono ancora state menzionate in questo thread.

1.) Rete ambigua

Non è spesso menzionato nelle varie soluzioni che potete trovare online per questo problema, ma il server a cui vi state connettendo deve essere sulla stessa subnet della vostra macchina locale. Questo problema è sorto per me perché avevo sia la connessione cablata che quella wireless abilitata, e determinare a quale subnet appartenesse il dispositivo era ambiguo, poiché le due connessioni non sono la stessa rete. Disattivare il Wifi ha risolto il problema all'istante. Mi sono imbattuto in questa soluzione leggendo Das Werkstatt:

[SOLUZIONE]

Nel mio caso, la condivisione DFS era su uno storage in una sottorete diversa. Ho aggiunto un alias di rete (eth0:1) con un IP in quella sottorete di storage e poi ha funzionato.

Mi sarei aspettato qualcosa come “nessuna rotta verso l'host” invece del criptico “errore (115): Operazione in corso”…

Beh, non si può avere tutto ;)

Fonte: http://www.das-werkstatt.com/forum/werkstatt/viewtopic.php?f=7&t=2074

2.) Newlines alla fine del file delle credenziali

I file delle credenziali sono utili se si hanno caratteri speciali come la virgola , nella password. Può essere referenziato nelle opzioni in questo modo:

mount -t cifs //remote /mnt/local -o credentials=/path/to/cifs.credo

Il file è formattato con dichiarazione di variabile in stile sh:

username=me
password=mypassword
domain=mydomain

Se state usando un file di credenziali, assicuratevi che non ci siano caratteri di newline alla fine, o andrà in timeout mentre cerca di analizzare il file delle credenziali:

...
domain=mydomain
<empty line>

3.) Cercare di montare una directory specifica piuttosto che il punto effettivo della condivisione

Se la directory specifica di cui avete bisogno è una sottodirectory della condivisione, non sarete in grado di montare direttamente quella cartella. Tentando di farlo si ottengono un paio di errori diversi, e questo è uno di quelli.

Invece, montate il punto di condivisione stesso, e poi aggiungete un collegamento simbolico alla sottodirectory di cui avete bisogno:

~> mkdir /mnt/local
~> sudo mount -t cifs //remote /mnt/local
~> ln -s /mnt/local/path/to/my-folder /mnt/my-folder

In questo modo, otterrete lo stesso risultato di montare la sottodirectory stessa senza doverci andare ogni volta.

4
4
4
2012-08-23 03:29:16 +0000

Non sono sicuro di quanto questo sia rilevante per il tuo caso, ma ho avuto un problema simile nel montare una condivisione CIFS sul mio telefono Android:

# mount -t cifs //192.168.0.2/media/ /mnt/cifs/media -o username=user,password=pass
mount: mounting //192.168.0.2/media/ on /mnt/cifs/media failed: No such device or address
#

Ho provato a rimuovere la barra finale e apparentemente ha fatto la differenza - ha montato:

# mount -t cifs //192.168.0.2/media /mnt/cifs/media -o username=user,password=pass
#
3
3
3
2015-12-28 03:59:45 +0000

Il problema nella mia situazione era che avevo degli spazi nel file delle credenziali /etc/smb-credentials

username = foobar
password = secret

Dopo averlo cambiato in:

username=foobar
password=secret

Ha funzionato.

3
3
3
2014-09-30 06:05:37 +0000

Spesso devo citare lo -o "username=joe,password=yadayada,domain=adomain" //share/share /mnt e si monta subito e la maggior parte degli esempi che ho guardato non mostrano quel bit (se è necessario su quei sistemi).
in realtà ho avuto quel problema sul mio tablet proprio ora (perché sono qui, volevo il nome UNC e non l'IP) e le virgolette l'hanno risolto.

1
1
1
2019-01-07 19:35:32 +0000

Ulteriore possibile soluzione

Se la cartella condivisa è di Windows 10 (probabilmente vale anche per 7 e XP), confermate che le impostazioni di condivisione della cartella di Windows siano configurate correttamente per il tipo di rete a cui siete connessi, cioè Public o Private.

Mi limiterò a riferire la mia esperienza e ad adattarla alla vostra situazione a seconda dei casi. Aprite la lista delle reti wifi e per quella a cui siete connessi, cliccate su Properties. Imposta su Public o Private come appropriato. (Nel mio caso, una rete Private era erroneamente etichettata Public.)

Una volta che la rete è classificata correttamente, fai clic con il tasto destro del mouse sulla tua cartella condivisa, seleziona Properties, seleziona la scheda Sharing, seleziona Network and Sharing Center link, e assicurati che Turn on file and printer sharing sia selezionato per Public o Private a seconda del tuo tipo di connessione wifi come classificato in precedenza.

Dopo aver fatto questo, sono stato in grado di connettere una macchina Debian a Windows 10 come previsto.

0
0
0
2018-05-12 15:55:39 +0000

Un altro problema può essere con il DNS. Ho ricevuto lo stesso errore “operazione in corso”. Però la navigazione con Dolphin funzionava bene. L'hostname che stavo usando con successo con Dolphin si risolve in 4 indirizzi IP, uno dei quali finisce in 0 (è un nome di sottodominio). Quando uso il nome per uno degli altri 3 indirizzi IP, il montaggio funziona. Immagino che Dolphin sia più intelligente nel cercare un host effettivo quando gli viene dato un nome di (sotto)dominio di quanto non lo sia Mount.

0
0
0
2019-07-26 20:19:59 +0000

Oggi ho visto un caso in cui qualcuno stava cercando di montare una condivisione usando CIFS, ma CIFS non era installato.

yum install cifs-utils