Как я могу использовать rsync для резервного копирования файлов, измененных за последний период?
Можно ли указать временной диапазон, чтобы rsync работал только с недавно измененными файлами.
Я пишу script для резервного копирования недавно добавленных файлов по SSH, а rsync кажется эффективным решением. Моя проблема в том, что мои исходные каталоги содержат огромное количество старых файлов, которые мне не интересны в резервном копировании.
Единственное решение, с которым я столкнулся до сих пор, - это поиск с помощью ctime для создания файла -files-from.
Это работает, но мне приходится иметь дело с некоторыми старыми установками с версиями rsync, которые не поддерживают -files-from.
Я рассматриваю возможность генерации --include-from шаблонов таким же образом, но мне бы хотелось найти что-то более элегантное.
Ответы
Ответ 1
Похоже, вы можете указать команды оболочки в аргументах rsync (см. Удаленный rsync выполняет произвольные команды оболочки)
поэтому я смог успешно ограничить файлы, которые просматривает rsync, используя:
rsync -av remote_host:'$(find logs -type f -ctime -1)' local_dir
Это ищет файлы, измененные в последний день (-ctime -1), а затем rsyncs в local_dir.
Я не уверен, что эта функция по дизайну, но я все еще копаю в документации.
Ответ 2
Почему бы просто не взять тепло при резервном копировании всей директории один раз и воспользоваться дополнительным резервным копированием, предоставляемым rsync и rdiff, и его кузенами, вы не будете тратить дисковое пространство, где они поддерживаются, потому что они будут постоянно сохраняются.
Резервное копирование всего упрощается и значительно снижает риск ошибок. Попытка выборочного резервного копирования некоторых файлов, а не других, - это рецепт для того, чтобы не создавать резервные копии, что вам нужно, не осознавая этого, а затем сжигаться, когда вы не можете восстановить критический файл.
В противном случае вы должны реорганизовать исходный каталог, чтобы в вашей резервной копии script было меньше решений.
Ответ 3
Как создать временный каталог, символическую привязку или жесткую привязку файлов, а затем rsyncing?
Ответ 4
Могу я предложить вам удалить rsync и посмотреть rdiff-backup?