Linux Labs

Хранилище / Ступень 10 из 11

Rsync — зеркало, сравнение и границы удаления

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 6 из 8 · теория · 4 мин

Зеркало и история копий

Точная копия повторяет и ошибки источника. Чтобы вернуть вчерашнее состояние, нужно другое.

Зеркало хранит одно состояние — то, что было в источнике при последнем запуске. Удалили файл в источнике по ошибке — следующий rsync --delete удалит его и в зеркале. Испортили конфигурацию — зеркало получит испорченную.

Прошлое состояние возвращают из сохранённых версий: архива за каждую ночь с датой в имени или программы вроде restic, которая хранит версии данных по датам. Сколько версий держать и когда удалять старые, задают правила хранения копий.

Зеркало нужно там, где важна точная копия на сейчас: перенос данных на другой диск, запасной сервер с теми же файлами.

Проверь себя 1 вопрос

Вчера днём из source по ошибке удалили orders.csv, ночью отработал rsync -a --delete source/ mirror/. Где теперь взять файл?

  • В mirror файла тоже нет: обратный запуск вернёт в source ровно то, что в нём уже есть.

  • Ночной запуск с --delete уже удалил orders.csv из mirror: ls mirror его не покажет.

  • План сравнивает два текущих дерева, а файла нет ни в одном: вывод будет пустым.

Зеркало повторило удаление, поэтому файл остался только в копии, сохранённой до него. Такие копии и срок их хранения задают отдельно от синхронизации.

Главное в шаге

  • Зеркало хранит одно, последнее состояние источника и повторяет его ошибки, включая удаления.
  • Прошлое состояние возвращают из сохранённых версий: архивов по датам или версий в программе резервного копирования.
Ubuntu 24.04
Загрузка…