Finder & Samba – Datenshredder

Finder & Samba

Auch wenn der Leopard längst dabei ist, von seinem Nachfolger abgelöst zu werden, möchte ich heute auf ein äußerst nerviges Problem in dieser Version von Mac OS X eingehen. Einerseits könnte man jetzt sagen, dass die Raunzerei über etwas dahin Scheidendes sowieso hinfällig ist. Andererseits ist dieses Betriebssystem das letzte von Apple, das noch auf den alten PowerPC-Macs lauffähig ist. Insofern wird es vermutlich noch einige Jahre am Leben bleiben.

Wie der Titel schon andeutet, möchte ich mich heute darüber auslassen, dass die Kombination von Finder und Samba-Freigaben zu Datenverlust führt bzw. führen kann. Doch alles schön langsam und zum Mitschreiben – ich werde Schritt für Schritt vorzeigen, was ich mache und hoffen, dass mir jemand eine Lösung nennen kann.

Dateifreigabe in Windows erstellen

Ich habe auf jedem meiner Windows-Rechner einen Austauschordner, den ich im lokalen Netzwerk freigeben habe. Meistens ist dieser leer – nur wenn ich Dateien übertragen möchte, dient er als Zwischenablage. Wie man sieht handelt es sich hier um Windows XP Professional und eine einfache Netzwerkfreigabe mit Schreib- und Lesezugriff für alle.

Verbinden vom Finder aus

Nachdem die Computer mit dem Netzwerkkabel verbunden sind, verbinde ich mich ganz klassisch mit der Netzwerkfreigabe. Wenige Sekunden später erscheint das Netzlaufwerk auch auf dem Schreibtisch. Alles bestens? Zumindest sieht es momentan noch so aus. Der interessante Effekt tritt erst auf, wenn man eine Datei auf die Netzwerkfreigabe kopiert.

Datei in die Netzwerkfreigabe kopieren

Sobald wir die Datei per Drag ’n‘ Drop auf das Netzlaufwerk ziehen, taucht sie dort für eine halbe Sekunde auf und ist wenige Momente später nicht mehr da. Was heißt nicht mehr da? Verschwunden, gelöscht! Wenn man jetzt natürlich so schlau war, eine Datei auf das Netzlaufwerk zu verschieben statt zu kopieren ist sie hiermit unwiederbringlich weg. Natürlich weiß ich, dass man immer kopiert und nachher das Original löscht, sobald alles erfolgreich abgeschlossen ist. Aber in meiner Naivität und »weil es eigentlich eh nur ein paar kleine Dateien sind, wo nichts schief gehen kann« habe ich natürlich auch schon Dateien ins Nirvana geschoben. Beim ersten Mal dachte ich an einen bösen Spuk, aber als sich der Fehler reproduzieren ließ, wurde ich hellhörig.

Verschwinden auf der Windows-Seite

Ich habe darauf hin den Vorgang einmal auf der dunklen Seite der Macht (am Windows-Rechner) beobachtet und dabei auf F5 geparkt, um den Explorer dauernd zu aktualisieren. Mit der freien Hand habe ich am MacBook eine Testdatei auf das Netzlaufwerk gezogen und weiter den Explorer beobachtet. Die Datei taucht auf (mitsamt dem versteckten Datei-Teil für die Metadaten) um weniger als eine Sekunde später wieder zu verschwinden. Immer und immer wieder. Gut, »immer« stimmt nicht so ganz. In etwa jedes zehnte Mal kann er die Datei so kopieren, dass sie dann auch am Zielort bleibt.

Workaround via Terminal

Seit ich das alles weiß, umgehe ich das Problem bewusst. Falls wirklich der Zugriff auf eine Samba-Freigabe erforderlich ist und ich dort etwas hin kopieren möchte, greife ich zum Terminal. Allerdings ist das meiner Meinung nach äußerst hässlich. Ich meine, wir leben im Jahr 2009 und ich muss das Terminal öffnen, um eine kleine Datei auf eine Netzwerkfreigabe zu kopieren. Sofern ich nur Daten mit meinen anderen Rechnern austauschen möchte, setze ich mittlerweile auf SSH/SCP und die Clients FileZilla (unter Windows) bzw. Cyberduck unter Mac OS X. So ganz nebenbei habe ich dabei festgestellt, dass mein 100Mbit/s Netzwerk damit wesentlich mehr ausgelastet werden kann – statt den 8-9MB/s bei Samba bekomme ich so etwa 12MB/s durch die Leitung.

Natürlich ist das für normale Benutzer ein absolut undenkbarer Weg. Beide Varianten sind eigentlich nur den Leuten vorbehalten, die sich deutlich besser als der Durchschnitt mit ihren Rechnern auskennen. Was kann man also tun? Meiner Meinung nach kann man nur auf einen Patch hoffen. Da das Kopieren über die Konsole tadellos funktioniert, scheint es ein Problem vom Finder zu sein. Vielleicht hilft ein alternativer Dateimanager? Möglicherweise wurde das Problem mit dem neu geschriebenen Finder in Snow Leopard ja längst behoben?

Trotzdem wäre ein Patch seitens Apple äußerst nett – auch wenn das rein illusorisches Denken ist. Wie mir dieser Fehler zum ersten Mal aufgefallen ist, war gerade 10.5.2 oder 10.5.3 aktuell. Damals habe ich auch im Internet recherchiert und dabei heraus gefunden, dass der Bug bei Apple bekannt ist. Teilweise war zu lesen, dass das Problem hauptsächlich dann auftritt, wenn die Netzwerkfreigabe sonst noch keine Dateien oder Ordner enthält. Wie auch immer, mittlerweile stehen wir bei 10.5.8 und es wurde an dem Fehler rein gar nichts verbessert. Ich persönlich konnte mir immerhin helfen und schätze jetzt SCP für Dateitransfers sehr (abgesehen von einem kleinen Problem mit Umlauten, zu dem ich demnächst noch einen Artikel schreiben werde) – aber als Lösung würde ich das nicht bezeichnen.

Konntet ihr Ähnliches beobachten? Ist das mit Snow Leopard alles längst behoben? Gibt es einen speziellen Trick, den weder Google noch ich bislang kennen? Ich bin gespannt, was ihr dazu sagt!

Update 13. 11. 2009:
Ich habe gerade noch mit anderen Samba-Servern (bzw. SMB-Servern unter Windows) experimentiert. Sowohl mit Ubuntu 9.10 und dem Samba-Server als auch mit Windows 7 ist das Problem exakt dasselbe. Wenn bereits Dateien in der Freigabe liegen, verschwinden die Dateien eher selten. Wenn hingegen die Freigabe leer ist, verschwinden hinein kopierte Dateien, wie im Artikel beschrieben, in einem Großteil der Fälle. Ich muss noch anmerken, dass der Fehler zwar im Zusammenhang mit Samba-Freigaben auftritt, aber Samba selbst mit allergrößter Wahrscheinlichkeit unschuldig ist. Schließlich klappt das Kopieren übers Terminal ausnahmslos fehlerfrei.

Update 14. 11. 2009:
Gut, wieder einmal eine Stunde herum gespielt und der Lösung keinen Schritt näher gekommen. Ich habe IPv6 deaktiviert, auf macwindows.com gestöbert, einen alternativen Dateimanager (PathFinder) ausprobiert und unzählige Dateien kopiert. Mit dem PathFinder dürfte das Problem etwas besser sein, aber trotzdem verschwinden immer wieder Dateien.

Im Apple Supportforum habe ich (unter anderem) hier und hier etwas zu der Problematik gefunden. Das Problem scheint auch in Snow Leopard noch immer dasselbe zu sein. Naja, ich werde mich wohl einfach damit abfinden müssen, dass ich Dateifreigaben auf AFP-Basis benötige und hier meinen persönlichen Schlussstrich ziehen. Herzlichen Dank noch einmal an alle, die konstruktive Kommentare beigesteuert haben.

Update 19. 11. 2009:
Zwischenzeitlich habe ich mein MacBook auf Snow Leopard aktualisiert und das Problem scheint behoben zu sein. Erste Tests haben zumindest keine Datenverluste oder seltsame Verhaltensmuster gezeigt. Anscheinend hat Apple zumindest für das aktuelle Betriebssystem diesen Fehler (größtenteils) beseitigt … immerhin scheint das Problem für mich gelöst zu sein.

  1. Nabend
    Bei mir klappt es wunderbar.

  2. Das gleiche Verhalten konnte ich damals auch schob mit Windows Server 2003 und Tiger beobachten.
    Beim Server hat geholfen, wenn man die Shares nicht als SMB sondern als AFP (Apple Filing Protocol) frei gibt.

    AFP muss man auf dem Server zuerst über Systemsteuerung > Software > Windows Komponenten hinzufügen > Netzwerkdienste (oder ähnlich) aktivieren und die Freigabe über die Computerverwaltung erzeugen, weil man über den normalen Freigabe-Dialog keine AFP-Freigaben machen kann.
    Auf der Macseite musst du dann die Freigabe auch über „afp://meinserver/meinefreigabe“ verbinden. Bin mir aber nicht sicher, ob man AFP überhaupt auf Windows XP aktivieren kann.

  3. Ich vermute fast das liegt an Windows.
    Ich hab ein NAS welches ich auch über´s Netz mit SMB anspreche. Da sind auch Benutzer und Freigaben angelegt und noch nie Daten verschwunden.

    Auf dem NAS (QNAP 209) läuft aber ein Linux. Darum meine Vermutung dass Windows da irgendwas falsch versteht 😉

  4. Auch wenn dir das nicht weiterhilft – ich kopiere regelmäßig Dateien auf diese Art zwischen Mac und Windows 98 SE. Hier gibt es keine Probleme.

  5. @Aaron: AFP ist für den Heimserver natürlich eine Alternative. Ich muss zugeben, dass ich unter Linux schon einen AFP-Server laufen hatte (mit Bonjour, pipifein 😀 ) und das auch gut funktioniert hat. Für daheim werde ich das mal probieren – in Firmen oder unterwegs ist das halt leider nicht machbar.

    @Armin: Interessant, ich sollte es vielleicht auch mal mit einer Freigabe unter Windows 7 oder Linux probieren.

    @Andreas: Auch das ist interessant – vielleicht hat wirklich nur die Samba-Server-Implementierung von Windows XP / Server 2003 das Problem.

    Ich danke allen für ihre Kommentare – ich werde da mal ein wenig herum probieren. 🙂

  6. coffeelover

    Moin,

    ich will ja nicht kleinkariert erscheinen, aber gerade wenn es um so ein Prestigeprojekt wie Samba handelt, sollte man vielleicht doch zwischen dem Protokoll SMB und der nur unter UNIX-Systemen lauffähigen freien Softwaresuite Samba unterscheiden. MacOSX setzt ja schliesslich auch auf Samba, damit könnte man den Artikel auch so deuten (nach dem Titel), dass Kopieren auf einen anderen MAC Datenverlust bedeutet.

  7. @coffeelover: Ja du hast absolut recht. Eigentlich kann Samba nichts dafür – da es ja aus dem Teminal anstandslos geht, dürfte alleine der Finder schuld sein. Allerdings tritt es halt im Zusammenhang mit dem Samba-Client von Mac OS X auf. 🙁 Aber ich werde noch ein kleines Update in den Artikel schreiben, damit alles seine Ordnung hat. 🙂

    Ich habe jetzt gerade noch zwei andere Betriebssysteme auf der Serverseite ausprobiert. Zum einen Ubuntu 9.10, zum anderen Windows 7. Allerdings ändert das am Verhalten wenig. Wenn bereits Dateien in der Freigabe liegen, geht das Kopieren meistens gut. Ist die Freigabe hingegen leer, verschwinden die Dateien meistens.

  8. Ich nutze Freigaben zwischen Mac und Win in der gleichen Weise wie Du, habe das Problem aber nie gehabt. Von verschiedenen Macs aus (PPC und Intel) mit Leopard 10.x (in er jeweils aktuellen Version) auf verschiedene Windows Versionen (meist XP, auch mal Vista; Win7 bisher nicht).

    Du stellst es so dar, als wäre Dein Erlebnis der Beweis für einen Bug, um den Apple sich eigentlich zu kümmern hätte. Mir ist nicht klar, woher die Sicherheit entsteht, dass es nicht Windows oder eine beliebige Konfiguration des Netzwerks sein soll, sondern genau die Kombination Finder und Samba (wobei Apple nur im Fall von Finder wirklich reagieren müsste, nachdem Samba nicht in deren Hoheit liegt). Ich habe gelernt, dass ein angeblicher „Bug“ selten tatsächlich einer ist. Ganz besonders dann, wenn nicht alle Anwender in der gleichen Situation davon betroffen sind.

    Hast Du mal hier geguckt? macwindows.com
    Eine Webseite die sich speziell der Beziehung Mac und Win widmet, mit lauter Fehlermeldungen – und vielen Lösungen oder Lösungsansätzen – wie das, was Du beschreibst (also ein Verhalten dass bei Dir zwar prächtig nachvollziehbar ist, was aber vielleicht nur wenige Anwender ebenfalls bestätigen).
    Dein konkretes Problem habe ich dort bei einer oberflächlichen Suche nicht gefunden, aber Hinweise von Schwierigkeiten bei SMB-Zugriffen auf Freigaben zuhauf.

    Hast Du mal den Ordnernamen (bei Dir mit „!“) und den Freigabenamen (bei Dir „Share“) geändert? Könnte es etwas mit Deinen DNS-Einstellungen zu tun haben? Wurde IPv6 deaktiviert (das habe ich von der macwindows.com-Seite)? Hast Du vielleicht andere Dienste wie BlueHarvest od. ähnl. auf dem Mac laufen, die Probleme machen könnten? Welche Version (Service Pack) von XP verwendest Du? Welches Release auf der Leopard-Seite?

    Vielleicht hast Du das alles schon getestet. Dann nichts für ungut.

  9. An Mac-Rechnern besitze ich leider nur einen, aber hier war das Problem unter Tiger noch nicht. Auf der PC-Seite hatte ich das Problem unzählige Male mit allen Rechnern im Haushalt. XP SP2, XP SP3, Windows 7 (alle mit unterschiedlichen Patchzuständen, aber schon immer recht aktuell gehalten) und auch unterschiedliche Freigabe-/Ordnernamen.

    Am MacBook habe ich Leopard seit 10.5.2 und seit dem grundsätzlich immer auf den neuesten Stand gepatched.

    IPv6 ist auf der Serverseite deaktiviert, am Mac könnte ich das noch probieren. Danke für den Webseiten-Tipp, da werde ich noch ein wenig stöbern. Spezielle Dienste habe ich am Mac nicht laufen. Zugriff via Rechnername statt über die IP könnte ich natürlich auch noch probieren …

    Also ja, ich habe schon ziemlich viel herum probiert und da ja, wie im Artikel geschrieben, das Kopieren über das Terminal vom Mac OS X super funktioniert, vermute ich einfach einen kleinen Fehler im Finder. Vielleicht tritt er aber wirklich nur selten auf. 🙁

  10. > …und da ja, wie im Artikel geschrieben, das Kopieren über das Terminal vom Mac OS X super funktioniert, vermute ich einfach einen kleinen Fehler im Finder.

    Ah, ja, richtig. Das spricht nicht gerade für den Finder (aber sehr wohl für Deine Theorie eines Bugs genau dort).

    An sich sollten ja die Routinen über die das Kopieren selbst abgewickelt wird, in beiden Fällen die gleichen sein (also irgendein Cocoa-Framework).

    In diesem Sinne: Hast Du zufällig mal einen der Finder-Ersatz-Apps probiert? Nachdem ich sowas nicht verwende fällt mir jetzt nur PathFinder (http://www.cocoatech.com/) und Forklift (http://www.binarynights.com/) ein. Wäre interessant, ob das Problem dort ebenfalls auftritt.

    Hattest Du schon Gelegenheit, Snow Leopard zu testen?

  11. Mittlerweile läuft Snow Leopard auf meinem Gerät und der Fehler scheint behoben zu sein. Details könnt ihr dem aktualisierten Artikel entnehmen. 🙂

  12. Pingback: MacVillage.de » Umlaute – ein ewiges Problem

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.