Я использую rsync для копирования данных от локального диска LVM до локально смонтированного glusterfs, монтируются. Я пытаюсь ввести их, чтобы синхронизировать и в конечном счете сократить только к использованию glusterfs, монтируются. Вот команда, которую я использую:
rsync -av --inplace --no-whole-file /mnt/lvm-ext4/ /mnt/gluster
Мне в настоящее время делали нажатие исходных данных, и теперь пытаюсь догнать новые файлы, которые были добавлены. Объем LVM в настоящее время имеет приблизительно 14 ТБ данных приблизительно с 25 миллионами маленьких файлов, но я думаю, что rsync переносит с этим много файлов.
При наблюдении вывода этого второго выполнения я вижу, что большинство записей, которые производит rsync, является записями каталога с маленьким набором фактических перемещаемых файлов. Я полагаю, что это вызвано тем, что каталоги были затронуты, и их atime был обновлен, таким образом требуя rsync обновлять их на удаленной стороне. Я недавно узнал о nodiratime, монтируют опцию и применили это сегодня настолько, надо надеяться, которое поможет с будущими синхронизациями.
Существует ли способ иметь rsync, игнорируют включая эти обновления каталога и только передают новые/измененные файлы или новые каталоги? Я видел опции для - игнорировать-времена и - контрольная сумма, но они, кажется, все включено.
Я не думаю, что ваша проблема действительно связана с отметкой времени каталога.
При таком большом количестве данных rsync просто потребуется некоторое время, чтобы обнаружить измененные файлы и начать передать их. Если тем временем он обнаружит изменение каталога a / m / ctime, он скопирует это изменение на стороне получателя, но это должно произойти почти мгновенно.