Страница 1 из 1

Как клонировать образ диска 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". После окончания процесса и попытки с вновь созданного диска загрузиться - такой-же облом.

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

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

Добавлено: 2018-12-16 20:15:17
snorlov
А данные в виртуалке укладываются в эти 42 гб, если укладываются, то средствами винды сделал бы сжатие диска, затем перенос полученного раздела, ну а затем разбирался бы с zfs, scrub не пробовали... Все это соответственно через бэкапы...

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

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

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

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

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

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

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

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

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

Добавлено: 2019-10-25 17:36:19
Melmanrhync
назовите, пожалуйста, программы, с помощью которых можно создать образ из файлов, я знаю только Nero, но там нет такой функции пропуска ошибок. Кстати, что означает ошибка данных CRC?