AutoFS configuración · 3 min read · Dec 10, 2025

Cómo usar AutoFS para acceder a recursos compartidos de Windows y Samba

Accediendo a recursos compartidos de Windows o Samba usando AutoFS

Ya instalaste Linux en tu PC de escritorio en red y ahora quieres trabajar con archivos almacenados en otras PCs de tu red. Aquí es donde entra en juego autofs. Este tutorial muestra cómo configurar autofs para usar CIFS para acceder a recursos compartidos de Windows o Samba desde PCs de escritorio Linux. También incluye un archivo de configuración personalizado.

Si la versión 4.0 o más reciente de autofs ya está instalada, deberías encontrar los archivos

/etc/auto.master

y

/etc/auto.smb

en tu sistema. De lo contrario, inicia el gestor de paquetes de tu distribución (por ejemplo, YaST en SuSE, synaptic en Debian o Ubuntu, …) e instálalo. Cuando lo hagas, también instala el paquete del cliente Samba (busca smbclient), porque también lo necesitaremos. En algunas distribuciones (Ubuntu) también necesitamos el paquete smbfs que contiene las utilidades mount.cifs y umount.cifs.

Configuración

Si autofs ya está instalado, probablemente aún no esté configurado y no funcione. Suponiendo que tu distribución de Linux contiene un kernel Linux 2.6.x, te recomiendo usar el módulo common internet file system (cifs) para acceder a archivos en la red. Por favor, guarda el siguiente archivo como

/etc/auto.cifs

en tu computadora. Necesitas permisos de root (o sudo) para hacer esto:

#!/bin/bash
# $Id$
# ¡Este archivo debe ser ejecutable para funcionar! chmod 755!
key="$1"
# Nota: crea un archivo de credenciales para cada servidor Windows/Samba en tu red
#       que requiera autenticación por contraseña. El archivo debe contener
#       exactamente dos líneas:
#          username=user
#          password=*****
#       Por favor, no uses espacios en blanco para separar el signo igual del
#       nombre de la cuenta de usuario o la contraseña.
credfile="/etc/auto.smb.$key"
# Nota: Usa cifs en lugar de smbfs:
mountopts="-fstype=cifs,file_mode=0644,dir_mode=0755,uid=user,gid=users"
smbclientopts=""
for P in /bin /sbin /usr/bin /usr/sbin
do
        if [ -x $P/smbclient ]
        then
                SMBCLIENT=$P/smbclient
                break
        fi
done
[ -x $SMBCLIENT ] || exit 1
if [ -e "$credfile" ]
then
        mountopts=$mountopts",credentials=$credfile"
        smbclientopts="-A "$credfile
else
        smbclientopts="-N"
fi
$SMBCLIENT $smbclientopts -gL $key 2>/dev/null \
   | awk -v key="$key" -v opts="$mountopts" -F'|' -- '
        BEGIN   { ORS=""; first=1 }
    /Disk/  { if (first) { print opts; first=0 };
          gsub(/ /, "\\ ", $2);
          sub(/\$/, "\\$", $2);
          print " \
     /" $2, "://" key "/" $2 }
        END     { if (!first) print "\n"; else exit 1 }
        '

Haz que este archivo sea ejecutable usando el comando:

chmod 755 /etc/auto.cifs

Este archivo es una versión ligeramente modificada del archivo auto.smb que generalmente viene como parte del paquete autofs. Necesitas modificar la línea que define mountopts arriba y cambiar user por el nombre de tu cuenta personal. Ahora tienes que darle a autofs las credenciales necesarias para acceder a los recursos compartidos en tu red. Para hacer esto, crea un archivo llamado

/etc/auto.smb.NOMBREDELARCHIVOSERVIDOR

para cada computadora a la que quieras acceder. Por supuesto, reemplaza NOMBREDELARCHIVOSERVIDOR con el nombre de la computadora. Llena estos archivos con el nombre de la cuenta de usuario y la contraseña necesarias para acceder a los recursos compartidos en la computadora. El contenido de estos archivos debería ser como el siguiente ejemplo:

username=user
password=secret

Usa el comando

chmod 600 /etc/auto.smb.*

para proteger la información de la contraseña.

Ahora tenemos que decirle a autofs que utilice nuestro nuevo archivo de configuración. Usa los comandos:

echo "/cifs /etc/auto.cifs --timeout=60" >>/etc/auto.master

y

/etc/init.d/autofs restart

Eso es todo.

Pruebas

Usa el comando

ls -als /cifs/NOMBREDELARCHIVOSERVIDOR/NOMBREDELARECURSO

para verificar si funciona. Si no, consulta los archivos de registro del sistema (generalmente /var/log/messages o /var/log/syslog) para ver mensajes.

Créditos: davek por proporcionar un parche para escapar mejor los signos de dólar y los espacios en blanco en los nombres de los recursos compartidos

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.