Wenn Sie keine symbolischen Links kopieren müssen, können Sie auf der Empfangsseite ein Verzeichnis einrichten, das das Verzeichnislayout auf der Sendeseite nachahmt, wobei jeder Link auf das beabsichtigte Ziel zeigt.
Ein einziger Ansatz wäre, Symlinks source1
und source2
auf der Empfangsseite zu haben und den Empfangsprozess mit auszuführen --keep-dirlinks
.
Wenn Sie Symlinks übertragen müssen, können Sie --no-implied-dirs
für Sie arbeiten. Wieder hätten Sie Symlinks auf der Empfangsseite, aber diesmal innerhalb einer Verzeichnisstruktur, dh home/me/
Verzeichnisse (innerhalb des rsync-Zielordners, wo immer Sie dies wünschen) und home/me/source1
wäre ein Symlink zu /home/someoneelse/dest1
. Wenn Sie nicht verwenden --keep-dirlinks
, sollten Sie sich nicht source1
selbst übertragen (da dies den Symlink löschen und durch ein Verzeichnis ersetzen würde), sondern alle darin enthaltenen Dateien source1
, dh /home/me/source1/*
. Verwenden Sie shopt -s dotglob
diese Option , um auch darin versteckte Dateien abzugleichen.
All dies wird nur aus der Ferne getestet: Ich weiß, dass irgendwann etwas in dieser Richtung funktioniert hat, aber momentan sind keine Details oder Befehle verfügbar. Testen Sie daher mögliche Kombinationen, insbesondere Änderungen zwischen Verzeichnissen und Symlinks zu Verzeichnissen, bevor Sie diese in einem Produktionssetup verwenden.