Ich versuche, einen Verzeichnisbaum zu rekursiv zu kopieren, wobei Hardlinks in die Datei beibehalten werden. Bei Verwendung von gnu cp würde dies mit dem Flag -l funktionieren. cp würde dann die Verzeichnisstruktur neu erstellen, müsste aber nicht den Inhalt jeder Datei kopieren.
Dies ist vorläufig für eine Sicherung. Zuerst möchte ich eine billige (fest verknüpfte) Kopie der vorherigen Sicherung erstellen und dann das Quellverzeichnis über diese Kopie neu synchronisieren. Grob:
cp -r -l yesterdays_backup todays_backup
rsync -a source_dir todays_backup
Leider unterstützt cp von OSX das Flag -l nicht, soweit ich das beurteilen kann, unterstützt cpio kein rekursives Kopieren. Die andere Alternative ist pax, aber das führt dazu, dass die gesamte Verzeichnisstruktur kopiert wird:
pax -rw backups/yesterdays_backup backups/todays_backup
transformiert:
yesterdays_backup
|
\source_dir (...)
zu:
todays_backup
|
\backups
\yesterdays_backup
\source_dir(...)
Es sollte einen einfachen / offensichtlichen Weg geben, dies zu tun, aber ich bin derzeit ratlos ... Gibt es Alternativen zu cpio und pax? Ich möchte vermeiden, gnu cp installieren zu müssen.
Timemachine ist mir bekannt, aber dadurch werden verschlüsselte Verzeichnisse nicht ordnungsgemäß inkrementell gesichert.