VirtualBox マシンでビルドを実行中に電源が切れ、再起動すると、VM が使用していたディスクの vmdk が破損し、どうやら修復不能な状態でした。66 GB の vmdk ファイルを grep で調べると、作業中のコードから、まだ Subversion に取り込まれていない文字列が見つかりました (ええ、わかっています)。しかし、文字列はシェル履歴にあるか、オブジェクト ファイル内の文字列のように見えます。
ソースコードを見つけたり回復したりするためのアイデアはありますか?
参考までに、VM は Linux、Fedora Core 10 で、ext3 ファイルシステムです。ホストは ubuntu 10.04_amd64 で、ext4 ファイルシステムです。
答え1
非常に破損または損傷した VMDK ファイルを修復し、回復したレコードを機能的な VMDK ファイルに復元するプロセスを実行します。仮想環境をインストールせずに VMDK ファイルを取得し、すべての画像、ビデオ、オーディオ、データベースなどを回復できます。損傷した VMware 仮想ディスク ファイルを修復すると、ソフトウェアはエクスプローラー ビューにすべての回復されたオブジェクトを一覧表示します。ここで、特定のファイル/フォルダーを選択し、選択的な VMDK ファイル回復を実行できます。その後、「抽出」または「オリジナルとして抽出」オプションを選択して、目的の場所または以前のドライブにデータを簡単に保存できます。
この VMware リカバリ ソフトウェア アプリケーションを利用して、削除、フォーマット、紛失、または欠落した VMDK からデータを救出します。
さらに詳しく知るには:http://gallery.technet.microsoft.com/Recover-VMDK-Data-from-bd1ecd39
答え2
パーティションリカバリを行うものを使用してみてくださいデータ取得。
パーティション テーブルは vmdk 内にあり、ソフトウェアは新しいパーティションを検出します。このようなソフトウェアは必要なことを行いますが、前回試したとき (1 年以上前)、複数の有効なパーティション テーブルがドライブ全体にまたがっているため、同じドライブに複数の VM ハード ディスクがあるとうまく動作しませんでした。vmdk がそのままで移動できる場合は、すべての空き領域を消去したディスクに移動してから、回復ソフトウェアを実行してみてください。これにより、この種の問題のすべての異常が解消されるはずです。
答え3
イメージ ファイルをマウントできる場合は、物理ドライブでファイル回復に使用するのと同じツール (testdisk や photorec など) を使用できる可能性があります。マウントできない場合は、できることはあまりありません。vmdk の場合は、vmware にマウント用のツールがあると思います。