Samba Shares · 3 min read · Dec 10, 2025

Comment utiliser AutoFS pour accéder aux partages Windows et Samba

Accéder aux partages Windows ou Samba en utilisant AutoFS

Vous avez déjà installé Linux sur votre PC de bureau en réseau et maintenant vous souhaitez travailler avec des fichiers stockés sur d’autres PC de votre réseau. C’est là qu’autofs entre en jeu. Ce tutoriel montre comment configurer autofs pour utiliser CIFS afin d’accéder aux partages Windows ou Samba depuis des PC de bureau Linux. Il comprend également un fichier de configuration personnalisé.

Si la version 4.0 ou supérieure d’autofs est déjà installée, vous devriez trouver les fichiers

/etc/auto.master

et

/etc/auto.smb

sur votre système. Sinon, lancez le gestionnaire de paquets de votre distribution (par exemple, YaST sur SuSE, synaptic sur Debian ou Ubuntu, …) et installez-le. Pendant que vous y êtes, installez également le paquet client Samba (cherchez smbclient), car nous en aurons également besoin. Sur certaines distributions (Ubuntu), nous avons également besoin du paquet smbfs qui contient les utilitaires mount.cifs et umount.cifs.

Configuration

Si autofs est déjà installé, il n’est probablement pas encore configuré et ne fonctionne pas. En supposant que votre distribution Linux contient un noyau Linux 2.6.x, je recommande d’utiliser le module common internet file system (cifs) pour accéder aux fichiers sur le réseau. Veuillez enregistrer le fichier suivant sous

/etc/auto.cifs

sur votre ordinateur. Vous avez besoin des droits root (ou sudo) pour avoir les permissions nécessaires :

#!/bin/bash
# $Id$
# Ce fichier doit être exécutable pour fonctionner ! chmod 755 !
key="$1"
# Remarque : créez un fichier de crédentials pour chaque serveur Windows/Samba de votre réseau
#       qui nécessite une authentification par mot de passe. Le fichier doit contenir
#       exactement deux lignes :
#          username=user
#          password=*****
#       Veuillez ne pas utiliser d'espaces pour séparer le signe égal du
#       nom du compte utilisateur ou du mot de passe.
credfile="/etc/auto.smb.$key"
# Remarque : utilisez cifs au lieu 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 }
        '

Rendez ce fichier exécutable en utilisant la commande :

chmod 755 /etc/auto.cifs

Ce fichier est une version légèrement modifiée du fichier auto.smb qui fait généralement partie du paquet autofs. Vous devez modifier la ligne définissant les mountopts ci-dessus et changer user par le nom de votre compte personnel. Maintenant, vous devez donner à autofs les informations d’identification nécessaires pour accéder aux partages de votre réseau. Pour ce faire, créez un fichier appelé

/etc/auto.smb.FILESERVERNAME

pour chaque ordinateur auquel vous souhaitez accéder. Bien sûr, remplacez FILESERVERNAME par le nom de l’ordinateur. Remplissez ces fichiers avec le nom du compte utilisateur et le mot de passe nécessaires pour accéder aux partages sur l’ordinateur. Le contenu de ces fichiers devrait ressembler à l’exemple suivant :

username=user
password=secret

Utilisez la commande

chmod 600 /etc/auto.smb.*

pour protéger les informations de mot de passe.

Maintenant, nous devons dire à autofs d’utiliser notre nouveau fichier de configuration. Utilisez les commandes :

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

et

/etc/init.d/autofs restart

C’est tout.

Test

Utilisez la commande

ls -als /cifs/FILESERVERNAME/SHARENAME

pour vérifier si cela fonctionne. Si ce n’est pas le cas, consultez les fichiers journaux système (généralement /var/log/messages ou /var/log/syslog) pour des messages.

Crédits : davek pour avoir fourni un correctif pour mieux échapper aux signes dollar et aux espaces dans les noms de partage

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.