Резервное копирование корневой файловой системы

Резервное копирование корневой файловой системы

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

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

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

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

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

решение1

Я знаю, что некоторые корневые каталоги являются виртуальными, но нужно ли мне их исключить? (/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

впоследствии (как root).

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

решение2

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

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

:)

Связанный контент