Rsync examples
Synced daten von a nach b und löscht nicht mehr in der Quelle vorhandene Dateien im Ziel (löschen kann man --delete-before oder -after auch zeiltich bestimmen)
rsync -rauv --delete --progress --partial --stats <a> /*<b>
Synced Dateeien von a nach b und löscht diese auf der Quelle a wenn erfolgreich kopiert.
rsync -avzh --progress --partial --stats --remove-source-files <user>@<server>:<a>/* <b>
also so etwas wie
mv -v -i quelle ziel
kopiert und löscht direkt nach dem kopieren bevor die nächste Datei kopiert wird (mv ist halt nur lokal).
Das Löschen auf der source Seite erfolgt irgendwann. D.h. wenn rsync abbricht (Platz alle) kann es sein, das obwohl Dateien schon transferiert wurden diese nicht gelöscht wurden.
Für die Problematik einfach kopieren solange Platz auf der Zielseite aber trotzdem die einzelnen Dateien immer gleich löschen wenn erfolgreich transferiert habe ich leider keinen geeigneten Mechanismus gefunden.
Option | Wirkung |
-u | überspringt Dateien, die im Ziel neuer sind als in der Quelle |
-v | zeigt während des Synchronisierens alle ausgeführten Schritte an |
-x | berücksichtigt nur Objekte, die sich im selben Dateisystem befinden |
-P | aktiviert folgende Optionen:--progress Fortschrittsanzeige beim Transfer anzeigen--partial Fortsetzung des Transfers bei Abbruch |
-n | simuliert nur was passieren würde ("dry run") |
--bwlimit | z.B. --bwlimit=30 limitiert die Bandbreite, die genutzt werden soll (Hilfreich, da rsync sonst die gesamte verfügbare Bandbreite in Anspruch nimmt und sonstige Anwendungen damit blockiert) |
--ignore-existing | Überspringt die vorhandenen Daten und schreibt nur die neuen |
-z | aktiviert die Komprimierung für die Datenübertragung (diese Option ist sinnvoll, wenn zwischen Quelle und Ziel eine langsame Verbindung besteht) |
-e | wählt die remote shell aus, die meisten werden SSH nutzen. Also -e ssh |
-E | behält die Ausführbarkeit von Dateien bei |
--exclude=Muster | schließt ein bestimmtes Muster von der Sicherung aus |
--exclude=ORDNER1 --exclude=ORDNER2 | schließt ORDNER1 und ORDNER2 von der Sicherung aus |
--delete | vergleicht Quellverzeichnisse und Zielverzeichnisse und sorgt dafür, dass Dateien, die im Quellverzeichnis nicht (mehr) vorhanden sind, im Zielverzeichnis gelöscht werden. Dies kann dazu führen, dass man ungewollt Dateien löscht, die man aber noch in der Sicherung behalten möchte. |
-b | sorgt dafür, dass durch die Option --delete gelöschte sowie alle veränderten Objekte gesichert werden (siehe dazu folgende Option --backup-dir= ) |
--backup-dir=Verzeichnis | gibt ein Verzeichnis für die gelöschten und geänderten Objekte an, siehe Option -b |
-c | aktiviert einen Dateivergleich, basierend auf Prüfsumme und nicht auf Größe und Zeitstempel. Die eigentliche Prüfsummenbildung dauert deutlich länger als der Vergleich Größe und Änderungs-Zeitstempel; andererseits werden überflüssige Kopiervorgänge (z.B. bei nur geänderter Änderungszeit) vermieden. |
--iconv | sorgt für eine Konvertierung der Dateinamen zwischen Systemen mit verschiedenen Codepages. Dieser Parameter kann erforderlich werden, wenn Dateien mit z.B. Umlauten im Namen übertragen werden. |
-h , --human-readable | verwandelt Zahlen in den log Dateien und auf stdout in ein besser für Menschen lesbares Format. Große Zahlen werden zu K (kilobytes), M (megabytes), oder G (gigabytes). Wenn diese Option angegeben wird ist K (1000), M (1000*1000), und G (1000*1000*1000). Wenn diese Option doppelt angegeben ist (-hh), wird mit 1024 anstelle von 1000 gerechnet. |
-H | Hardlinks werden berücksichtigt |
--stats | zeigt einen ausführlicheren Bericht am Ende einer Übertragung an. |
--size-only | sorgt dafür, dass Dateien mit gleicher Dateigröße übersprungen werden, unabhängig davon, ob sie sich in anderen Eigenschaften unterscheiden. Hilfreich bei Sicherungen auf Datenträger mit den Dateisystemen FAT oder NTFS, welche die unter Linux für die Verwaltung der Besitz- und Zugriffsrechte verwendete UNIX-FACL nicht unterstützen (weitere Einschränkungen). |
--progress | zeigt den Fortschritt des Kopiervorganges an. |