Как клонировать образ диска VirtualBox

VirtualBox, QEMU, ESX/ESXi и прочия
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
Духовитин
мл. сержант
Сообщения: 119
Зарегистрирован: 2014-12-17 8:46:05

Как клонировать образ диска VirtualBox

Непрочитанное сообщение Духовитин » 2018-12-16 11:58:23

Товарищи, добрый день!

Есть сервак:

Код: Выделить всё

FreeBSD KOR-VM 11.1-STABLE FreeBSD 11.1-STABLE #0 r331765: Sat Mar 31 00:54:49 +05 2018     userx@KOR-VM:/usr/obj/usr/src/sys/SERV  amd64
На нём значит зеркало ZFS, на котором в какой-то момент оказался покоцаным VDI образ диска этой виртуалки:
zpool status -v

Код: Выделить всё

  pool: zPool
 state: ONLINE
status: One or more devices has experienced an error resulting in data
        corruption.  Applications may be affected.
action: Restore the file in question if possible.  Otherwise restore the
        entire pool from backup.
   see: http://illumos.org/msg/ZFS-8000-8A
  scan: resilvered 504G in 1h41m with 6 errors on Sun Dec 16 11:43:10 2018
config:

        NAME        STATE     READ WRITE CKSUM
        zPool       ONLINE       0     0     6
          mirror-0  ONLINE       0     0    12
            ada0p4  ONLINE       0     0    12
            ada1p4  ONLINE       0     0    12

errors: Permanent errors have been detected in the following files:

        /usr/home/userx/VirtualBox VMs/1CSrv/disk.vdi
Виртуалка с этим "сбойным" диском запускается и работает, но вот если там активно на диск чего-то писать и запись попадает на проблемное место, то машина дохнет.

Задача у меня стало быть такая: Сделать клон диска а старый удалить. Т.к. иного решения для это ZFS напасти нету.
Сбойный участок у vdi файла, со смещения в 42 с хвостиком гигабайта и длиной пару мегабайт. Херня вообще. Учитывая что виртуалка с этим диском работает, то видимо и важных данных в этом месте нет.

Итого сперва я решил пойти unix путём. Старый добрый dd при выключенной виртуалке:

Код: Выделить всё

dd if=/path/to/bad.vdi of=/path/t/cloned.vdi conv=noerror
Всё, образ слит. Подключаю этот образ в машину вместо сбойного:

Код: Выделить всё

VBoxManage storagectl 1CSrv --name="IDE" --port 0 --devce 0 --medium /path/to/cloned.vdi
Включаю машину и по vnc подключившись вижу что там "No bootable medium". Хуета какая-то.

Попробовал после этого другим путём:
В виртуалку подключил сбойный диск, вновь созданный (VBoxManage createmedium) чистый vdi диск и в виртуальный cdrom подключил образ Hiren's boot cd . Загрузился с него и по vnc через acronis сделал клон с сбойного на новый. ФС на старом видна, ошибки он в том же месте выдал, но я ему "Ignore all". После окончания процесса и попытки с вновь созданного диска загрузиться - такой-же облом.

Подскажите почему так может быть? Может я чего-то не понимаю? По моим текущим представлениям о предметной области, нет ни одной причины почему с созданным такими образами клонами диска система не должна работать.
Кто не рискует - тот не пьёт шампанского.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

snorlov
подполковник
Сообщения: 3687
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Как клонировать образ диска VirtualBox

Непрочитанное сообщение snorlov » 2018-12-16 20:15:17

А данные в виртуалке укладываются в эти 42 гб, если укладываются, то средствами винды сделал бы сжатие диска, затем перенос полученного раздела, ну а затем разбирался бы с zfs, scrub не пробовали... Все это соответственно через бэкапы...

snorlov
подполковник
Сообщения: 3687
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Как клонировать образ диска VirtualBox

Непрочитанное сообщение snorlov » 2018-12-16 21:49:08

Scrub я вижу вы уже делали, ну тогда наверное 3-и пути:
1. как я вам предложил
2. прямым копированием файлов в виртуалке,
3. сделать бэкап и средствами самой винды, а затем его восстановить
в любом случае работа с файлами в самой виртуалки
Это все я предлагаю из моего предыдущего опыта, упала сама фря с виртуалками на борту, гавкнулся сам ИБП, и после подьема была как раз похожая история, одна виртуалка поднялась, а вот вторая как у вас, только там сбой висел на базе mssql-а, бухи заорали, что там много данных они ввели и не помнят что делали, поэтому сливали данные через таблицы и сбой, на мое счастье, оказался как раз на одной таблице, причем там не читались записи с 4001 по 5562, которые я впоследствии взял из бекапа старой базы... В общем мне тогда повезло... После этого я помимо бэкапа данных стал делать бэкап system state виртуалок...
А какая винда, у вас стоит?

Аватара пользователя
Духовитин
мл. сержант
Сообщения: 119
Зарегистрирован: 2014-12-17 8:46:05

Как клонировать образ диска VirtualBox

Непрочитанное сообщение Духовитин » 2018-12-16 21:52:39

средствами винды (внутри максимально весь мусор удалил, и сделал sdelete от sysinternals). Просто он когда доходит до обработки проблемнорй зоны, система встаёт колом. Я так и хотел сначала sdelete а потом уже modifymedium --compact, но нет. Так не канает.

zfs scrub и zfs clear пробовал, не помогает. По этой ошибке написано в справке оракловой, что единственный путь это удалить битый файл, и брать его откуда-то из бэкапа.

Но блин клонированный образ то почему не грузится в виртуалке, это для меня просто магическая загадка.
Кто не рискует - тот не пьёт шампанского.

Аватара пользователя
Духовитин
мл. сержант
Сообщения: 119
Зарегистрирован: 2014-12-17 8:46:05

Как клонировать образ диска VirtualBox

Непрочитанное сообщение Духовитин » 2018-12-16 22:07:13

Да, данные то все важные скинуты и постоянно на внешнее хранилище скидываются.
Виртуалка - Win 2003 x64, сейчас пробую прямо с клонизатора AOMEI из самой винды. Подключенный диск на который всё клонировалось, в системе загруженной видится как неразмеченный диск. :( Я просто не понимаю как это возможно... Ведь в начале диска вся служебная информация, загрузчик, таблица разделов MFT. Какого хера этот диск мёртвой тушкой видится в системе.
Кто не рискует - тот не пьёт шампанского.