Работа с резервной копией ОС
Общие сведения
Файл резервной копии содержит:
-
Скрипт распаковки
posix-shell
. -
Основной архив (архив со всеми файлами корневой и загрузочной файловых систем).
-
Вспомогательный архив (архив с конфигурационными файлами, помогающими восстановлению).
Основной архив не содержит (добавлено в исключения):
- Содержимое директории, в которой создается резервная копия.
- Виртуальные файловые системы и временные директории: /dev, /run, /sys, /proc, /tmp, /var/lib/ntp/proc, /var/lib/lxcfs, /lost+found, /var/tmp.
- Все пулы данных, кроме базового пула данных
(/storages/local/default)
, при этом от базового пула данных сохраняется только структура.
В общем случае основной архив резервной копии создается командой:
tar cpf - -X <path to file exclude> / | gzip >> <path to file backup>
Резервная копия ОС SpaceVM не включает резервную копию базы данных, хотя файлы базы данных могут
присутствовать в резервной копии, если она была сделана с узла с ролью Controller + Node. Но специальный механизм для восстановления файлов БД не предусмотрен. Для извлечения можно воспользоваться опциями
extract
или tar
.
Резервная копия базы данных контроллера может содержаться в резервной копии узла, если она ранее была создана средствами резервного копирования базы данных.
При создании резервной копии происходит фиксация состояния и блокировка корневой файловой системы и раздела с логами:
fsfreeze -f /
fsfreeze -f /var/log
/storages/local
оказалось в корневой файловой системе. Это приведет
к тому, что виртуальные машины, у которых диски находятся на этих пулах данных, потеряют возможность
записывать в них данные во время создания резервной копии ОС SpaceVM. Также по этой причине на таких пулах данных
невозможно создать резервную копию.
При резервной копии узла с ролью Controller + Node блокируется работа с Web-интерфейсом.
Работа с резервной копией выполняется командой:
sh <путь до резервной копии> <опции>
Внимание
Работать с резервными копиями ОС SpaceVM необходимо с правами администратора root
.
Опции при работе с резервной копией
Без опций
При запуске файла без опций в консоль в первой строке будет выведено:
LLC «DACOM M»
В остальных строках будет указано описание, переданное параметром --description
, или
переданное заполнением соответствующего поля в графическом интерфейсе при создании
резервной копии.
help
Опция help
предназначена для получения справки о работе с резервной копией.
Пример использования
sh 192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run help
Пример вывода help
Usage: sh 192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run [-v] [[list] |
[-v] [extract <dir to extract>] |
[-v] [restore <disk to restore>] |
[-v] [tar <keys tar>] |
[help]]
-v: Verbose output for debug.
list: Show list files in backup. WARNING: this output very large,
it use for 'grep' or output to file.
extract <dir to extract>: Extract files the backuped OS to a passed directory.
restore <disk to restore>: Restore OS to a passed disk.
tar <keys tar>: Use tar keys for archive with data OS from backup.
Don't need use option '-f <archive>'
help: Print this help.
Examples:
sh 192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run list | grep 'etc/fstab'
sh 192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run extract ./123
sh 192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run restore /dev/sda
sh 192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run tar -xC ./123 'etc/fstab'
Typical restore with verbose logging:
echo 'y' | sudo sh 192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run -v restore /dev/sda 2>&1 | sudo tee restore.log
-v
Опция -v
(verbose) используется для получения детального вывода информации при отладке совместно с другими опциями.
list
Опция list
используется для получения полного списка файлов, входящих в резервную копию.
Пример использования
sh 192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run list | grep '/etc/passwd'
Внимание
Так как в резервную копию попадают все файлы, вывод с опцией list
может быть очень большим.
Рекомендуется использовать его совместно с grep
.
extract
Опция extract <целевая директория>
служит для извлечения всех файлов, входящих в резервную копию, в заданную директорию.
Пример использования для извлечения в директорию ./123
sh 192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run extract ./123
restore
Опция restore <диск для восстановления>
служит для восстановления ОС SpaceVM на выбранный диск с восстановлением разметки диска.
Пример использования для восстановления на диск /dev/sda
sh 192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run restore /dev/sda
tar
Опция tar <ключи> <файл>
используется для извлечения отдельных файлов или директорий из резервной копии ОС SpaceVM.
Ключи соответствуют стандартным ключам утилиты tar
.
Пример использования для извлечения файла etc/fstab
в директорию ./123
sh 192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run tar -xC ./123 'etc/fstab'
extract_cfg
Опция extract_cfg <целевая директория>
является отладочной и используется для извлечения из резервной копии конфигурационных файлов
резервной копии, необходимых для восстановления в заданную директорию.
Пример использования для извлечения в директорию ./123
sh 192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run extract_cfg ./123
extract_script
Опция extract_script <путь до файла>
является отладочной и используется для извлечения из резервной копии
скрипта самораспаковки.
Пример использования для извлечения скрипта в текущую директорию ./script.sh
sh 192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run extract_script ./script.sh