Linux:.vdiファイルからファイルを回復する

Linux:.vdiファイルからファイルを回復する

何とか私の.vdi(Linuxゲストオペレーティングシステム)ファイルが破損しています。これで、内部にいくつかのファイル(ファイルの内部)があり、vdiこのファイルを復元したいと思います。どうすればいいですか?

答え1

あなたもLinuxホストにいるとします(これは言及していません)。いつでもネットワークブロックデバイス(NBD)オプションを試すことができます。

sudo modprobe nbd max_part=16
sudo qemu-nbd -c /dev/nbd0 <path to your vdi file>
ls -lh /dev/nbd0*
<lists all the partitions on the vdi>

マウントするパーティション(最初のパーティションなど)を選択した後:

sudo mount /dev/nbd0p1 /mnt

vdiこれはファイルの破損の程度に応じて機能します。このマウントおよび/または開発ノードで汎用ファイルシステムツールを使用できます。

完了したら削除し、次の操作を行います。

sudo qemu-nbd -d /dev/nbd0

メモ:qemu-nbdディストリビューションによってはインストールが必要になる場合があります。qemu-utilsUbuntu、Fedoraのパッケージqeu-img

Windowsを使用している場合は、次の手順に従ってある程度成功することができます。この投稿

別のWindows方法は、別のLinux VMをすばやくマウントし、ファイルをvdiそのVMに追加のディスクとして追加することです。その後、上記のNBDプログラムを使用できます。

答え2

ゲストOSを起動する場合は、ファイルシステムの修復ツールとして機能するパッケージをインストールする必要があると思います。パッケージはファイルシステムからファイルシステムに変更されることに注意してください。
ext4 に使用できるパッケージがほとんどないことがわかります。http://extundelete.sourceforge.net/
これも見ることができます。
https://askubuntu.com/questions/41601/is-there-any-recovery-software-available-for-ext4

ゲストオペレーティングシステムから起動できない場合は、まずvdiファイルを復元してから、ゲストオペレーティングシステムから起動してファイルを復元できます。

どのbosyもファイルの100%の回復を保証できないことに注意してください。

関連情報