Ich habe Musik, die ich in meinem Auto von einem FAT32-USB-Stick spiele. Der Ordner, in den ich Songs lege, befindet sich auf meiner EXT4-Festplatte. Ich füge regelmäßig Songs hinzu / entferne sie / retagge sie und möchte gelegentlich rsync
die Änderungen auf dem USB-Stick. Aber aus einem unbekannten Grund (vielleicht Berechtigungen?) rsync
Werden alle Dateien jedes Mal kopiert und nicht nur geändert. Ich rufe an rsync
wie:
rsync -vrlptgD source dest
Wie kann ich dafür sorgen, dass es so funktioniert, wie ich es möchte (dh ich weiß, wenn eine Datei nicht geändert wurde und kopiere sie nicht)?
--iconv
hilfreich, wenn ich vom Quell-Linux zum Dest-MacOSmodify-window=2
da=1
noch alle Dateien kopieren. Kopieren von NTFS nach FAT32. Danach ist es aber in Ordnung.--size-only
Flagge hinzugefügt , um Dateien zu überspringen, die in der Größe übereinstimmenZeitstempel in FAT32 unterscheiden sich zu stark von Unix-Zeitstempeln, um darauf zu vertrauen, dass sie nach Dateiänderungen suchen. Sie sollten auch die Option -c verwenden. Dadurch wird rsync gezwungen, alle Dateien zu vergleichen, um Änderungen zu erkennen, anstatt sich auf Zeitstempel zu verlassen. Es wird funktionieren, aber es ist langsamer.
Schließlich gibt es einige Optionen in Ihrem Befehl, die mit FAT32-Dateisystemen nicht funktionieren.
Wie das Drehmoment kommentiert, werden Sie die ungültigen Optionen nicht verletzen, sie werden einfach nichts tun. Aber Sie müssen -c Schalter hinzufügen.
Dies:
sollte funktionieren (zumindest funktioniert es auf meinem Computer).
quelle
Unter OSX hatte ich ein ähnliches Problem, und die Antwort von Glutanamate half nichts. Einige der Dateien unterscheiden sich um eine Stunde. Das kann daran liegen, dass ich die Zeitzonen relativ oft überschreite. Andere Dateien haben einen Tag oder sogar einen Monat Verspätung. Ich bin mir nicht sicher, warum das so ist. Die Überprüfung einiger Dateien mit sehr unterschiedlichen Zeitstempeln zeigt, dass sie tatsächlich identisch sind.
In jedem Fall sieht es so aus, als würde die
--size-only
Optionrsync
zum Ignorieren von Zeitstempeln für meine Zwecke funktionieren.-c
/--checksum
(wie von Javier erwähnt) funktioniert auch, dauert aber etwas länger. Ich habe es zeitlich festgelegt und es dauerte ungefähr eine Minute, um die Prüfsummen für das GB oder so in dem Unterverzeichnis zu vergleichen, mit dem ich arbeite. Natürlich hängt die Geschwindigkeit, mit der dies geschieht, vom langsamsten Laufwerk im System ab. In meinem Fall ist das die SD-Karte in meinem Telefon. Dies geschah jedoch, nachdem ich bereits einige Dateimanipulationen (einschließlich Prüfsummen) durchgeführt hatte, sodass möglicherweise viele der Dateien bereits in den RAM-Cache kopiert wurden.quelle
Sie sollten auch die beliebte Option -a vermeiden. Meine Empfehlung zu FAT32 ist
--no-p: keine Erlaubnis
--delete: lösche nicht passende Dateien und Ordner im Ziel (wenn du das wirklich willst)
--progress: Zeigt den Fortschritt während der Übertragung an. Es ist gut für große Dateien.
quelle
-vrc
ich dies zusätzlich auch tue-vrcz
Das sind zu viele Flags (-vrlptgD), die Sie verwenden. Denken Sie daran, dass rsync ein Linux-Dienstprogramm ist und nicht effektiv mit Fat32 und NTFS funktioniert.
Man müsste nach Tricks suchen, um sie anwenden zu können.
Versuchen:
Mehr Infos hier
quelle