Rsync с определенным дневным условием в соответствующих подкаталогах

Я рассматриваю обновление основных версий как возможность перестроить и перенастроить, протестировать процесс резервного копирования и восстановления и т. д. на своих линодах. Конечно, это стоит мне дополнительных 5 долларов, если я не тороплюсь с этим (или 1 доллар, если я тороплюсь... оно того не стоит ).

Что касается поиска ваших измененных конфигураций, редактор, который я использую (joe), настроен на создание резервной копии любого файла, отредактированного с тем же именем, оканчивающимся на тильду(~). Так find /etc -iname *~у меня работает...

Тем не менее, делайте резервные копии ВСЕГО, возможно, даже моментального снимка. Прочтите документацию Debian по выполнению обновления . Проверьте изменения в основных вещах, которые могут сломать другие вещи -, как говорится в комментарии Rui F Ribeiro, изменение PHP нарушит некоторые вещи и, возможно, переход mysql -> mariadb. Проверьте свои различные веб-приложения, службы и т. д., чтобы узнать, не повлияют ли на них какие-либо из этих изменений (т. е. в PHP семейство функций mysql_*исчезло -перейти на использование семейства mysqli_или PDO ).

Наконец, когда вы будете готовы, приступайте к обновлению. Надеюсь, это будет так же безболезненно, как изменение sources.listи выполнение apt-get update && apt-get dist-upgrade.

0
12.02.2020, 14:01
1 ответ

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

.
find development/./ -type f -newermt '2/2/2020' |
    rsync --dry-run -vtpR --files-from -. live/

.в исходном пути для findотмечает точку, из которой путь должен быть сохранен в месте назначения. Я опустил ваш флаг -z, потому что при локальном копировании сжатие не выполняется. Удалите --dry-run, когда вы будете счастливы, что он будет делать то, на что вы надеетесь.

Обратите внимание, что rsyncна самом деле не делает здесь ничего умного. Вы также можете использоватьtar(или pax):

.
tar cf - -C development --newer-mtime='2020-02-02'. | tar xvf - -C live
0
28.04.2021, 23:23

Теги

Похожие вопросы