Что вывод Rsync говорит здесь о to-chk?

Я использовал rsync с опцией --progress, поэтому передача файла завершена, и я получил следующий вывод

receiving incremental file list
Makefile
          9,935 100%    9.47MB/s    0:00:00 (xfr#1, to-chk=0/1)

Мой вопрос в том, что делает to-chk=0/1 средства?

Я передаю только 1 файл, это Makefile. номер передачи (xfr#1) четко указывает на 1 файл, но что означает to-chk = 0/1?

1 ответ

Решение

to-chk или же to-check дает вам количество файлов, которые еще нужно проверить, например, 0/1 означает, что 0 из 1 файла в очереди еще нужно проверить.

Во время обычной передачи, скажем, с 42 файлами, to-check будет в основном отсчитывать от 42 до 0 (to-check=38/42...to-check=2/42) до тех пор rsync выполняется синхронизация.

Обратите внимание, что для большого количества файлов последний номер в to-check может также расти, так как rsync не ставит все файлы в очередь одновременно (to-check=38/42...to-check=2/56). Это потому, что он использует алгоритм рекурсии:

Начиная с rsync 3.0.0, используемый рекурсивный алгоритм теперь представляет собой инкрементное сканирование, которое использует намного меньше памяти, чем раньше, и начинает передачу после завершения сканирования первых нескольких каталогов.

Чтобы отключить это поведение, добавьте --no-inc-recursive вариант.

Обратите внимание, что в более новых выпусках rsync (3.1.0) метка была изменена на ir-chk для указания постепенного рекурсивного прогресса (т.е. по умолчанию) и to-check для указания неинкрементного рекурсивного прогресса (то есть: с --no-inc-recursive опция).

Другие вопросы по тегам