У меня есть маленький сервер, который я использую в качестве NAS, он имеет несколько сервисов, работающих на нем и много файлов, которые он хранит.
Это настроено как RAID1 с двумя SSD, отформатированными с btrfs.
Я использую apt-btrfs-snapshot
, который создает снимки каждый раз, когда способная операция выполняется. Это все хорошо работает для восстановления с плохих изменений конфигурации - но я также хотел бы скопировать те снимки в некоторую внешнюю резервную цель для использования их для восстановления, если сервер полностью перестает работать.
Мой вопрос: предположите, что у меня есть недавний btrfs снимок корневого каталога этой машины. Для восстановления его, может я делать новую установку Ubuntu (с теми же аппаратными средствами), копия через снимок, и затем говорить apt-btrfs-snapshot
"откатывать" к тому снимку? Эффективно я копирую дословно всю корневую файловую систему с другой, но аналогичной системы. Я думал бы, что это должно быть в порядке, пока я сохраняю полномочия тем же затем, все установленные приложения и конфигурационные файлы должны возвратить поддержанную систему точно, как это было во время снимка. Я думаю, что мог бы испытать это в VM только для проверки, но являюсь там какими-либо проблемами с копированием корневой файловой системы для восстановления целой машины?
Хорошо, я испытал его в VM. Вот общая суть того, что я сделал:
Создают VM Ubuntu 18.04 в VirtualBox, с диском на 20 ГБ. Установка с помощью настольного ISO-образа, и (конечно) настраивает использование btrfs вместо того, чтобы принять значения по умолчанию.
Начальная загрузка в новую систему, установите apt-btrfs-snapshot
. Установите некоторые другие вещи также, я сделал Докера, потому что это - одна из вещей, я хотел удостовериться, поддерживается. Идея является поддержанными системными потребностями очевидно отличаться от новой установки так, чтобы мы могли сказать, работает ли это на самом деле.
Делают ссылочный снимок с sudo apt-btrfs-snapshot snapshot
.
Удаляют диск из VM, и создают новый диск и устанавливают Ubuntu 18.04 на нем после того же процесса как прежде.
В новом VM, также установите apt-btrfs-snapshot
, но ничто иное (потому что мы собираемся восстановить наше резервное копирование так или иначе).
Завершение работы VM, затем присоедините в слоте 1 SATA диск сначала VM. Загрузитесь назад в VM и удостоверьтесь, что новый экземпляр загрузился а не диск с резервной копией (можно проверить, там ли вещи, которые Вы установили, или не - они не должны быть там в новом экземпляре).
Вручную монтируют корень обоих новое и копируют btrfs диски - я сделал это посредством записей в /etc/fstab
, но он может просто быть сделан с mount
команды.
Находят название снимка в резервном копировании, которое Вы хотите восстановить, что-то как @apt-snapshot-2018-08-01_08:48:31
- будут много они в корне btrfs файловой системы.
Делают btrfs подобъем того же имени в новом диске, с командой как sudo btrfs subvolume create /path/to/new/btrfs/@apt-snapshot-2018-08-01_08:48:31
Копия все напротив резервного копирования на новый пустой подобъем, что-то как sudo cp -ar /path/to/old/@apt-snapshot-2018-08-01_08:48:31 /path/to/new/btrfs/
Наконец, проверяют, что новый подобъем замечен с sudo apt-btrfs-snapshot list
и затем, предположив, что это перечислено, установите восстановленное изображение, которое будет использоваться на начальной загрузке, с: sudo apt-btrfs-snapshot set-default @apt-snapshot-2018-08-01_08:48:31
Выключают VM и удаляют диск с резервной копией. Перезагрузка, и затем проверяет, что восстановление работало. В моем случае это сделало - в особенности изображения Докера, которые я протестировал, прежде чем резервное копирование работало над восстановленной машиной.
, Таким образом, это походит, это действительно работает для восстановления к новой установке от корневого снимка подобъема, пока аппаратные средства подобны.