• Wieder einmal haben uns unsere Apfeltalker tolle Fotos zur Abstimmung eingesandt. Welches ist Euer Favorit? Stimmt mit ab! Hier geht es zur Abstimmung --> Klick
  • Es ist bereits Apfeltalk-Tradition und wir möchten sie auch in diesem Jahr fortsetzen: Unser Apfeltalk-Weihnachtslogo-Wettbewerb hat begonnen! Gestaltet für uns das Weihnachtsbanner, das im Monat Dezember bis zum Weihnachtsfest unsere Webseite schmücken soll. Lasst Eurer Kreativität freien Lauf! Hier geht es zum Wettbewerb --> Klick

Automatische Synchronisation zwischen 2 Festplatten

  • Ersteller Ersteller Gelöschtes Mitglied 254503
  • Erstellt am Erstellt am

Gelöschtes Mitglied 254503

Gast
Hallo Leute

Folgendes. Auf meinem Server mit Windows habe ich eine Konfigurationsdatei die nach jedem Neustart ausführt wird und so die interne SSD auf eine externe SSD spiegelt.
Dabei werden nur neue Dateien kopiert bzw. gelöschte Dateien von der externen SSD gelöscht.
Sowas suche ich nun für MacOS.
Hab schon einige Programme gefunden, hätte aber auch nichts gegen eine solche Konfigurationsdatei oder Skript wie unter Windows.
Kann mir da jemand helfen?
Danke im Voraus.
 
sowas geht mit rsync

zb
Code:
#!/bin/bash

# Quell- und Zielordner anpassen
SOURCE="/Users/DEINNAME/Quellordner/"
DESTINATION="/Users/DEINNAME/Zielordner/"

# Synchronisation starten
rsync -av  "$SOURCE" "$DESTINATION"

echo ""
echo "Synchronisation abgeschlossen."

als Script (sync.sh) speichern, und entsprechenden aufruf planen

Damit kopiert er aber imemr alles, da apple die rsync version gewechselkt hat (auf openrsync). du kannst aber auch die "alte" version installieren mit brew, dann macht er gezielt nur die neuen/geänderten daten

Code:
/opt/homebrew/bin/rsync -av --update --progress "$SOURCE" "$DESTINATION"
 
Zuletzt bearbeitet:
Danke für eure Antworten.
Bisher verstehe ich nur Bahnhof. 😂
Kann ich das so kopieren wie Voyager geschrieben hat?
Und wie kann ich die Ausführung planen?
Geht das über Anmeldeobjekte?
 
Geht das über Anmeldeobjekte?
als script? glaub das geht

Code:
#!/bin/bash

# Quell- und Zielordner anpassen
SOURCE="/Users/DEINNAME/Quellordner/"
DESTINATION="/Users/DEINNAME/Zielordner/"

# Synchronisation starten
rsync -avh --update --progress  "$SOURCE" "$DESTINATION"

echo ""
echo "Synchronisation abgeschlossen."

müsste so sein , oder hat @Marcel Bresink noch eine Idee? (ich schreib mehr Debian Skripte als apple)

das ganze als script, zb "kopieren.sh" speichern, ausführbar machen, und mal testhalber starten. und schauen ob ne Fehlermeldung kommt
 
als script? glaub das geht

Code:
#!/bin/bash

# Quell- und Zielordner anpassen
SOURCE="/Users/DEINNAME/Quellordner/"
DESTINATION="/Users/DEINNAME/Zielordner/"

# Synchronisation starten
rsync -avh --update --progress  "$SOURCE" "$DESTINATION"

echo ""
echo "Synchronisation abgeschlossen."

müsste so sein , oder hat @Marcel Bresink noch eine Idee? (ich schreib mehr Debian Skripte als apple)

das ganze als script, zb "kopieren.sh" speichern, ausführbar machen, und mal testhalber starten. und schauen ob ne Fehlermeldung kommt
Bildschirmfoto 2026-07-06 um 16.00.17.pngBildschirmfoto 2026-07-06 um 16.01.00.png

Habe das mal so eingegeben. Speichern kann ich nur als .scpt
Wenn ich im Skripteditor oben rechts auf das Playsymbol klicke, erhalte ich einen Syntaxfehler. Ist das normal?

Sorry wenn es vielleicht blöde Fragen sind. Beschäftige mich bei macOS das erste mal mit sowas.

Bildschirmfoto 2026-07-06 um 16.16.17.png
Und beim Versuch, das Skript ausführbar zu machen sagte er immer, dass eine solche Datei nicht gefunden wurde. Die ist aber in dem Ordner drin.
 
Zuletzt bearbeitet von einem Moderator:
Zu dem ersten Problem: versuch mal die einfachen Anführungszeichen anstatt den doppelten Gänsefüßchen.

Und zu deinem zweiten Problem: man sieht anhand des Prompt, dass du bereits in deinem Benutzerordner stehst. Dann sollte der Pfad entweder mit /users/... anfangen, um von der obersten Ebene zu starten oder du lässt den Anfang weg und startet mit Dokumente/...

hth
 
Zu dem ersten Problem: versuch mal die einfachen Anführungszeichen anstatt den doppelten Gänsefüßchen.

Und zu deinem zweiten Problem: man sieht anhand des Prompt, dass du bereits in deinem Benutzerordner stehst. Dann sollte der Pfad entweder mit /users/... anfangen, um von der obersten Ebene zu starten oder du lässt den Anfang weg und startet mit Dokumente/...

hth
Vielen Dank euch allen für die Hilfe. Ich bin leider sehr unbeleckt auf dem Gebiet und habe es einfach nicht zum laufen bekommen.
Habe nebenbei noch Google gefragt und mir einen Code schreiben lassen und als .app gespeichert. Nun funktioniert die Synchronisation wie gewünscht.

Bildschirmfoto 2026-07-06 um 16.46.09.png

Bildschirmfoto 2026-07-06 um 16.46.34.png
 
ahh perfekt dass du nen Weg gefunden hast der klappt.
Google sagte, dass deine Zeilen komplett richtig waren. Jedoch bekam ich immer einen Syntax Error. Laut Google würde das an Apple Skript liegen. Ich plappere aber gerade nur alles nach. 😂
Mein Hauptproblem war jedoch, bei jedem Versuch die Datei über das Terminal ausführbar zu machen, habe ich einen Fehler bekommen, die Datei würde nicht existieren.
Jedenfalls kam da von der KI der Vorschlag das als ausführbare App zu machen. Die ziehe ich mir mal in die Anmeldeobjekte rein und schaue was nach einem Neustart passiert.
Aktuell muss ich nach einem Doppelklick auf die App noch händisch auf "Ausführen" klicken.
 
  • Like
Reaktionen: voyager
ich hab ehrlich gesagt noch nie mit der Script App gearbeitet. aber solange jetzt alles funzt, kisses ja gut
 
Das Problem dürfte gewesen sein, dass @voyager Shell-Script eigentlich nichts mit Apple Script zu tu hat. Das war mir aber auch erst zu spät aufgefallen, der erste Teil meiner Antwort war daher nicht korrekt.

Du hättest das Script von ihm einfach mittels eines normalen Texteditors in eine Datei mit beliebigen Namen (und ggf. ohne Erweiterung) speichern müssen und ausführbar machen müssen. Dann wäre es z.B. im Terminal aufrufbar gewesen.
 
Jedoch bekam ich immer einen Syntax Error. Laut Google würde das an Apple Skript liegen.

Das Problem ist, dass Du das falsche Programm verwendet hast. @voyager hat ein normales Unix-Shell-Skript angegeben, hier in diesem Fall für die Variante "bash" (erkennbar am Kommentar in der ersten Zeile), die sogenannte "Bourne-Again-Shell". So ein Skript kann man mit jedem beliebigen Text-Editor eingeben, z.B. mit TextEdit. Wenn man die Textdatei als ausführbar markiert, kann ein Unix-System wie macOS das Skript sofort laufen lassen.

macOS 26 enthält eingebaut übrigens 6 verschiedene Shells, also skriptfähige Befehlsinterpreter, die man alle verwenden kann. (Bourne-Again-Shell, C-Shell, DA-Shell, K-Shell, POSIX-Shell, TC-Shell und Z-Shell)

Der Skripteditor ist eigentlich für etwas ganz Anderes gedacht, nämlich zum Programmieren in der Sprache "AppleScript". AppleScript stammt aus der Zeit von "Mac OS", also noch vor dem Jahr 2000, als Apple noch ein ganz anderes Betriebssystem (ohne Unix-Funktionen) verwendet hat. Dort war die Eingabe von Textbefehlen nicht vorgesehen. AppleScript sollte diese Einschränkung aufheben, indem grafische Programme mit Mausbedienung mit einer speziellen, skriptbaren Sprache quasi über Text "ferngesteuert" werden konnten.

Was die KI für Dich geschrieben hat, ist in Wirklichkeit ein Programm in der Sprache "AppleScript", das in einer Fensterumgebung als Unterprogramm eine Unix-Shell aufruft, die dann nochmal als Unterprogramm den Synchronisationsbefehl "rsync" startet.
 
@hotrs @Marcel Bresink
Richtig ja. Das hatte die KI mir auch gesagt und ich habe mittels Hilfe derer versucht, das über den Editor zu machen. Aber beim Versuch über das Terminal die Datei ausführbar zu machen, habe ich auch die Fehlermeldung bekommen, eine solche Datei würde nicht existieren.
Und da ich absolut keine Ahnung von der Materie habe und nur das versuchen kann, was ich vordiktiert bekomme, kann ich nicht beurteilen, woran es lag. Sicherlich aber an mir. 😅
Fand dann die Idee mit der kleinen App ganz nett.
Aber danke für eure Erklärungen.
 
  • Like
Reaktionen: voyager
Aber beim Versuch über das Terminal die Datei ausführbar zu machen, habe ich auch die Fehlermeldung bekommen, eine solche Datei würde nicht existieren.

Das ist richtig. In dem Dateipfad sind zwei Fehler und noch zwei zusätzliche Probleme:
  • Der führende Slash ("/") fehlt. Das heißt, dass die Angabe nicht absolut, sondern nur relativ, vom aktuellen Ordner aus, interpretiert werden soll. Wie im Prompt angezeigt, ist der aktuelle Ordner gerade "~", also Dein privater Benutzerordner. In dem gibt es wahrscheinlich keinen Ordner "users".
  • Den Ordner "Dokumente" gibt es üblicherweise nicht. Er heißt in Wirklichkeit "Documents".
  • Den Ordner "users" gibt es so nicht. Er heißt "Users". Dieses Problem wird in einer Standardinstallation von macOS aber automatisch korrigiert.
  • Es ist ungünstig, die Textdatei mit dem Kürzel ".scpt" zu versehen, da sie dann beim Doppelklick fälschlicherweise als AppleScript-Programm angesehen wird und nicht als echtes Skript. Das hätte aber trotzdem geklappt.
Korrekt wäre gewesen:
Documents/Backup.scpt oder
/Users/tom/Documents/Backup.scpt
 
  • Like
Reaktionen: simulacrum