Я недавно установил SSD в свою систему и перенес на него часть своей установки Linux. Чтобы быть в безопасности, я хочу сделать резервную копию всей корневой файловой системы с помощью rsync (просто клон, без контроля версий, без инкрементного резервного копирования или чего-либо еще), но у меня есть некоторые проблемы в моей голове.

  • Моя файловая система распространяется. /var и /tmp находятся на разных дисках.
  • Я знаю, что некоторые корневые каталоги являются виртуальными, но нужно ли их исключать? (/proc, /dev и т. д.)
    • Если я исключу их, нужно ли создавать фиктивные / пустые версии на резервном диске?
  • Или есть какой-нибудь простой инструмент для автоматизации этого процесса.

Вопрос в том, могу ли я просто использовать rsync с кучей переключателей и исключений для резервного копирования действующей системы linux или мне следует использовать другие инструменты для этого?

Заранее спасибо.

PS: я свободно владею Linux. Продвинутые / хитрые методы не проблема.

2 ответа2

0

Я бы сказал, используйте cpio для создания архива и скопируйте его. Я говорю cpio, потому что он используется для начальных виртуальных дисков, поэтому он понимает виртуальные каталоги. Пытаться

find / -depth -name | cpio -o >/path/archive.cpio

:)

0

Я знаю, что некоторые корневые каталоги являются виртуальными, но нужно ли их исключать? (/proc, /dev и т. д.) Если я исключу их, нужно ли создавать фиктивные / пустые версии на резервном диске?

Да, вам нужно исключить их.

С точки зрения того, должны ли быть фиктивные версии - для того, чтобы ваши сценарии инициализации монтировали их, эти каталоги должны существовать как пустые папки. Так что да - вам нужно будет включить заглушки или пустые каталоги.

Вопрос в том, могу ли я просто использовать rsync с кучей переключателей и исключений для резервного копирования действующей системы linux или мне следует использовать другие инструменты для этого?

Например, вы можете часто выполнять резервное копирование с помощью rsync -av --delete /src /dst ; однако следует помнить, что rsync вообще не обрабатывает блокировку / одновременный доступ. Вы получите все виды запуска, если будете писать в файлы, которые используются в данный момент.

Конечно, есть один способ обойти это. Предполагая, что в настоящее время нет записей, вы можете выполнить:

/bin/mount -no remount,ro /dev/rootdevice

перед вашим rsync, затем:

/bin/mount -no remount,rw /dev/rootdevice

потом (как корень).

Если вы хотите делать резервные копии действительно работающей файловой системы с поддержкой записи, вам нужно что-то, что может делать копирование при записи, например, Linux Volume Snapshots.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .