VirtualBox: непослідовність зернових таблиць


10

Про налаштування йдеться наступним чином: Windows 7 64-бітний хост під управлінням VirtualBox. В гостьовій машині працює Windows XP 32bit.

Після відключення електроенергії у вікні хоста гостьова машина не може завантажитися і скаржиться на це

невідповідність між зерновим столом та резервним зерновим столом

Була вдячна будь-яка допомога для завантаження гостьової машини без її перевстановлення.

PS: Що таке зернова таблиця?

Відповіді:


4

Не можу допомогти, але я виявив, що тут є зернові таблиці: http://www.vmware.com/support/developer/vddk/VirtualDiskAPIprogramming.pdf (стор. 16)

Як каже користувач mailq, схоже, що ваш віртуальний диск порушений. Можливо, перевірте інструмент vmdkck (на цій сторінці http://datto.org/projects/vmdk-tools ), щоб перевірити, чи він зламаний?


Дякую і вам. Я прийняв вашу відповідь, оскільки вона містила посилання, щоб знайти, що насправді є зернова таблиця. Тут можна попросити специфікацію формату віртуального диска vmware.com/technic-resources/interfaces/vmdk.html
adamo

12

VMware має інструмент, який називається, vmware-vdiskmanagerрозташований у ньому "/Applications/VMware Fusion.app/Contents/Library/"та посилається на нього /usr/local/binпри встановленні. Ви можете використовувати цей інструмент і для ремонту дисків VirtualBox VMDK . Врятувало мене вже пару разів.

Установка

а. Ви можете встановити vmware-fusion

brew cask install vmware-fusion

б. Або ви можете завантажити vmware-vdiskmanagerутиліту безпосередньо з розділу Додатки внизу цієї сторінки:
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1023856

Використання

vmware-vdiskmanager -R <your_disk>.vmdk

Викликання без параметрів дає допомогу:

Usage: vmware-vdiskmanager OPTIONS <disk-name> | <mount-point>
Offline disk manipulation utility
...
     -R                   : check a sparse virtual disk for consistency and attempt
                            to repair any errors.
...

1
Назва інструменту має av у ньому: "vmware-vdiskmanager". Я спробував відредагувати відповідь, але вона додала лише 2 символи, а редагувань має бути не менше 6? :)
Нед Батчелдер

Це спрацювало чудово, це просто врятувало мене після того, як мій Mac вийшов з ладу і залишив бродячий віртуальний ящик у брудному стані. Дякую!
Фред

1
Я отримую "на віртуальному диску не виявлено жодних помилок" після запуску команди відновлення, хоча у мене однакова помилка таблиці зерна. Будь-які інші ідеї для вирішення цього питання?
користувач95227

Дивовижне, дякую! Вдалося виправити пошкоджений файл приладу (* .vmdk) після примусового перенапруги.
Метт Борха

1
Минулої ночі відповідь ServerFault врятувала мені життя!
Спенсер Вільямс

2

Ваш віртуальний жорсткий диск зламаний. Зернові таблиці є деякими внутрішніми елементами середовищ для віртуалізації.

Гугл на точний термін виявляє, що існує не так багато можливостей для відновлення: https://forums.virtualbox.org/viewtopic.php?f=6&t=40049


Дякую за швидку відповідь. Я гуглив перед тим, як запитати у SF. Я попросив сподіватися на давню відповідь, яку ще не охоплює форум VirtualBox.
adamo

2

Я вирішив цю проблему CloneVDI . Я зробив клон, і новий файл працює дуже добре.


Я можу це засвідчити. Це врятувало мені життя. Вау.
Ardee Aram

1

У мене виникла помилка після переміщення ~/VirtualBox\ VMsз Linux на MacOS. Я спробував рішення @mens за допомогоюvmware-vdiskmanager , але це не вдалося мені.

Під час моєї міграції з Linux на MacOS я додав усі *.vboxфайли назад у Virtualbox, і всі вони не змогли завантажитися з однаковою помилкою (за допомогою vagrant):

There was an error while executing `VBoxManage`, a CLI used by Vagrant for controlling VirtualBox. The command and stderr is shown below.

Command: ["startvm", "<UUID 1>", "--type", "headless"]

Stderr: VBoxManage: error: Could not open the medium '/path/to/box-disk1.vmdk'.
VBoxManage: error: VMDK: inconsistency between grain table and backup grain table in '/path/to/box-disk1.vmdk' (VERR_VD_VMDK_INVALID_HEADER).
VBoxManage: error: VD: error VERR_VD_VMDK_INVALID_HEADER opening image file '/path/to/box-disk1.vmdk' (VERR_VD_VMDK_INVALID_HEADER)
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component MediumWrap, interface IMedium

Я переконався, що дані, передані правильно, md5 box-disk1.vmdkповернув те саме для обох файлів.

Мені вдалося змусити VM для завантаження знову, перетворивши vmdkфайли наvdi наступне. (Потрібно qemu, brew install qemu)

# Convert from `.vmdk` to `.bin`
qemu-img convert box-disk1.vmdk box-disk1.bin

# Convert from `.bin` to `.vdi`
VBoxManage convertdd box-disk1.bin box-disk1.vdi

Оновлений шлях до гучності для .vdiта завантаження машини.

У моєму випадку файл vdi трохи більший, не забудьте видалити, .binоскільки він величезний. О, і не вдалося пройти автентифікацію під час першого запуску. У будь-якому випадку, якщо це можливо, можливо, ви повинні замість цього створити новий vm з нуля.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.