Rsync Backup in Mac OS X

  1. Externes Laufwerk mit dem Mac verbinden (mounten), so dass es im Finder als solches  sichtbar ist.
  2. Auf dem Laufwerk (auch „Volume“ genannt) mit dem Finder einen Backup-Ordner anlegen. Z. Bsp.: 
    rsync_backup
  3. Mit Spotlight (cmd+Leertaste und Eingabe „Terminal“) die Kommandozeile starten (am Besten alle Arbeiten als root (Administrator) ausführen (dazu gleich „sudo su“ eingeben und einloggen)).
  4. Drag&Drop des Backup-Ordners vom Finder in Terminal
  5. Pfadangabe im Terminal mit der Maus markieren und via cmd+c in die Zwischenablage kopieren.
  6. Mit Backspace die Kommandozeile wieder leeren.
  7. In einen Texteditor (wer mag, kann auch auf der Kommandozeile vi verwenden) die Pfadangabe reinkopieren und in folgende Vorlage einbauen
  8.  rsync --recursive --human-readable --progress --cache --compress --update ORDNER_DER_GESICHERT_WERDEN_SOLL/* PFAD_ZUM_BACKUP_ORDNER_AUF_EXT_PLATTE

    Bsp.:

     rsync --recursive --human-readable --progress --cache --compress --update /Users/mustermann/Documents/* /Volumes/WD_MacOSExtended/rsync_backup/
  9. Vor das Kommando in die ERSTE Zeile noch das „shebang“ einbauen:
    #!/bin/bash
  10. Datei sichern. Z. Bsp. mit dem Namen
    backupToExternalDisk.sh

    und im Terminal mittels

  11. chmod +x backupToExternalDisk.sh

    ausführbar machen.

  12. Weitere Datei in Texteditor anlegen. Z. Bsp. mit dem Namen
    de.DEIN_FIRMEN_NAME.rsyncBackup.plist
  13. Folgenden Code einfügen (Achtung: Pfade, Label und Urhrzeiten enstprechend anpassen – aktuell ist das Skript auf 13:03 terminiert):
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>Label</key>
        <string>de.DEIN_FIRMEN_NAME.rsyncBackup</string>
        <key>OnDemand</key>
        <true/>
        <key>LowPriorityIO</key>
        <true/>
        <key>Nice</key>
        <integer>12</integer>
        <key>ProgramArguments</key>
        <array>
            <string>/Users/mustermann/bin/backupToExternalDisk.sh</string>
        </array>
        <key>StartCalendarInterval</key>
        <dict>
            <key>Hour</key>
            <integer>13</integer>
            <key>Minute</key>
            <integer>03</integer>
        </dict>
        <key>StandardErrorPath</key>
        <string>/tmp/backupToExternalDisk.err</string>
    
        <key>StandardOutPath</key>
        <string>/tmp/backupToExternalDisk.out</string>
    </dict>
    </plist>
  14. Die Uhrzeit für einen ersten Testlauf auf 5 Minuten von jetzt einstellen und speichern.
  15. In den launchd-Deamon laden mittels
    launchctl load de.DEIN_FIRMEN_NAME.rsyncBackup.plist
  16. 5 Minuten warten und prüfen, ob der Prozess gestartet wurde indem man in /tmp/backupToExternalDisk.out oder /tmp/backupToExternalDisk.err schaut.
  17. Den launchd-Deamon mittels
    launchctl unload de.DEIN_FIRMEN_NAME.rsyncBackup.plist

    wieder entladen.

  18. Die Uhrzeit in de.DEIN_FIRMEN_NAME.rsyncBackup.plist auf die finale Zeit einstellen und die Datei in den Ordner /System/Library/LaunchAgents verschieben.
  19. Neu starten.
  20. Kontrollieren, ob der Backup-Dienst aktiviert wurde mit launchctl list de.DEIN_FIRMEN_NAME.rsyncBackup
  21. Fertig
Advertisements
Dieser Beitrag wurde unter Uncategorized veröffentlicht. Setze ein Lesezeichen auf den Permalink.

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s