Восстановление виртуальной машины на LV, диск GRUB не найден

Восстановление виртуальной машины на LV, диск GRUB не найден

Вот как выглядит моя настройка: Ubuntu 14.04 с запущенным KVM с libvirt имеет HW-Raid, с которого он работает (/dev/sda), и другой HW-RAID (/dev/sdb), который является PV для LVM VG под названием "datavg" с виртуальными машинами, установленными на неформатированных LV. Затем я сделал резервную копию VM следующим образом:

  • сохранить конфигурацию libvirt/virsh
  • сохранить размер lv
  • сохранить первые 512 байт (MBR и GPT) с помощью dd
  • создать снимок LVM LV
  • отобразите разделы (используя kpartx) и смонтируйте корневой раздел виртуальной машины
  • сохранить тип файловой системы и uuid этого раздела
  • используйте duplicity для создания инкрементного резервного копирования всего (исключая /proc)
  • размонтировать и отключить
  • удалить снимок

Вот что я запустил на «обратном пути», чтобы восстановить его на виртуальной машине с именем «test-vm» на логическом томе «vm-test-lv»:

  • создать LV того же размера (из резервной копии)

    lvcreate --name vm-test-lv --size 400.00G datavg

  • верните MBR и GPT обратно в первые 512b в начале LV

    dd if=/data/backup/test/MBR-20141126T104236Z.raw of=/dev/datavg/vm-test-lv

  • карта разделов LV

    kpartx -av /dev/datavg/vm-test-lv

  • отформатируйте его в той же ФС с тем же UUID (оба из резервной копии)

    mkfs.ext4 -U a5943cc4-6421-47a4-9613-30efd4dc44d4 /dev/mapper/datavg-vm--test--lv1

  • смонтировать свежеотформатированный раздел

    mount /dev/mapper/datavg-vm--test--lv1 /data/mnt/

  • восстановить резервную копию duplicity

    duplicity restore --progress --restore-time 20141126T104236Z file:///data/backup/test /data/mnt

  • размонтировать его

    umount /data/mnt

  • удалить отображение

    kpartx -d /dev/mapper/datavg-vm--test--lv

  • создать виртуальную машину (в данном случае с другим именем и uuid, поскольку исходная все еще существует, но выключена)

    virsh create /data/backup/test/virsh-20141126T104236Z.xml

  • попробуйте загрузиться

Это не сработало, и он завис, глядя на него через VNC через туннель SSH, он говорит: «Загрузка с жесткого диска...» (Скриншоттак как мне не разрешено размещать встроенные изображения)

Затем я попытался снова отобразить его и выполнить chroot, grub-installно это тоже не сработало:

root@kvm-host:~# mkdir /data/mnt/proc
root@kvm-host:~# mount --bind /proc /data/mnt/proc
root@kvm-host:~# mount --bind /dev /data/mnt/dev 
root@kvm-host:~# mount --bind /sys /data/mnt/sys 
root@kvm-host:~# chroot /data/mnt
root@kvm-host:/# grub-install /dev/mapper/datavg-vm--test--lv
Installing for i386-pc platform.
grub-install: error: disk `lvmid/eLefkO-MKtH-kOcq-pt0b-4zzO-31xg-XIqDpY/AcNuFk-JY2r-V8x5-gNoV-UCoi-uQug-8R0ZWZ' not found.

Он показывает правильные UUID VG и LV, но я боюсь, что использую его неправильно... Может ли кто-нибудь мне помочь?

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