SMB: Auto-Unmount kann dann ohne Neustart nicht erneut gemountet werden


4

Ich habe ein immer wiederkehrendes Problem beim Mounten / Unmounten von Remote-Verzeichnissen über SMB. Ich weiß jedoch nicht, was das Problem auslöst und wie es behoben werden kann.

Hintergrund:

Nach dem erfolgreichen Mounten des Verzeichnisses über SMB und nach einiger Zeit scheint sich das Verzeichnis von selbst zu mounten. In diesem Fall kann ich das Verzeichnis erst wieder einbinden, nachdem ich mein System neu gestartet habe.

Wenn ich das System nicht neu starte und das Dialogfeld "Mit Server verbinden" verwende, um zu versuchen, das Verzeichnis über SMB bereitzustellen, verschwindet das Dialogfeld, als ob die Verbindung erfolgreich wäre, es wird jedoch nichts bereitgestellt.

Wenn ich versuche, dasselbe mit einem übergeordneten Verzeichnis (dem Stammverzeichnis des Servers) zu tun, scheint die Verbindung erfolgreich zu sein, und ich werde aufgefordert, die Volumes auszuwählen, die in 'xyz.server.name' eingebunden werden sollen. : "mit einer Liste von Verzeichnissen. Das zuvor gemountete Verzeichnis (das automatisch abgemountet wurde) wird aufgelistet, ist jedoch ausgeblendet und kann daher nicht ausgewählt werden.

Beim SSH-Zugriff auf den Server scheint es keine Probleme mit dem Zugriff auf das Verzeichnis zu geben.

Dieses Problem tritt auch bei anderen Remote-Verzeichnissen auf (obwohl ich es auf einem anderen Server nicht testen konnte).

Wenn Sie in diesem Szenario erneut versuchen, eine Verbindung herzustellen, meldet die Konsole das folgende Problem:

"30.10.2014 11: 48: 20.520 Uhr NetAuthSysAgent [3346]: smb_mount: Mount auf my.server.com/mydirectory fehlgeschlagen, syserr = Datei existiert"

Fragen:

i) Was führt dazu, dass das Verzeichnis / Volume nicht gemountet wird?

ii) Wie kann ich verhindern, dass die automatische Bereitstellung aufgehoben wird?

iii) Wie kann ich das Verzeichnis bei einem automatischen Unmount erneut mounten, ohne es neu zu starten?

Systemdetails:

OS X 10.9.5

Netzhaut, 15 Zoll, Anfang 2013

Serverdetails:

Red Hat Enterprise Linux Server Version 5.11 (Tikanga)

Kernel Version 2.6.18-371.8.1.el5

Ausgabe von df:

Vor problem:

Filesystem                                        512-blocks        Used  Available Capacity   iused      ifree %iused  Mounted on
/dev/disk0s2                                       975425848   899360656   75553192    93% 112484080    9444149   92%   /
devfs                                                    371         371          0   100%       644          0  100%   /dev
map -hosts                                                 0           0          0   100%         0          0  100%   /net
map auto_home                                              0           0          0   100%         0          0  100%   /home
//josh@example.com/josh                          10568950416 10486471008   82479408   100%         0 18446744073709551615    0%   /Volumes/josh
//josh@example.com/semantic                      12682735248  7708953400 4973781848    61%         0 18446744073709551615    0%   /Volumes/semantic

Nach problem:

Filesystem                                        512-blocks        Used  Available Capacity   iused      ifree %iused  Mounted on
/dev/disk0s2                                       975425848   899350976   75562872    93% 112482870    9445359   92%   /
devfs                                                    373         373          0   100%       648          0  100%   /dev
map -hosts                                                 0           0          0   100%         0          0  100%   /net
map auto_home                                              0           0          0   100%         0          0  100%   /home
//josh@example.com/josh                          10568950416 10466951592  101998824   100%         0 18446744073709551615    0%   /Volumes/josh
//josh@example.com/semantic                      12682735248  7708953400 4973781848    61%         0 18446744073709551615    0%   /Volumes/semantic

Beobachtungen:

Die gemounteten Verzeichnisse werden weiterhin in / Volumes aufgelistet, wenn sie vom Terminal aus angezeigt werden (d. H. 'Ls / Volumes'), obwohl dies nicht immer der Fall ist, aber auf beide Verzeichnisse nicht zugegriffen werden kann. Sie sind in Finder überhaupt nicht sichtbar.

Ich kann jedoch weiterhin von Matlab aus auf den Inhalt eines der Verzeichnisse zugreifen, das sich bereits in einem Unterverzeichnis dieses Verzeichnisses (seines Arbeitsverzeichnisses) befindet. Wenn ich mich dann außerhalb des Verzeichnisses in Matlab befinde (z. B. in mein Ausgangsverzeichnis), kann ich nicht über den Befehl 'cd' dorthin zurückkehren, sondern muss stattdessen auf die Schaltfläche Zurück in der Symbolleiste für die Dateinavigation klicken, und dann ist alles verfügbar wieder aus Matlab heraus.


hast du versucht auf cifs anstatt smb2 zu wechseln? Maosxhints
klanomath

1
Das ist eine sehr alte RHEL-Installation. Ich habe Samba4 unter Scientific Linux 6.5 (RHEL-Klon) ohne irgendwelche Probleme.
miken32

Sorry, wollte da mehr schreiben. Welche Version von Samba laufen Sie? Erhalten Sie etwas auf dem Server-Fehlerprotokoll? Probleme mit der Netzwerkkonnektivität oder der Ruhezustand des Computers, die die Trennung verursachen könnten?
miken32

Handelt es sich um ein Finder-, Client- oder Serverproblem? Wenn das Problem beim Aushängen auftritt, ist dies möglich cd /Volumes/josh von Terminal?
daniel Azuelos

@klanomath Ja, ich habe CIFS ausprobiert, aber es schien in meinem Fall nicht zu funktionieren.
Josh

Antworten:


1

Ich werde eine Antwort auf Frage 3 geben. Ich bin nicht sicher, ob der Rest leicht diagnostiziert werden kann.

"Wie kann ich das Verzeichnis nach dem automatischen Aufheben der Bereitstellung erneut aufladen, ohne es neu zu starten?"

Versuchen diskutil umount /Volumes/josh und es sollte den Trick machen.

Der Fehler "Datei vorhanden" wird angezeigt, da der zu verwendende Mountpunkt bereits vorhanden ist. Es sieht so aus, als ob der Datenträger nicht abgehängt ist, nur dass Finder ihn nicht sehen kann. Aus diesem Grund kann Matlab weiterhin auf die darauf befindlichen Dateien zugreifen.


1
Dies funktioniert beim Abmelden, aber ich kann das Verzeichnis anschließend nicht mehr abmelden.
Josh

@danielAzuelos, der OP gibt an, dass er jederzeit in den Host ssh kann.
CousinCocaine

0

Laut Red Hat-Site , sie unterstützen die Verwendung von SMB-Freigaben mit dem OS X Finder nicht. Sieht so aus, als könnten Sie noch über das Terminal darauf zugreifen.

In Bezug auf das zufällige Trennen der Verbindung: Es hört sich so an, als würde die Freigabe zunächst eine Verbindung herstellen und dann ausflippen, nachdem festgestellt wurde, dass sie sich in der Mac-Umgebung befindet. Für mich sieht es so aus, als würde die Freigabe nicht korrekt abgemeldet, und aus diesem Grund könnten Sie keine erneute Verbindung herstellen. Es ist eigentlich immer noch da, nur im Finder nicht sichtbar.

Wenn Sie die Freigabe manuell über das Terminal trennen würden, wäre zu erwarten, dass sie nicht abgeblendet wird, wenn Sie erneut versuchen, eine Verbindung herzustellen.

Ein Fix: Abhängig davon, wie der Red Hat Server eingerichtet wurde, sollten Sie in der Lage sein, per FTP darauf zuzugreifen. Mac verfügt über einige FTP-GUIs, die Sie ausprobieren oder über die Terminals verwenden können ftp Befehl.


Ja, ich verwende FTP für die Dateiübertragung, wenn ich Probleme mit SMB habe. Nach meinem Kenntnisstand kann ich die Dateien mit FTP jedoch nicht remote in meinen lokalen Anwendungen (z. B. Matlab) verwenden. Das Übertragen von Dateien nur zum Bearbeiten / Aktualisieren wird umständlich und fehleranfällig.
Josh

Ich gehe davon aus, dass Sie keinen Zugriff auf den RHEL-Server haben, richtig? Wenn Sie dies tun, sollten Sie verwenden können Netatalk eine AFP-Freigabe zu machen, und das sollte gut funktionieren. Verwenden Sie eine GUI wie Filezilla? Oder benutzen Sie die Terminals? ftp Befehl, um auf die Dateien zuzugreifen? Ich hatte ziemlich viel Glück mit Filezilla (obwohl ich mich nie mit Matlab befassen musste). Leider sehe ich keine zuverlässige Problemumgehung, wenn Sie keinen Zugriff auf den Server haben. Wenden Sie sich möglicherweise an den Server-Manager und fragen Sie nach Netatalk.
zomgdavidbowie

0

Was führt dazu, dass das Verzeichnis / Volume nicht gemountet wird?

Höchstwahrscheinlich eine Instabilität der Netzwerkverbindung, die durch die Verwendung von verstärkt werden könnte Automatic Konfiguration, die möglicherweise von Ethernet auf Flughafen umschaltet und versucht, die Netzwerkkonnektivität aufrechtzuerhalten.

Um diese Hypothese zu validieren, verwenden Sie:

netstat -I
ping -c 90 -i 10 your_SMB_server
tail -f /var/log/system.log
...

Wie kann ich verhindern, dass die automatische Bereitstellung aufgehoben wird?

Wenn dieses Netzwerkproblem bestätigt wird, beheben Sie es :):

  • Kabel wechseln
  • Switch-Port ändern
  • Fragen Sie Ihren Netzwerkadministrator
  • ...

Wie kann ich das Verzeichnis bei einem automatischen Unmount erneut mounten, ohne dass dies erforderlich ist?   neustarten?

Sie können nicht, wenn die unmount wurde nicht korrekt beendet. Einige Statusinformationen in Ihrer SMB-Kernel-Erweiterung sind beschädigt (zur Hälfte geändert) und können nur auf die korrekte Beendigung des ausstehenden Vorgangs korrigiert werden unmount. Wenn Ihre Verbindung unterbrochen wurde, Ich kenne einen einzigen Weg, um ein ausstehendes SMB zu beenden unmount: shutdown von Mac OS X (Ich habe versucht, eine kextunload die zu einem Totalausfall führen).

Sie sollten unbedingt vermeiden, dass eine solche anstehende Bereitstellung aufgehoben wird.


0

Die Antwort von miken32 hat bei mir nicht funktioniert, hat mich aber auf den richtigen Weg gebracht. Mein Problem wurde nach dem Abmontieren gelöst alles Freigaben auf dem betreffenden Server (in Ihrem Fall "example.com").

Also, mit Ihrem Fall, diskutil umount /Volumes/josh ist nicht genug, weil /Volumes/semantic verbleibt noch. Sie müssen auch diesen aushängen. Danach sollte das Remounting funktionieren (zumindest für mich).

Übrigens müssen Sie diskutil nicht verwenden, sondern können ausführen

umount //josh@example.com/josh

und

umount //josh@example.com/semantic

0

Ich habe das gleiche Problem, hatte es am 10.6.8 und jetzt am 10.11. Die Ursache ist zweierlei: Zum einen soll die Freigabe die Bereitstellung aufheben (z. B. im Energiesparmodus), kann jedoch nicht, da sie verwendet wird (gekennzeichnet als), so dass sie abstirbt und ein Ordner in / Volumes übrig bleibt, den Sie manchmal einfach löschen könnten Löschen und erneut einbinden. In 10.11 ist es jedoch in Finder unsichtbar, NACHDEM die Freigabe gestorben ist (siehe Finder-Einstellungen, Finder zeigt nur aktive Freigaben an).

Zum zweiten wird das Flag, das die Dateien verwenden, von MatLab gesetzt. Manchmal können Sie sie mit dem MatLab-Befehl entfernen fclose all und cd zu einem anderen Ort, um die Freigabe freizugeben, manchmal verwenden Sie tatsächlich Dateien (indem Sie das .m-Skript von der Freigabe bearbeiten). Aber oft nach einer Zeit der Inaktivität geht es in eine Sackgasse: umount und diskutil unmount Freigabe kann nicht freigegeben werden, da "Ressource belegt" und MatLab seine Flags nicht freigeben kann, da die Freigabe schon lange nicht mehr vorhanden ist.

Ich verwende macfusion, also gibt es tatsächlich einen Mechanismus, mit dem die Freigabe abstirbt, wenn sshfs die Verbindung zum Server verliert. Von diesen drei: Finder, MatLab und Fuse, würde ich sagen, dass das MatLab böse ist, da andere Programme wie BBedit die Freigabe niemals auf solch tödliche Weise sperren. Ich kann oft erst wieder einsteigen, nachdem ich MatLab beendet habe.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.