Linux Networking · 5 min read · Dec 11, 2025
Navegando la red de Windows con tu máquina Linux con montaje automático y descubrimiento de todos los hosts y recursos compartidos.
La versión más reciente que encontrarás en:
http://linux.bononline.nl/linux/automountsmbshares/index.php
Índice
- Introducción y Resumen
Introducción
Durante algún tiempo he estado buscando una buena manera de permitir que mi computadora descubra la red de Windows y monte recursos compartidos bajo demanda. No hay una solución lo suficientemente buena en este momento. Después de probar los kioslaves en el escritorio de mi elección (KDE) y los programas FUSE Fusesmb y SmbNetFs, no estaba realmente satisfecho. Tenía que haber una forma de permitir que mi computadora descubriera todos los grupos de trabajo/dominios, los hosts y los recursos compartidos, y montara un recurso compartido en un host bajo demanda. Algunos dirán: monta los recursos compartidos de tu elección a mano, y listo. ¡Pero no! Esto no es lo que quiero. Puedo permitir que mi computadora descubra automáticamente todos los hosts y recursos compartidos disponibles, y monte el recurso compartido solo cuando sea necesario. ¡Esto debería ser posible! Y después de probar, ¡he descubierto que lo es!
Los siguientes problemas son necesarios en mi humilde opinión:
descubrimiento automático de la red SMB (dominios, hosts y recursos compartidos)
construcción de una representación que tenga sentido para los usuarios conectados en su directorio personal
montaje automático de recursos compartidos bajo demanda
desmontaje automático de recursos compartidos después de un tiempo sin uso
uso de un sistema de archivos del kernel como SMBFS o CIFS
independiente de un Gestor de Escritorio
soporte de otros servicios de red como SSH y FTP
El programa FUSE Fusesmb se acerca mucho a lo que estoy buscando, pero carece de las capacidades extendidas que tiene CIFS, como la presentación correcta de los permisos, soporte de inotify, symlink y ATTR/ACL. Me tomó un tiempo descubrir por qué el programa FUSE carece de estas características. FuseSMB se basa en la biblioteca smbclient smbclient.so, que es parte del paquete Samba, y no tiene nada que ver con smbfs o cifs.
El resultado
El resultado de esta construcción es un directorio relacionado con la red (Red Global) en tu directorio personal, donde el automontador proporciona un árbol navegable para acceder a todos los servicios de red compatibles.
En este momento, soporta los servicios SMB y SSH (estoy trabajando en FTP). Accediendo al “punto de montaje de red”:
/home/sbon/Red Global/
Hosts SSH
Red de Windows
Accediendo a la Red de Windows (==smb), todos los grupos de trabajo y/o dominios aparecen:
/home/sbon/Red Global/
Hosts SSH
Red de Windows
BONONLINE
CWWERKGROEP
Entrando al grupo de trabajo CWWERKGROEP, todos los servidores y otros hosts aparecen:
/home/sbon/Red Global/
Hosts SSH
Red de Windows
BONONLINE
CWWERKGROEP
ROUTER
PC1
Entrando al servidor ROUTER, los recursos compartidos disponibles para el usuario conectado aparecen:
/home/sbon/Red Global/
Hosts SSH
Red de Windows
BONONLINE
CWWERKGROEP
ROUTER
cwdocumenten
public
sbon
Accediendo a un recurso compartido, se monta automáticamente (con CIFS o SMBFS). Se admite el uso de credenciales, los inicios de sesión de invitados son la configuración predeterminada.
Para construir el “mapa de montajes múltiples” para el servicio smb, se utiliza un caché de red. Proporciona información sobre grupos de trabajo y/o dominios, hosts y servidores y recursos compartidos disponibles. Se mantiene mediante algunos scripts, que utilizan algunas utilidades (nbtscan para determinar los hosts y grupos de trabajo/dominios y smbclient para determinar los recursos compartidos por host).
Accediendo a los hosts SSH (=ssh), todos los hosts a los que este usuario tiene acceso aparecen:
/home/sbon/Red Global/
Hosts SSH
192.168.0.2
Red de Windows
Aquí no se utiliza caché para crear este árbol, sino el archivo .known_hosts. Además, no había mount.sshfs disponible. He creado uno, utilizando FUSE y sshfs. (y umount.sshfs).
Ahora, al acceder al host 192.168.0.2, la raíz en 192.168.0.2 se monta.
¿Cómo funciona?
Esta construcción hace uso del automontador. Cuando un usuario inicia sesión y comienza una nueva sesión, se agrega un “punto de montaje de red” al archivo auto.master y el demonio del automontador recibe una señal de “recarga”. Este punto de montaje, llamado por defecto “Red Global”, está en el directorio personal del usuario. Vinculado a él hay un script (auto.network) que crea un mapa, basado en todos los servicios de red soportados y recursos descubiertos. Junto con la opción de navegación, esto proporciona un mapa navegable, donde los recursos compartidos/hosts se montan cuando se accede a ellos.
Cuando el usuario cierra sesión, y por lo tanto la sesión termina, el punto de montaje se elimina nuevamente, y el demonio del automontador recibe una señal de recarga nuevamente para hacer efectivas los cambios.
Aquí se utiliza la capacidad de KDM para ejecutar scripts con privilegios de root al principio y al final de una sesión.
En este momento solo se soportan SMB y SSH.
Problemas conocidos
Hay algunos cuellos de botella:
- cuando se agrega un recurso compartido, un host se desconecta o cualquier otra cosa cambia en el entorno smb, toma algún tiempo cuando también es visible en el caché. Este caché se mantiene a través de algunos scripts, que trabajan con un mecanismo basado en “pull”. En segundo lugar, el automontador no detecta por sí mismo que los datos en el caché han cambiado. Solo renueva sus propios datos (el mapa de montajes múltiples) después de un tiempo de espera, y aun así no obtiene completamente todos los cambios.
- el automontador está instruido para presentar un mapa de montajes navegable. Esto significa que los directorios de nivel superior siempre están disponibles. Esto es algo muy bueno, las redes disponibles siempre son visibles y accesibles para el usuario, incluso después de un tiempo de espera. En la práctica, a veces uno de los “servicios de red” desaparece…
- el automontador tiene algunos problemas al iniciar con un archivo auto.master vacío (y sin inclusiones vacías). En el tiempo de arranque, cuando no hay usuarios conectados, y por lo tanto no hay puntos de montaje de red gestionados por autofs, el automontador debe iniciarse con un mapa vacío.
Enlaces
Accediendo a recursos compartidos de Windows o Samba usando autofs
una guía para configurar autofs para recursos compartidos SMB, utilizando archivos existentes;
Integrando tu host Linux en un entorno Windows
una guía para configurar autofs para acceder a recursos compartidos de una manera alternativa.
HOWTO Automontar sistemas de archivos (AUTOFS) / udev con autofs
Aquí se utiliza casi la misma construcción para montar hardware usando autofs con udev. Aquí también se agregan y eliminan dinámicamente puntos de montaje al archivo auto.master.
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.