CIFS comparten errores de montaje


31

Estoy tratando de montar un recurso compartido de red desde un Linksys NAS200 a Fedora 16.

El programa que intento ejecutar no aceptará direcciones de red para guardar. Lo ejecuté sin especificar la dirección IP del servidor y aparece una dirección IP aleatoria. Especifiqué una IP y no puede encontrar el dispositivo.

Aquí están los errores:

[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)

Pero funciona 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

¿Por qué no puedo montar en este servidor samba? ¿Qué significan estos errores?

Respuestas:


35

Solucione problemas de acceso a una carpeta compartida de Windows XP desde Fedora:

Estás recibiendo el error:

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

1. Asegúrese de que Linux pueda hacer ping al otro cuadro.

Ejecute este comando en el cuadro de Linux a la IP del cuadro de 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

Si no puede alcanzar la caja o la conectividad está entrando y saliendo, el soporte puede quejarse.

2. Asegúrese de que una carpeta se comparta realmente en Windows, siga estos pasos.

  1. Abra el navegador de archivos para C:\.
  2. Crea una nueva carpeta llamada public. Entonces ahora tienes C: \ public
  3. Dentro de esa carpeta, cree un nuevo documento de texto llamado "testing.txt".
  4. Haga clic derecho en la carpeta C:\publicy vaya a propiedades.
  5. Haz clic en la pestaña para compartir.
  6. Asegúrese de que la casilla "Compartir esta carpeta en la red" esté marcada. Tenga en cuenta el nombre compartido: 'público'.
  7. Haga clic en Aceptar. Debería aparecer una pequeña mano debajo de la carpeta, lo que significa que se comparte.

La carpeta 'public' ahora está compartida y debería poder conectarse a ella con Linux.

3. En Linux, monte el recurso compartido con 'mount':

  1. Abra una consola y surootear.
  2. crear un directorio mkdir /mnt/windows Aquí será donde accederá a los archivos compartidos.

  3. ejecute el comando de montaje que solicita una contraseña:

    [root@defiant mnt]# mount -t cifs //192.168.13.107/eric /mnt/windows -o username=eric
    Password for eric@//192.168.13.107/public:  **********
    [root@defiant mnt]# 
    
  4. El comando anterior le solicita una contraseña, ingrese la contraseña correcta, una incorrecta producirá un error. Si no está seguro de la contraseña, puede cambiarla en el cuadro de Windows en Panel de control -> Cuentas de usuario.

  5. ejecuta el comando cd /mnt/windows y ejecuta ls. Se presentan los contenidos de la unidad:

    [root@defiant windows]# ls
    testing.txt
    [root@defiant windows]#
    
  6. Te has conectado a la unidad de Windows.

4. Conéctese a la unidad compartida con el explorador de archivos konqueror o linux:

  1. Abra su buscador de archivos, en mi caso konqueror.
  2. En la barra de ubicación del archivo, ingrese smb://192.168.13.107/publicy presione enter.
  3. Es posible que se le presente un cuadro de inicio de sesión con nombre de usuario y contraseña. Ingrese el nombre de usuario y la contraseña del cuadro de Windows que se describe en la parte superior de esta publicación.
  4. Felicitaciones, estás conectado a la carpeta compartida.

SOLUCIÓN DE PROBLEMAS, si lo anterior no funciona.

Paso 1: ¿Has intentado reiniciar ambas computadoras?

Reinicia tus dos computadoras. Después de eso, asegúrese de que todas sus actualizaciones de Windows estén hechas. Asegúrese de que Linux tenga sus actualizaciones de software también atendidas. Reiniciar después de las actualizaciones.

Paso 2: revise sus firewalls, ZoneAlarms y otro software de seguridad

Un software diseñado para proteger su computadora de virus, malware o maldades en Internet podría estar bloqueando su intento de compartir archivos. El firewall de Windows podría estar en modo paranoico. Aunque es poco probable que Windows Firewall tenga la culpa, apáguelo temporalmente para verificar que no sea el problema. (No lo dejes).

Adquiera una lista de todo el software de seguridad que se puede configurar en modo paranoico. Cortafuegos de Windows, cortafuegos de terceros, alarmas de zona, antivirus, Kaspersky, AVG o cualquier otra cosa que pretenda protegerlo de virus / malware / maldad. Deberá revisarlos y desactivarlos temporalmente, o abrir una lista blanca a través de ellos para su dirección IP.

Paso 3: Adquiere pistas del software de seguridad.

ZoneAlarm mantiene un registro de todos los eventos e intentos de compartir carpetas, vaya a Descripción general> alertas y registros. Y vea una lista de todos sus intentos fallidos. Lo mismo es posible para otro software. En ese caso, te protege de ti.

Paso 4: sospeche problemas en el enrutador o en la red de área local

Tal vez el enrutador, los puentes inalámbricos, los hubs tontos u otro dispositivo de red tengan algún truco directivo al bloquear su intento de conexión de carpeta compartida. El enrutador o dispositivo en sí podría estar bloqueando un puerto o tiene algo en modo restrictivo. ¿Alguien ha estado jugando con esto últimamente? Intente volver a configurar el enrutador por defecto y vuelva a intentarlo.

Paso 5: Asegúrese de que su red de área local sea simple y correcta.

¿Ambas computadoras están conectadas al mismo enrutador? ¿Quizás uno está conectado a un puente inalámbrico de netgear y el otro a un enrutador? Simplifique la red haciendo que todas las computadoras se conecten a un enrutador. Reinicie los enrutadores e Internet, intente nuevamente.

Paso 6: todavía no funciona. Aislar la unidad defectuosa.

Es hora de criar gatos y aislar la unidad defectuosa. Demuestre que el cuadro de Windows no comparte su archivo al conectarse al recurso compartido con una computadora diferente. Obtenga una computadora portátil con Windows de amigos o un producto de Apple y conéctelo a su red y vea si pueden acceder al recurso compartido. Si no pueden, el cuadro de Windows tiene un problema, si pueden, el cuadro de Linux tiene el problema.

Paso 7: Sospeche el cortafuegos en Linux

Tome nota de cualquier alarma de seguridad especial o software de firewall especial en Linux. Ejecute system-config-firewally asegúrese de que smb esté marcado. Compruebe para asegurarse de que Linux no impide su montaje. Cree un recurso compartido de smb en otro cuadro de Linux e intente conectarse a eso.

Si nada de esto funciona. Use la opción nuclear, vuelva a instalar ambos sistemas operativos y comience de nuevo en la parte superior. Esta es la cirugía de cohetes.


1
Ese lo hizo por mí. El problema en mi caso fue causado por la configuración del firewall que permitía hacer ping pero no permitía conexiones SMB en el puerto TCP 445.
Paul Gear

Tenga en cuenta que es posible que tenga que usar sudo ping 192.168.13.107no soloping 192.168.13.107
Gabriel Staples el

@GabrielStaples ¿Por qué usarías sudo para esto?
bryn

No tengo idea, pero sé que no lo habría escrito a menos que lo intentara primero sin sudo, y no funcionó, y luego lo intenté con sudo, y funcionó. Estoy seguro de que también me pareció extraño que uno funcionara y el otro no.
Gabriel Staples

7

Tratar:

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

La clave es sec = ntlm


Eso no me dio ninguna alegría
Paul Gear

1
¿Qué sec=ntlmhacer?
Karl Richter

No tengo idea de qué sec=ntlmhace, pero esta es la única solución en esta página que funcionó para mí. Editar: aquí hay una respuesta en los foros de ubuntu que explica por qué esto funciona: ubuntuforums.org/…
Jonathan Landrum

5

Agregar más soluciones posibles a este problema

Este mensaje de error no es muy descriptivo, pero lo que significa es que la operación ha excedido el tiempo de espera. Existen numerosas razones posibles para esto, y mientras investigaba este problema, me encontré con algunas soluciones que aún no se han mencionado en este hilo.

1.) Red ambigua

No se menciona a menudo en las diversas soluciones que puede encontrar en línea para este problema, pero el servidor al que se está conectando debe estar en la misma subred que su máquina local. Este problema surgió para mí porque tenía habilitadas las conexiones cableadas e inalámbricas, y determinar qué subred pertenecía al dispositivo era ambiguo, ya que las dos conexiones no son la misma red. Desactivar Wifi solucionó el problema al instante. Me topé con esta solución mientras leía Das Werkstatt :

[SOLUCIÓN]

En mi caso, el recurso compartido DFS estaba en un almacenamiento en una subred diferente. Agregué un alias de red (eth0: 1) con una IP en esa subred de almacenamiento y luego funcionó.

Hubiera esperado algo así como "ninguna ruta al host" en lugar del "error críptico" (115): Operación ahora en progreso "...

Bueno, no puedo tenerlo todo;)

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

2.) Nuevas líneas al final del archivo de credenciales

Los archivos de credenciales son útiles si tiene caracteres especiales como la coma ,en su contraseña. Se puede hacer referencia en las opciones de esta manera:

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

El archivo está formateado con shuna declaración de variable de estilo:

username=me
password=mypassword
domain=mydomain

Si está utilizando un archivo de credenciales, asegúrese de que no haya caracteres de nueva línea al final, o se agotará el tiempo de espera al intentar analizar el archivo de credenciales:

...
domain=mydomain
<empty line>

3.) Intentar montar un directorio específico en lugar del punto compartido real

Si el directorio específico que necesita es un subdirectorio del recurso compartido, no podrá montar esa carpeta directamente. Intentar hacerlo da como resultado un par de errores diferentes, siendo este uno de ellos.

En su lugar, monte el punto compartido en sí y luego agregue un enlace simbólico al subdirectorio que necesita:

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

De esta manera, obtienes el mismo resultado que montar el subdirectorio en sí mismo sin tener que profundizar en él cada vez.


4

No estoy seguro de cuán relevante es esto para su caso, pero tuve un problema similar al montar un recurso compartido CIFS en mi teléfono 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
#

Intenté eliminar la barra inclinada final y aparentemente hizo la diferencia: se montó:

# mount -t cifs //192.168.0.2/media /mnt/cifs/media -o username=user,password=pass
#

1
Sí, los recursos compartidos no son exactamente directorios, incluso si a los entornos de escritorio les gusta fingir que lo son.
Eroen

3

El problema en mi situación era que tenía espacios en el archivo de credenciales / etc / smb-credentials

username = foobar
password = secret

Después lo cambié a:

username=foobar
password=secret

Funcionó.


2

A menudo tengo que citar el -o "username=joe,password=yadayada,domain=adomain" //share/share /mnt y se montará directamente y la mayoría de los ejemplos que he buscado no muestran ese bit (si es necesario en esos sistemas).
En realidad, tuve ese problema en mi tableta justo ahora (por qué estoy aquí quería un nombre UNC, no IP). Las citas lo arreglaron de inmediato.


1

Posible solución adicional

Si la carpeta compartida es de Windows 10 (probablemente también se aplica a 7 y XP), confirme que la configuración compartida de la carpeta Windows esté configurada correctamente para el tipo de red a la que está conectado, es decir, PublicoPrivate .

Simplemente transmitiré mi experiencia y me adaptaré a su situación según corresponda. Abra la lista de redes wifi y para la que está conectado, haga clic Properties. Establecer en Publico Privatesegún corresponda. (En mi caso, una Privatered fue etiquetada incorrectamente Public).

Una vez que la red esté clasificada correctamente, haga clic con el botón derecho en su carpeta compartida, seleccione Properties, seleccione la Sharingpestaña, seleccione el Network and Sharing Centerenlace y asegúrese de que Turn on file and printer sharingesté seleccionada para Publico Privatedependiendo de su tipo de conexión wifi como se clasificó anteriormente.

Después de hacer esto, pude conectar una máquina Debian a Windows 10 como se esperaba.


0

Otro problema puede ser con DNS. Estaba recibiendo el mismo error de "operación ahora en progreso". Sin embargo, navegar con Dolphin funcionó bien. El nombre de host que estaba usando con éxito con Dolphin se resuelve en 4 direcciones IP, una de las cuales termina en 0 (es un nombre de subdominio). Cuando uso el nombre para una de las otras 3 direcciones IP, el montaje funciona. Supongo que Dolphin es más inteligente al buscar un host real cuando se le da un (sub) nombre de dominio que mount.


No sé por qué mi respuesta fue rechazada. Lo incluí porque estaba obteniendo el mismo comportamiento que el OP pero con una causa raíz diferente. Sé que se ha abordado el problema del OP, pero creo que puede ser útil para otras personas que se encuentran con este comportamiento saber que hay otra causa posible.
Chris

0

Hoy vi un caso en el que alguien intentaba montar un recurso compartido usando CIFS pero CIFS no estaba instalado.

yum install cifs-utils
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.