VirtualBox:グレインテーブルの不整合


10

問題のセットアップは次のとおりです。VirtualBoxを実行するWindows 7 64ビットホスト。ゲストマシンはWindows XP 32ビットを実行しています。

ホストボックスで電源障害が発生した後、ゲストマシンは起動できず、

グレインテーブルとバックアップグレインテーブル間の不整合

それを再インストールせずにゲストマシンを起動するための任意の助けを歓迎します。

PS:とにかく、穀物テーブルとは何ですか?

回答:


4

本当に役に立たないが、粒度表は次のとおりです。http//www.vmware.com/support/developer/vddk/VirtualDiskAPIprogramming.pdf(16ページ)

ユーザーmailqが言うように、仮想ドライブが壊れているように見えます。多分、vmdkckツール(このページhttp://datto.org/projects/vmdk-toolsで)をチェックして、壊れていることを再確認しますか?


こちらこそありがとう。グレインテーブルが実際に何であるかを見つけるためのリンクが提供されていたため、私はあなたの回答を受け入れました。ここでvmware.com/technical-resources/interfaces/vmdk.htmlの
adamo

12

VMwareはと呼ばれるツールがあるvmware-vdiskmanagerに位置"/Applications/VMware Fusion.app/Contents/Library/"し、シンボリックリンクに/usr/local/binインストールしたときに。このツールを使用して、VirtualBox VMDKディスクも修復できます。すでに数回は助かりました。

取り付け

a。vmware-fusionをインストールできます

brew cask install vmware-fusion

b。または、このページの下部にある[ 添付ファイル]セクション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
ツールの名前には「vmware-vdiskmanager」というavが含まれています。回答を編集しようとしましたが、追加されたのは2文字だけで、編集は6文字以上である必要がありますか?:)
Ned Batchelder 2015年

これはうまくいきました、私のMacがクラッシュして、汚い状態のvagrant virtualboxを残した後、それは私を救いました。ありがとうございました!
Fred

1
同じ粒度テーブルエラーがあるにもかかわらず、repairコマンドを実行した後、「仮想ディスクでエラーが見つかりませんでした」と表示されます。これを解決するための他のアイデアはありますか?
user95227

素晴らしいです、ありがとう!強制的に電源をオフにした後、破損したアプライアンスファイル(* .vmdk)を修正できました。
Matt Borja

1
昨夜、ServerFaultの回答が私の命を救った!
スペンサーウィリアムズ

2

仮想ハードドライブが壊れています。グレインテーブルは、仮想化環境の内部的なものです。

正確な用語をグーグル検索すると、回復する可能性があまりないことがわかります。https//forums.virtualbox.org/viewtopic.php?f = 6&t = 40049


迅速な返信ありがとうございます。私はSFに尋ねる前にググっていました。私は、VirtualBoxフォーラムではまだカバーされていない長い答えを期待して尋ねました。
アダモ2011年

2

この問題を解決するためにCloneVDIを使用しました。クローンを作成しましたが、新しいファイルは非常にうまく機能しています。


私はこれを証明することができます。これは私の命を救った。ふew。
Ardee Aram、2014

1

~/VirtualBox\ VMsLinuxからMacOSに移行した後、このエラーが発生しました。を使用vmware-vdiskmanagerして@mensソリューションを試しましたが、失敗しました。

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両方のファイルで同じものが返されることを確認しました。

ファイルを次のように変換vmdkvdiすることで、VMを再起動できました。(必要qemubrew 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を最初からスピンアップする必要があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.