Я ежедневно выполняю внешнее резервное копирование моей системы ZFS, используя инкрементную отправку zfs, направленную через ssh, используя буфер для буферизации потока и отслеживания его хода. Я могу оценить размер передачи, выполнив пробный прогон, используя флаг -n, но фактическая передача обычно намного больше. Например, команда пробного запуска:
sudo zfs send -n -v -R -i tank/Media @ replication-2016-01-20-22-30 tank/Media @ replication-2016-01-21-10-05 | мбуффер | ssh peteman@127.0.0.1 -p 2222 '/usr/local/bin/zfs receive -nFduv tank backup'
оценивает размер как 117M с выходом
отправить из @ replication-2016-01-20-22-30 в tank/Media @ replication-2016-01-21-10-05 ориентировочный размер 117M
Но когда я убираю флаг -n и передаю поток командой
sudo zfs send -R -i tank/Media @ replication-2016-01-20-22-30 tank/Media @ replication-2016-01-21-10-05 | мбуффер | ssh peteman@127.0.0.1 -p 2222 '/usr/local/bin/zfs receive -Fduv tank backup'
отчет о состоянии показывает намного больший поток, в результате этой конкретной отправки было получено 1041 МБ (примерно в 9 раз больше, чем предполагалось при пробном запуске).
Итог: 1041 МБайт за 6 ч 41 мин. 44,2 КБ / с
Я хотел бы устранить это несоответствие, особенно если я смогу уменьшить фактический объем передаваемых данных, чтобы приблизиться к предполагаемому размеру.