Как я могу заставить rsync отображать как общий, так и частичный прогресс?

Вопрос или проблема

Я обнаружил, что общий прогресс rsync (в некоторой степени) отображается с помощью --info=progress2, в то время как частичный прогресс (т.е. текущий файл) отображается с помощью --info=progress (или -P).

Существует ли способ показать и то, и другое?

Я пробовал такие команды:
rsync -avP --info=progress --info=progress2 --progress src dst, но это показывает только общий прогресс.

Я использую Ubuntu 14.04.2 с версией rsync 3.1.0, протокол версии 31.

Привет, попробуй выполнить это, если это покажет и то, и другое.

rsync -avz --info=progress2 --progress /source /destination

Ответ или решение

К сожалению, в rsync нет встроенной возможности одновременно отображать как общий прогресс, так и прогресс для текущего файла. Хотя параметры --info=progress2 и --info=progress (или -P) могут быть использованы по отдельности, они не работают совместно. Используя --info=progress2, вы получите общее состояние передачи, включая скорость и общий прогресс переданных данных, но не сможете видеть прогресс конкретного файла. С другой стороны, --progress позволяет отслеживать текущий файл, но не показывает общий прогресс.

Возможные решения для отображения прогресса

Вот несколько альтернативных подходов, которые могут помочь вам отслеживать оба аспекта:

  1. Используйте несколько запущенных процессов

    • Запустите rsync дважды в двух отдельных терминалах: один с параметрами --info=progress2 для отображения общего прогресса, и другой с --progress для отдельного файла. Это, конечно, увеличивает использование ресурсов, но может быть полезно для мониторинга.
    # В первом терминале
    rsync -avz --info=progress2 /source /destination
    
    # Во втором терминале
    rsync -avP --progress /source /destination
  2. Используйте обертку на базе скрипта

    • Вы можете написать небольшой скрипт на Bash, который будет опрашивать rsync и отображать оба типа прогресса. Это более сложный вариант, но вы получите больше контроля над выводом.
  3. Мониторинг использования ресурсов

    • Используйте инструменты мониторинга, такие как htop или iotop, для отслеживания активности системы и ресурсов, которые используются rsync. Это может дать вам косвенное представление о процессе передачи, даже если вы не видите прогресса в командной строке.
  4. Советы по использованию rsync

    • Всегда тестируйте команды на меньших объемах данных перед выполнением на больших объемах.
    • Читайте документацию man rsync, чтобы быть в курсе новых функций и возможных обновлений.

Заключение

Хотя rsync не предоставляет встроенные функции для отображения одновременно общего и частичного прогресса, можно использовать предложенные подходы, чтобы добиться необходимого контроля над процессом синхронизации. Не забудьте также проверить обновления rsync, так как новые версии могут добавить желаемые функции.

Оцените материал
Добавить комментарий

Капча загружается...