Ich habe ein Problem mit einer Reihe von CIFS-Mounts, die so aussehen:
//192.168.10.2/remote-share /home/windows-shared/remote-share cifs defaults,user=xxx,password=xxx,uid=603,gid=603 0 0
Dieses Problem tritt nach einer Weile auf, normalerweise nach einem Tag, an dem die Benutzer ihre Computer morgens starten und ihre Freigaben nicht mehr remote funktionieren.
Wenn ich also versuche, eine zu machen, ls
bekomme ich Folgendes:
ls: cannot access /home/windows-shared/remote-share: Host is down
Ich bekomme nichts damit zu tun dmesg
. Das Problem dabei ist, dass jetzt jeder Leseaufruf zu diesem Teil des Systems nur hängt, sodass ich als Lösung lieber einen schnelleren Fehler hätte, als auf unbestimmte Zeit zu hängen.
Nach einigem Lesen der Manpage sieht mount.cifs
es so aus, als ob jeder Mount standardmäßig soft
bedeutet, dass es irgendwann zu einem Timeout kommen würde. Das Problem ist, dass das Timeout viel zu lange dauert.
Aktualisieren:
Das Hinzufügen dieser Parameter zum Befehl mount hat auch nicht geholfen:
soft,timeo=300,retrans=3
timeo=n
undretrans=m
zu verkürzen?Antworten:
Ich würde AutoFS sehr empfehlen.
Dadurch werden Ihre Netzwerkfreigaben dynamisch im Hintergrund aktiviert und deaktiviert, was für den Benutzer transparent ist. Früher hatte ich Probleme beim Abmelden und erneuten Mounten von Mobilgeräten, bis ich den Wechsel vollzogen habe.
Leider gibt es viel zu viele Anleitungen, die die Einrichtung von Autofs übermäßig erschweren. Angenommen, Sie arbeiten auf einer Ubuntu-Box, finden Sie hier die einfachen Anweisungen zum Einrichten.
Hier sind einige sehr einfache Anweisungen:
sudo apt-get install autofs -y
/etc/auto.master
und ersetzen durch:/- /etc/auto.cifs --timeout=20 --ghost
/mnt/LOCAL/MOUNT/PATH -fstype=cifs,rw,noperm,credentials=/etc/auto.credentials ://SERVER/MOUNT
/etc/auto.credentials
den folgenden Inhalt:username=USERNAME password=PASSWORD
sudo service autofs restart
.Das ist es.
quelle
In den meisten Fällen können Sie zumindest die hängende einhängepunkt entfernen , indem Sie einen faulen Aushängen zu tun:
umount -l //server/share
. Vielleicht können Sie das in einen Suspend-Haken stecken (wie ich es verstehe, sind Ihre Maschinen nachts suspendiert und laufen mehrere Tage lang?)quelle