
Ich möchte zwei Verzeichnisse "synchron" halten, so dass die lokale Version nur eineTeilmengeder Remote-Version. Die Synchronisierung sollte also dazu führen, dass alle Änderungen an der lokalen Teilmenge in das Remote-Verzeichnis übertragen werden und alle Änderungen am Remote-Verzeichnis, die an der relevanten Teilmenge vorgenommen werden, in das lokale Verzeichnis übernommen werden. Ich möchte jedoch nicht, dass neue Dateien oder Verzeichnisse aus dem Remote-Verzeichnis übernommen werden, ohne dass sie explizit kopiert werden.
(Der Grund dafür ist, dass ich eine sehr große Musiksammlung auf einem Remote-Server habe, aber aus Platzmangel nicht die gesamte Sammlung auf einmal auf meinen Laptop laden kann. Allerdings möchte ich den Teil der Sammlung, den ich hier lokal habe, mit dem entsprechenden Teil auf dem Server synchron halten, insbesondere für den Fall, dass ich ID3-Tags, Vorbis-Kommentare usw. aktualisiert habe.)
Das Flag von rsync --ignore-non-existing
schien aufgrund der Dokumentation auf der Manpage eine sinnvolle Möglichkeit hierfür zu sein, brachte aber nicht die erwarteten Ergebnisse. Es überspringt die erste Ebene der Unterverzeichnisse, obwohl beide Stammverzeichnisse dieselben untergeordneten Verzeichnisse enthalten.
Wenn beispielsweise das Remote-Verzeichnis und example.org:/path/to/it/
enthält und das lokale Verzeichnis und enthält , erhalte ich die folgenden Ergebnisse ...dir1
dir2
/other/dir/
dir1
dir2
$ rsync --dry-run --ignore-non-existing example.org:/path/to/it/ /other/dir/
skipping directory .
Oder versuchen Sie es mit einem Platzhalter...
$ rsync --dry-run --ignore-non-existing example.org:/path/to/it/* /other/dir/
skipping directory dir1
skipping directory dir2
Weiß jemand, wie man dieses Flag richtig verwendet? Oder verstehe ich seinen Zweck falsch? Oder wenn Sie andere Vorschläge haben, wie man eine Teilmenge eines Verzeichnisses synchron halten kann, lassen Sie es mich bitte wissen.
Danke. :)
Antwort1
Versuchen Sie es rekursiv:
rsync --recursive --dry-run --ignore-non-existing example.org:/path/to/it/ /other/dir/