2008年11月5日

VMware で Cannot open the disk ... Reason: The parent virtual disk has been modified since the child was created. となったら

セイケイ(青鶏、Purple Swamphen) Porphyrio porphyrio (Linnaeus, 1758) 動物界(Animalia) 脊索動物門(Chordata) 鳥綱(Aves) ツル目(Gruiformes) クイナ科(Rallidae) Porphyrio属(Porphyrio)   神戸花鳥園にて

 今日の後半、焦っていたのが上のエラー。土曜日に出勤した際に、Windows2003 Server 上の VMware Server で運用していた FreeNAS のアップデートがうまく行かず、書き戻したコンフィグファイルが、戻したバージョンに合っていなかったものだから、いろんなトラブルが巡って、最終的に OS がハングアップする事態になってしまった。アップデートをするとネットワークカードを認識できないので仕方がない。

 データをサルベージしようとすると、相手は仮想ファイルシステムだし、FreeBSDのファイルシステムである UFS でフォーマットされているし、どうやってデータを取り出せばいいのか途方に暮れてしまいそうになった。

 おまけに、今日から体調も崩して風邪を引いてしまったし、集中力も続かず、踏んだり蹴ったりだ。別の仮想マシンを仕立てて見たら、これがちゃんとネットワークカードも利用できるようになったので、データを移行することにし、読めないドライブを接続したところ、1年前のデータしか表示されない、というよりも一年前の状態が表示されているのである。

 そこで気が付いたのが、以前に試しにスナップショットを取ったことだ。仮想ファイルシステムは、スナップショットに継ぎ足しをする形で時間を区切っているらしい。となると、VMware Server から読み出さないと、データが見えない訳だ。

 そうこうしているうちにも、旧FreeNASは固まるので、再起動を何回か行ったら、とうとう表題のエラーが出現し、BIOS画面さえ出なくなってしまう。最悪の日だ。

 で、エラーの内容から復旧策を検索して探し出し、何件か同様の内容があったなかで一番分かりやすかったのが下のサイトだ。ちなみに、日本語情報がなかったのでここに書いている。

Recovering VMware snapshot after parent changed - Drive:Activated

 ここで書かれていることは、まず、スナップショットは、元ファイル(例) data.vmdk をバイナリーエディターで開き、20行目ほどにある CID=12345678 という8桁の英数字をメモする。

 次に、data-000001.vmdk というファイルをバイナリーエディタで開いて、parentCID の英数字を先程控えた元ファイルの CID に書き換える。これで、完了。VMware で仮想マシンを起動すると、キチンと親データを見付けてBIOS画面が拝めるはずだ。

 バイナリーエディタは、ファイルを直接編集するので、取り扱いは慎重に。出来れば、トラブルの起きた仮想マシンの格納フォルダーは、別フォルダーにコピーして待避しておくのが新しいトラブルを呼ばない先手でしょう。

 しかし、何百GBというファイルを一瞬でコピーする方法は簡単には得られない。便利になればなるほど、悩みも増えるものだ。

 ああー、朦朧としてきたのでもう寝よう。

0 件のコメント: