Заказ файлов, переданных rsync - PullRequest
4 голосов
/ 05 августа 2009

В настоящее время мы используем rsync для запуска задания резервного копирования. Эта работа занимает несколько часов. Поскольку есть некоторые части резервной копии, которые более важны, чем другие, мы хотели бы обеспечить их резервное копирование, прежде чем все остальное (то есть, что rsync передает эти файлы в первую очередь). Это должно быть легко выполнено с помощью rsync --files-from.

К сожалению, файлы, которые нам нужно расставить по приоритетам, находятся вместе со всеми другими файлами в одном каталоге (плоская иерархия, бу!), У них просто есть определенное расширение для их идентификации. Таким образом, мы хотели бы получить список файлов, которые rsync будет передавать, отсортировать их локально и затем передать в rsync, используя rsync --files-from.

Использование rsync -v --dry-run дает нам большую часть пути (я думаю), но отображает добавления к каталогам и изменения свойств файла, а это означает, что мы на самом деле не получаем список, который можно сразу использовать.

Итак, мой вопрос таков: как я могу получить список файлов для использования из rsync?

Ответы [ 3 ]

4 голосов
/ 06 августа 2009

Будет ли работать rsync дважды? т.е. запустить его один раз для файлов с высоким приоритетом и один раз для остальных?

1 голос
/ 17 апреля 2014

Я бы прокомментировал ответ @ alberge, но мне не хватает репутации: - (

@ Даниэль, если вы используете отдельные команды rsync, могу ли я предложить использовать цикл for:

for pp in "*.png" "*.jpg" "*.bmp" "*.gif"
do
    rsync ... $pp
done

только одна команда rsync для изменения, если вы хотите внести какие-либо изменения, и хороший, легко управляемый список вещей для синхронизации. Порядок в операторе for - это порядок их использования.

0 голосов
/ 06 августа 2009

Вы можете сначала использовать rdiff-backup или просто заменить rsync на rdiff-backup. Например, вы можете получить список файлов с:

rdiff-backup --compare in-dir user@host::out-dir

Однако я бы пошел с другим предложением попробовать два прохода. Кроме того, вы пытались включить сжатие?

...