Rsync: Unterschied zwischen den Versionen
Erscheinungsbild
	
	
KKeine Bearbeitungszusammenfassung  | 
				|||
| (164 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
'''rsync''' -   | '''rsync''' - Synchronisation von Verzeichnisbäumen  | ||
==   | == Beschreibung ==  | ||
; Verzeichnisse Synchronisieren  | |||
''rsync'' synchonisiert zwei [[Verzeichnis]]se  | |||
* lokal oder remote  | |||
; Größe und Erstellungszeit  | |||
Zunächst werden Größe und Erstellungszeit verglichen  | |||
* sodass nur die Dateien behandelt werden müssen, bei denen es Änderungen gegeben hat  | |||
* Sind Quelle und Ziel lokale Pfade, werden die betroffenen Dateien normal kopiert  | |||
; Delta-Transfer-Algorithmus  | |||
Wenn Quelle oder Ziel remote (SSH/rsync-daemon)  | |||
* Nur geänderte Teile von Dateien werden übertragen  | |||
; Eigenschaften  | |||
* unidirektional  | * unidirektional  | ||
* Delta-Transfer-Algorithmus  | * Delta-Transfer-Algorithmus  | ||
| Zeile 8: | Zeile 22: | ||
** Größe und Änderungszeit von Dateien in Quelle und Ziel werden verglichen  | ** Größe und Änderungszeit von Dateien in Quelle und Ziel werden verglichen  | ||
* Daten können mit SSH verschlüsselt übertragen werden  | * Daten können mit SSH verschlüsselt übertragen werden  | ||
* Verzeichnisse können auf unterschiedlichen Rechnern liegen  | * Verzeichnisse können auf unterschiedlichen Rechnern liegen  | ||
* wird häufig für die Erstellung von Backups verwendet  | * wird häufig für die Erstellung von Backups verwendet  | ||
==   | ; Backup  | ||
Aufgrund dieser Eigenschaften ist rsync geeignet, um Datensicherungen durchzuführen  | |||
* Für regelmäßige automatisierte Sicherungen eignen sich Programme wie [[rsnapshot]] oder [[Back In Time]], die ihrerseits wieder rsync verwenden  | |||
* Wenn man allerdings Verzeichnisse zwischen zwei Systemen wie Laptop und Desktop-Rechner synchronisieren möchte, sind Programme wie [[Unison]] besser geeignet  | |||
; Achtung  | |||
<blockquote>  | |||
Vor dem Ausführen von rsync muss sicher sein, dass die korrekten Optionen und Parameter angegeben wurden  | |||
* Fehlerhafte Anwendung kann zu Datenverlust führen  | |||
* Dry run!  | |||
</blockquote>  | |||
== Installation ==  | |||
<syntaxhighlight lang="bash" highlight="1" line copy>  | |||
sudo apt install rsync  | |||
</syntaxhighlight>  | |||
== Aufruf ==  | |||
<syntaxhighlight lang="bash" highlight="1" line copy>  | |||
rsync [OPTIONEN] QUELLE ZIEL  | |||
</syntaxhighlight>  | |||
= Optionen =  | === Optionen ===  | ||
{| class="wikitable"  | {| class="wikitable sortable options big gnu"  | ||
|-  | |||
! Unix !! GNU !! Parameter !! Beschreibung  | |||
|-  | |-  | ||
| -a || || || '''[[#Archivmodus|Archivmodus]]''' (-rlptgoD)  | |||
|-  | |-  | ||
| -  | | -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 gleichen 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 || || beispielsweise  --bwlimit=30 limitiert die Bandbreite, die genutzt werden soll (Hilfreich, da rsync sonst die komplett verfügbare Bandbreite in Anspruch nimmt und sonstige Anwendungen damit blockiert)  | ||
|-  | |-  | ||
| -  | | -z || || || aktiviert die Komprimierung für die Datenübertragung (diese Option ist sinnvoll, wenn zwischen Quelle und Ziel eine langsame Verbindung besteht)  | ||
|-  | |-  | ||
| -  | | -e || || || damit lässt sich die remote shell auswählen, die meisten werden SSH nutzen also -e ssh  | ||
|-  | |-  | ||
|   | | || --exclude=|| Muster|| schließt ein bestimmtes Muster von der Sicherung aus  | ||
|-  | |-  | ||
|   | | || --exclude= || ORDNER || schließt ORDNER aus, kann mehrfach angegeben werden (bezieht sich immer auf QUELLE und deren Unterordner!)  | ||
|-  | |-  | ||
|   | | || --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, das 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 || Verzeichnis für gelöschte Objekte (siehe -b)  | |||
|-  | |||
| -c || || || sorgt dafür, dass zum Vergleich der Dateien Checksummen gebildet werden und nicht nur die Größe und der Timestamp verglichen werden  | |||
* Diese Methode kann etwas länger dauern  | |||
|-  | |||
| || --iconv|| || sorgt für eine Konvertierung der Dateinamen zwischen Systemen mit verschiedenen Codepages  | |||
* Dieser Parameter kann erforderlich werden, wenn Dateien mit beispielsweise  Umlauten im Namen übertragen werden  | |||
|-  | |||
| || --stats|| || zeigt einen ausführlicheren Report 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)  | |||
|-  | |-  | ||
|}  | |}  | ||
==== Archivmodus ====  | |||
; Beibehaltung von Dateieigenschaften  | |||
=   | Die Option '''-a''' umfasst die Optionen '''-rlptgoD'''  | ||
==   | {| class="wikitable options big"  | ||
! Unix !! Beschreibung  | |||
|-  | |||
| -r || Unter[[verzeichnis]]se kopieren  | |||
|-  | |||
| -l || [[Symbolische Links]] kopieren  | |||
|-  | |||
| -p || [[Zugriffsrechte]] beibehalten  | |||
|-  | |||
| -t || [[Zeitstempel]] beibehalten  | |||
|-  | |||
| -g || [[Gruppenrechte]] beibehalten  | |||
|-  | |||
| -o || [[Besitzrechte]] beibehalten (nur root)  | |||
|-  | |||
| -D || [[Gerätedateien]] beibehalten (nur root)  | |||
|}  | |||
=== Argumente ===  | |||
<syntaxhighlight lang="bash" highlight="1" line copy>  | |||
rsync -a /home/user/ /data/backup  | |||
</syntaxhighlight>  | |||
Erzeugt Verzeichnis user/ in /data/backup  | |||
* also wird in /data/backup/user geschrieben  | |||
* Daten aus /home/user/ werden in das Verzeichnis /data/backup geschrieben  | |||
; Ohne Slash  | |||
* beim Quellverzeichnis wird im angegebenen Zielverzeichnis zusätzliches Unterverzeichnis erstellt  | |||
<noinclude>  | |||
== Anhang ==  | |||
=== Siehe auch ===  | |||
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}  | |||
; Grafische Benutzeroberflächen  | |||
{| class="wikitable  options big"  | |||
|-  | |||
! Programm !! Beschreibung  | |||
|-  | |||
| [[Grsync]] || Grafische Benutzeroberfläche für rsync  | |||
|-  | |||
| [[Unison]] || Grafische Oberfläche, erlaubt den Abgleich in beide Richtungen  | |||
|}  | |||
=== Dokumentation ===  | |||
; Man-Page   | |||
# [https://manpages.debian.org/stable/rsync/rsync.1.en.html rsync(1)]  | |||
=== Links ===  | |||
==== Projekt ====  | |||
# https://rsync.samba.org  | |||
==== Weblinks ====  | |||
# https://de.wikipedia.org/wiki/Rsync  | |||
{{SORTIERUNG:rsync}}  | |||
{{DISPLAYTITLE:rsync}}  | |||
[[Kategorie:Rsync]]  | |||
</noinclude>  | |||
Aktuelle Version vom 23. Oktober 2025, 08:27 Uhr
rsync - Synchronisation von Verzeichnisbäumen
Beschreibung
- Verzeichnisse Synchronisieren
 
rsync synchonisiert zwei Verzeichnisse
- lokal oder remote
 
- Größe und Erstellungszeit
 
Zunächst werden Größe und Erstellungszeit verglichen
- sodass nur die Dateien behandelt werden müssen, bei denen es Änderungen gegeben hat
 - Sind Quelle und Ziel lokale Pfade, werden die betroffenen Dateien normal kopiert
 
- Delta-Transfer-Algorithmus
 
Wenn Quelle oder Ziel remote (SSH/rsync-daemon)
- Nur geänderte Teile von Dateien werden übertragen
 
- Eigenschaften
 
- unidirektional
 - Delta-Transfer-Algorithmus
- Nur geänderte Teile einer Datei werden übertragen
 
 - Quick-Check-Algorithmus
- Größe und Änderungszeit von Dateien in Quelle und Ziel werden verglichen
 
 - Daten können mit SSH verschlüsselt übertragen werden
 - Verzeichnisse können auf unterschiedlichen Rechnern liegen
 - wird häufig für die Erstellung von Backups verwendet
 
- Backup
 
Aufgrund dieser Eigenschaften ist rsync geeignet, um Datensicherungen durchzuführen
- Für regelmäßige automatisierte Sicherungen eignen sich Programme wie rsnapshot oder Back In Time, die ihrerseits wieder rsync verwenden
 - Wenn man allerdings Verzeichnisse zwischen zwei Systemen wie Laptop und Desktop-Rechner synchronisieren möchte, sind Programme wie Unison besser geeignet
 
- Achtung
 
Vor dem Ausführen von rsync muss sicher sein, dass die korrekten Optionen und Parameter angegeben wurden
- Fehlerhafte Anwendung kann zu Datenverlust führen
 - Dry run!
 
Installation
sudo apt install rsync
Aufruf
rsync [OPTIONEN] QUELLE ZIEL
Optionen
| Unix | GNU | Parameter | Beschreibung | 
|---|---|---|---|
| -a | Archivmodus (-rlptgoD) | ||
| -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 gleichen 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 | beispielsweise --bwlimit=30 limitiert die Bandbreite, die genutzt werden soll (Hilfreich, da rsync sonst die komplett verfügbare Bandbreite in Anspruch nimmt und sonstige Anwendungen damit blockiert) | ||
| -z | aktiviert die Komprimierung für die Datenübertragung (diese Option ist sinnvoll, wenn zwischen Quelle und Ziel eine langsame Verbindung besteht) | ||
| -e | damit lässt sich die remote shell auswählen, die meisten werden SSH nutzen also -e ssh | ||
| --exclude= | Muster | schließt ein bestimmtes Muster von der Sicherung aus | |
| --exclude= | ORDNER | schließt ORDNER aus, kann mehrfach angegeben werden (bezieht sich immer auf QUELLE und deren Unterordner!) | |
| --delete | vergleicht Quellverzeichnisse und Zielverzeichnisse und sorgt dafür, dass Dateien, die im Quellverzeichnis nicht (mehr) vorhanden sind, im Zielverzeichnis gelöscht werden
  | ||
| -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 | Verzeichnis für gelöschte Objekte (siehe -b) | |
| -c | sorgt dafür, dass zum Vergleich der Dateien Checksummen gebildet werden und nicht nur die Größe und der Timestamp verglichen werden
  | ||
| --iconv | sorgt für eine Konvertierung der Dateinamen zwischen Systemen mit verschiedenen Codepages
  | ||
| --stats | zeigt einen ausführlicheren Report 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
  | 
Archivmodus
- Beibehaltung von Dateieigenschaften
 
Die Option -a umfasst die Optionen -rlptgoD
| Unix | Beschreibung | 
|---|---|
| -r | Unterverzeichnisse kopieren | 
| -l | Symbolische Links kopieren | 
| -p | Zugriffsrechte beibehalten | 
| -t | Zeitstempel beibehalten | 
| -g | Gruppenrechte beibehalten | 
| -o | Besitzrechte beibehalten (nur root) | 
| -D | Gerätedateien beibehalten (nur root) | 
Argumente
rsync -a /home/user/ /data/backup
Erzeugt Verzeichnis user/ in /data/backup
- also wird in /data/backup/user geschrieben
 - Daten aus /home/user/ werden in das Verzeichnis /data/backup geschrieben
 
- Ohne Slash
 
- beim Quellverzeichnis wird im angegebenen Zielverzeichnis zusätzliches Unterverzeichnis erstellt
 
Anhang
Siehe auch
- Grafische Benutzeroberflächen
 
| Programm | Beschreibung | 
|---|---|
| Grsync | Grafische Benutzeroberfläche für rsync | 
| Unison | Grafische Oberfläche, erlaubt den Abgleich in beide Richtungen | 
Dokumentation
- Man-Page
 
Links
Projekt
Weblinks