Ich versuche, eine Synchronisierung von einem über das Netzwerk bereitgestellten Volume auf meinen Desktop durchzuführen. Einige, jedoch nicht alle Dateien werden aufgrund eines Rsync-Fehlers nicht kopiert. Ich verwende Rsync 3.1.1 von Brew. Ich benutze diesen Befehl:
rsync -aXv /Volumes/Scotts\ Stuff/Backgrounds ~/Desktop/Temp
Ich erhalte jedoch diesen Fehler für einige der Dateien:
get_xattr_data: lgetxattr(""/Volumes/Scotts Stuff/Backgrounds/chalkboard-black.jpg"","com.apple.ResourceFork",88644) returned 65536
Irgendwelche Ideen? Einige Dateien mit erweiterten Attributen können problemlos kopiert werden, andere erhalten jedoch den Fehler. Wenn ich die Option "X" weglasse, funktioniert rsync, aber die erweiterten Attribute bleiben natürlich nicht erhalten.
rsync
beispielsweisels -al@ "/Volumes/Scotts Stuff/Backgrounds/chalkboard-black.jpg"
die Attributnamen und -werte für diese Datei aus. Gibt dies den Namen des Attributs (der Attribute) zurück? Zweitens können Sie rsync mit mehreren ausführlichen "v" -Parametern ausführen, um mehr Details über den Fehler zu erhaltenrsync -aXvvv /Volumes/Scotts\ Stuff/Backgrounds ~/Desktop/Temp
. Dies kann Ihnen helfen, die Ursache des Problems zu ermitteln.Antworten:
Das Problem, das ich auf vielen Versionen von MacOS X (Mountain Lion, Mavericks, Yosemite, El Capitan) reproduziert habe, die eine viel zu alte Version von
rsync
(2.6.9) und neuere Versionen von Macports (3.x) verwenden, wurde behoben mit der Version 3.1.2.Standard MacOS X rsync 2.6.9 → Fehler
Built rsync 3.1.2 → Erfolg
2 wichtige Details zu beachten:
-E
Option wurde geändert in-AX
(ACL & erweiterte Attribute)--fake-super
, um Dateien in schreibgeschützte Verzeichnisse kopieren zu könnenSo verwenden Sie es auf verschiedenen Macs
Wenn Sie einen Rsync auf einem Remote-Mac ausführen möchten, müssen Sie den
rsync
auf dem Remote-Mac eingebauten explizit mit der folgenden--rsync-command
Option aufrufen :quelle