AutoFS Anleitung · 2 min read · Dec 10, 2025
Wie man AutoFS verwendet, um auf Windows- und Samba-Freigaben zuzugreifen
Zugriff auf Windows- oder Samba-Freigaben mit AutoFS
Sie haben bereits Linux auf Ihrem vernetzten Desktop-PC installiert und möchten nun mit Dateien arbeiten, die auf anderen PCs in Ihrem Netzwerk gespeichert sind. Hier kommt autofs ins Spiel. Dieses Tutorial zeigt, wie man autofs konfiguriert, um CIFS zu verwenden, um von Linux-Desktop-PCs auf Windows- oder Samba-Freigaben zuzugreifen. Es enthält auch eine maßgeschneiderte Konfigurationsdatei.
Wenn autofs Version 4.0 oder neuer bereits installiert ist, sollten Sie die Dateien
/etc/auto.masterund
/etc/auto.smbauf Ihrem System finden. Andernfalls starten Sie den Paketmanager Ihrer Distribution (z. B. YaST auf SuSE, synaptic auf Debian oder Ubuntu, …) und installieren Sie es. Wenn Sie dabei sind, installieren Sie auch das Samba-Client-Paket (suchen Sie nach smbclient), da wir dies ebenfalls benötigen. In einigen Distributionen (Ubuntu) benötigen wir auch das Paket smbfs, das die Dienstprogramme mount.cifs und umount.cifs enthält.
Konfiguration
Wenn autofs bereits installiert ist, ist es wahrscheinlich noch nicht konfiguriert und funktioniert nicht. Vorausgesetzt, Ihre Linux-Distribution enthält einen Linux 2.6.x-Kernel, empfehle ich, das common internet file system (cifs) Modul zu verwenden, um auf Dateien im Netzwerk zuzugreifen. Bitte speichern Sie die folgende Datei als
/etc/auto.cifsauf Ihrem Computer. Sie benötigen Root-Rechte (oder sudo), um die Berechtigungen dafür zu haben:
#!/bin/bash
# $Id$
# Diese Datei muss ausführbar sein, um zu funktionieren! chmod 755!
key="$1"
# Hinweis: Erstellen Sie eine Cred-Datei für jeden Windows/Samba-Server in Ihrem Netzwerk
# der eine Passwortauthentifizierung erfordert. Die Datei sollte genau zwei Zeilen enthalten:
# username=user
# password=*****
# Bitte verwenden Sie keine Leerzeichen, um das Gleichheitszeichen vom
# Benutzernamen oder Passwort zu trennen.
credfile="/etc/auto.smb.$key"
# Hinweis: Verwenden Sie cifs anstelle von 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 }
'Machen Sie diese Datei ausführbar mit dem Befehl:
chmod 755 /etc/auto.cifsDiese Datei ist eine leicht modifizierte Version der Datei auto.smb, die normalerweise als Teil des autofs-Pakets geliefert wird. Sie müssen die Zeile, die die mountopts definiert, oben ändern und “user” durch den Namen Ihres persönlichen Kontos ersetzen. Jetzt müssen Sie autofs die Anmeldeinformationen geben, die benötigt werden, um auf Freigaben in Ihrem Netzwerk zuzugreifen. Erstellen Sie dazu eine Datei mit dem Namen
/etc/auto.smb.FILESERVERNAMEfür jeden Computer, auf den Sie zugreifen möchten. Ersetzen Sie natürlich FILESERVERNAME durch den Namen des Computers. Füllen Sie diese Dateien mit dem Benutzernamen und dem Passwort aus, die benötigt werden, um auf die Freigaben auf dem Computer zuzugreifen. Der Inhalt dieser Dateien sollte wie im folgenden Beispiel aussehen:
username=user
password=secretVerwenden Sie den Befehl
chmod 600 /etc/auto.smb.*um die Passwortinformationen zu schützen.
Jetzt müssen wir autofs mitteilen, dass es unsere neue Konfigurationsdatei verwenden soll. Verwenden Sie die Befehle:
echo "/cifs /etc/auto.cifs --timeout=60" >>/etc/auto.masterund
/etc/init.d/autofs restartDas ist alles.
Testen
Verwenden Sie den Befehl
ls -als /cifs/FILESERVERNAME/SHARENAMEum zu überprüfen, ob es funktioniert. Wenn nicht, konsultieren Sie die Systemprotokolldateien (normalerweise /var/log/messages oder /var/log/syslog) auf Nachrichten.
Credits: davek für das Bereitstellen eines Patches, um Dollarzeichen und Leerzeichen in Freigabenamen besser zu escapen
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.