不知何故,我的.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-utils
Ubuntu、 Fedora 上的软件包qeu-img
。
如果您使用的是 Windows,则按照以下步骤可能会取得一些成功这个帖子。
另一种 Windows 方法是快速安装另一个 Linux VM,然后将vdi
文件作为附加磁盘添加到该 VM。然后您可以使用上面的 NBD 程序。
答案2
如果您要启动来宾操作系统,那么我认为您需要安装一个软件包,该软件包将用作文件系统的恢复工具。请记住,软件包将从文件系统更改为文件系统。我知道很少有可用于
ext4 的软件包http://extundelete.sourceforge.net/
你也可以看看这个
https://askubuntu.com/questions/41601/is-there-any-recovery-software-available-for-ext4
如果您无法启动到来宾操作系统,那么您首先需要恢复 vdi 文件,然后通过启动到来宾操作系统,您可以恢复文件。
请记住,没有任何 bosy 可以保证您 100% 恢复文件。