У меня есть музыка, которую я играю в своей машине, с USB-накопителя FAT32. Папка, в которую я помещаю песни, хранится на моем жестком диске EXT4. Я регулярно добавляю / удаляю / переписываю песни и иногда хочу внести rsync
изменения в флешку. Но по какой-то неизвестной причине (возможно, разрешения?), rsync
Копирует все файлы каждый раз, а не только измененные. Я звоню rsync
как:
rsync -vrlptgD source dest
Как я могу заставить его работать так, как я хочу (т.е. знать, когда файл не был изменен, и не копировать его)?
--iconv
полезной при переходе с исходного linux на dest MacOSmodify-window=2
потому что=1
все еще копирует все файлы. Копирование из NTFS в FAT32. После этого все нормально.--size-only
флаг, чтобы пропустить файлы, которые соответствуют по размеруОтметки времени в FAT32 слишком отличаются от отметок Unix, чтобы полагаться на них при проверке изменений файлов, также следует использовать ключ -c, он заставит rsync сравнивать все файлы, чтобы обнаружить изменения, а не полагаться на отметки времени. Это будет работать, но медленнее.
Наконец, в вашей команде есть несколько параметров, которые не могут работать с файловыми системами FAT32.
Как комментарии htorque, неверные параметры не повредят вам, они просто ничего не сделают. Но вы должны добавить ключ -c.
Эта:
должно работать (по крайней мере, это работает на моем компьютере).
источник
У меня была похожая проблема под OSX, и ответ Glutanamate не помог. Некоторые файлы отличаются на час; это может быть потому, что я склонен пересекать часовые пояса относительно часто. Другие файлы отключены на день или даже месяц. Я не уверен, почему это так. Контрольная сумма для некоторых файлов с сильно различающимися временными метками показывает, что они действительно идентичны.
В любом случае, похоже, что
--size-only
опция, которая указываетrsync
игнорировать метки времени, будет работать для моих целей.-c
/--checksum
(как упомянуто Хавьером) также работает, но занимает немного больше времени. Я рассчитал время, и мне потребовалось около минуты, чтобы сравнить контрольные суммы для ГБ или около того в подкаталоге, с которым я работаю. Конечно, скорость, с которой это происходит, будет зависеть от самого медленного диска в системе; в моем случае это SD-карта в моем телефоне. Однако это было после того, как я уже делал некоторые манипуляции с файлами (включая контрольные суммы), поэтому многие из файлов, возможно, уже были скопированы в кэш-память ОЗУ.источник
Вам также следует избегать использования популярной опции -a. Моя рекомендация по FAT32
--no-p: нет разрешения
--delete: удалить несопоставленные файлы и папку в месте назначения (если вы действительно этого хотите)
--progress: показать прогресс во время передачи. Это хорошо для больших файлов.
источник
-vrc
, я тоже-vrcz
Это слишком много флагов (-vrlptgD), которые вы используете. Помните, что rsync - это утилита для Linux, которая не работает эффективно с Fat32 и NTFS.
Вы должны охотиться за трюками, чтобы иметь возможность использовать его.
Пытаться:
Больше информации здесь
источник