Samstag, Juli 23, 2016

Von A nach B

Ich habe meine ganz eigene Strategie zum Sichern von Fotos. Ein Schritt in der Backupkette ist das Sichern der Fotos auf einer externen Festplatte. Der andere Schritt ist, den Inhalt dieser Platte auf eine andere Platte zu sichern. Das kann man über irgendwelche grafische Tools machen oder ein Image der einen Festplatte auf die andere draufjubeln. Da es sich aber um Fotos handelt, ist eine Dateibasierte Kopiermethode eigentlich die schlauere Wahl, da dabei im Falle eines Falles nicht gleich die ganze Platte hopps ist sondern nur einzelne Dateien.
Ich wäre nicht ich, wenn ich nicht eine Terminal-basierte Lösung für das Problem gesucht hätte …

Et voilà:
Unixoide Betriebssysteme bringen für genau den Zweck das Kommandozeilentool “rsync” mit. “rsync” gleicht zwei Verzeichnisse miteinander ab. Das geht sogar über’s Netzwerk, aber ich brauche das ja nur lokal (was mir niemand verbietet). Also habe ich kurz die Optionen in der Man-Page überflogen: aha, da gibt es ein “-a”, was gleichbedeutend ist mit “-rlpdgoD” und zum Archivieren gut sein soll. Und ein “-v”, was den Fortschritt ausgibt. Und mein Mac bindet externe Platten im Pfad “/Volumes” ein. Also probiere ich:

rsync -av /Volumes/Platte_1  /Volumes/Platte_2

Super Sache, das Kopieren geht direkt los!
Weil es viele Dateien sind, dauert das auch eine ganze Weile.
Aber die Fortschrittskontrolle zeigt mir: auf “Platte_2” wird alles in einen Ordner mit dem Namen “Platte_1” reinkopiert … So wollte ich das doch nicht haben!
Ich probiere verschiedene andere Optionen, sogar eine grafische Oberfläche für “rsync”, aber irgendwie will mir nicht das gelingen, was ich vorhabe, nämlich eine dateibasierte 1:1-Kopie zu erstellen.
Des Rätsels Lösung finde ich dann wieder in der Man-Page von “rsync” (die ich vielleicht sorgfältiger hätte lesen sollen), im “Usage”-Kapitel:

“A trailing slash on the source changes this behavior to avoid creating an additional directory level at the destination.”

TL;DR:
Wer also dasselbe vor hat wie ich, schreibt statt

rsync -av /Volumes/Platte_1  /Volumes/Platte_2

lieber

rsync -av /Volumes/Platte_1/  /Volumes/Platte_2
  1. Spätlese trocken

    Montag, August 1, 2016 um 19:50:57

    Sehr schön!
    Aber: unabhängig davon, dass ich a) zu blöd bin um überhaupt auf diese Kommandoebene zu kommen und b) ach vergiss es,
    dann muss man ja außerdem auch immernoch wissen, wo denn der liebe Mac seine Fotos versteckt. Seit dem letzten Betriebssystemupdate (es gibt nicht wirklich viele Dinge in meinem Leben die ich bereue - aber das letzte Update zählt mit Sicherheit dazu.) finde ich nämlich die Fotos nicht mehr auf der Festplatte. Ich habe nur noch die Möglichkeit, diese aus iPhoto zu ‘exportieren’. Wie so’n User. Echt jetzt.
    *gehtbrummelndab*

  2. Wolfram

    Dienstag, August 2, 2016 um 04:14:35

    Servus und Helau! Juchuh! Ein Kommentar!!!
    :-)
    Das Terminal ist in OSX auch nur ein Fenster wie jedes andere Programm auch. Finder -> Programme -> Dienstprogramme -> Terminal.
    “iPhoto” heißt jetzt halt “Fotos”. Also “Apfel+Leertaste”, “Fotos” eingeben und Return drücken. Deine Fotos sollten (egal ob Fotos oder iPhoto) in so einem Apple-Meta-Ordnerdingens drin stecken. Und dieses Ding wiederum ist im persönlichen Bilderordner beheimatet und heißt irgendwas mit “Mediathek”. Der Witz daran ist, dass dir OSX das als eine dicke Datei anzeigt. In echt aber sind da Ordner drin mit den ganzen Bildern - und die sieht man auch, wenn man auf die Datei Rechtsklickt und “Paketinhalt anzeigen” auswählt.
    Es würde mich aber echt wundern, wenn da irgendwas beim Konvertieren schief gegangen wäre.

Kommentar hinzufügen

Die Felder Name und Kommentar sind Pflichtfelder.