Поскольку я точно не знаю вашу систему, я делаю несколько предположений здесь. Если они не соответствуют вашей ситуации, уточните свой вопрос, и я с радостью обновлю ответ.
Я предполагаю, что у вас есть много файлов, независимо от их размеров в месте, из которого вы копируете. Это приведет к довольно медленному rsync, вызванному дизайном протокола rsync.
Rsync работает следующим образом:
1. Build a file-list of the source location.
2. For all files in the source location:
a. Get the size and the mtime (modification timestamp)
b. Compare it with the size and mtime of the copy in the destination location
c. If they differ, copy the file from the source to the destination
Done.
Если у вас есть только несколько файлов, это, очевидно, будет быстрее, чем для многих файлов. Ваш USB-накопитель может быть вашим узким местом, так как извлечение размера и метки времени создаст много прыжков в таблице inode.
Возможно, такой инструмент, как iotop (в случае, если ваш Linux, аналогичные инструменты доступны практически для всех платформ), поможет вам определить узкое место.
Опция --delete
также может вызвать медленный rsync, если поиск полного списка файлов целевого местоположения медленный (что возможно для внешнего вращающегося USB-диска). Чтобы убедиться, что это проблема, на любом os с bash, просто введите time ls -Ral <target-location> > filelist.txt
(перенаправление вывода в файл, поскольку удаление данных на экране происходит медленнее). Если это займет намного больше времени, чем для исходного диска, целевой диск может стать узким местом.