Главная » 2014 » Февраль » 10 » Создание резервных копий виртуальных дисков ВМ
16:29
Создание резервных копий виртуальных дисков ВМ

В VirtualBox начиная с версии 3.2.12 возможно удаление снимков в работающем состояния ВМ. Это позволяет нам сделать резервную копию образа виртуального диска "на лету", без остановки работы виртуальной машины и использования специальных файловых систем. Давайте рассмотрим пример использования этой возможности.

У меня имеется виртуальная машина с именем xpn1 с одним виртуальным жестким диском с именем xp_1.vmdk. Сделаем снимок состояния системы, для этого введем в командной строке команду:

$ VBoxManage -q snapshot xpn1 take snapshot1
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

Где -q запрещает вывод дополнительных сообщений при выполнении команды, xpn1 - имя ВМ, а snapshot1 - имя создаваемого снимка. Выведем список жестких дисков:

$VBoxManage -q list hdds

UUID: 8ff5f016-761d-4ea0-9a9a-bbf18931026b
Parent UUID: base
Format: VMDK
Location: State: locked read
Type: normal
Usage: xpn1 (UUID: 1ffa28fa-4487-4b25-9b2e-67b40ebffde2) [snapshot1(UUID: c7b2a9d4-f603-4f15-bad4-3ed564f963fe)]

UUID: ce732950-08c9-4ac1-9b8d-feef90ac9d19
Parent UUID: 8ff5f016-761d-4ea0-9a9a-bbf18931026b
Format: VMDK
Location: /home/ilya/.VirtualBox/Machines/xpn1/Snapshots/{ce732950-08c9-4ac1-9b8d-feef90ac9d19}.vmdk
State: locked write
Type: normal
Usage: xpn1 (UUID: 1ffa28fa-4487-4b25-9b2e-67b40ebffde2)

В данном примере я использую файл образа диска в формате VMDK, а в virtualbox по умолчанию используется формат VDI. Но это не имеет значения, просто замените в примерах расширения файлов с VMDK на vdi. Мы видим, что создался новый файл снимка с UUID = ce732950-08c9-4ac1-9b8d-feef90ac9d19. Теперь ВМ использует этот файл для сохранения всех своих данных, а старый файл остается неизменным, вот для него то я и создаю резервную копию:

$cp /home/ilya/.VirtualBox/HardDisks/xp_1.vmdk /home/ilya/.VirtualBox/HardDisks/xp_1_bak.vmdk

После создания копии файла снимка, он нам больше не нужен. Поэтому мы удаляем его:

$ VBoxManage -q snapshot xpn1 delete snapshot1
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

Все процесс создания резервной копии файла виртуального диска завершен. Естественно, все что ВМ пишет на диск в то время когда мы создаем копию, не попадет в этот файл. Процесс создания резервной копии может занять много времени если у вас большой размер виртуального диска.

Теперь давайте расмотрим процесс востанавления из резервной копии. Для этого нам необходимо завершить работу виртуальной машины и заменить текущий образ диска ВМ на созданную нами копию и на всякий случай сохраним текущий образ:

$mv /home/ilya/.VirtualBox/HardDisks/xp_1.vmdk /home/ilya/.VirtualBox/HardDisks/xp_1.vmdk.bak
$mv /home/ilya/.VirtualBox/HardDisks/xp_1_bak.vmdk /home/ilya/.VirtualBox/HardDisks/xp_1.vmdk

Запускаем виртуальную машину:

$VBoxManage startvm xpn1

Если все прошло успешно удаляем копию образа диска:

$rm /home/ilya/.VirtualBox/HardDisks/xp_1.vmdk.bak

Процесс востанавления ВМ из резервной копии завершен. Мне кажется все просто. Для автоматизации процесса создания резервных копий, вы можете создать сценарий на основе данных команд и запускать его по расписанию в определенное вами время, желательно когда нагрузка на хост и гостевую систему минимальна.

Замечание, для людей не знакомых с командной строкой linux:
cp - команда копирования файла(в windows можно заменить на copy).
mv - команда перемещения или переименования файла (move).
rm - удаление файла (del)

Категория: virtualbox | Просмотров: 1964 | Добавил: mirspo
Всего комментариев: 0
idth="100%" cellspacing="1" cellpadding="2" class="commTable">
Имя *: Email:
Код *: