在我的计算机上,我有多个分区和操作系统。
/dev/sda1 -> recovery
/dev/sda2 -> linux
/dev/sda3 -> swap
/dev/sda4 -> windows
我对Linux分区做了一个映像备份:
pv < /dev/sda2 > linux-backup.img
然后,我格式化了笔记本电脑上的所有内容。
如何在新的 VirtualBox 机器中使用该图像?
我只对 Linux 分区感兴趣,并想在虚拟机中使用它一段时间。我尝试转换图像:
VBoxManage convertfromraw --format VDI linux-backup.img linux.vdi
...但是这给了我一个包含数据的整个磁盘(/dev/sda
在虚拟机内部),而不是一个分区(我想我需要里面的数据/dev/sda1
)。另一个问题是,这无法启动。
有人有想法吗?
更新:更新了问题,指出我不会同时使用计算机和虚拟机中的分区!我只想在虚拟机中使用它一段时间。
答案1
该命令VBoxManage convertfromraw
用于磁盘图像,而不是分区图像。
您需要创建一个包含映像分区的新磁盘。
免责声明
以下说明改编自我的另一个答案我还没有对它们进行图像测试。
指示
创建一个具有足够容量的新虚拟硬盘的新虚拟机。启动实时发行版。
格式化空白硬盘,创建(至少)一个大小等于或大于图像大小的单个分区。
将映像还原到新创建的分区,例如
dd if=/media/shared/partition.img of=/dev/sdb1
可选择扩展恢复的文件系统以匹配当前分区大小,例如
resize2fs /dev/sdb1
如果有必要,编辑配置文件(特别是
/etc/fstab
)/etc/network/interfaces
。关闭虚拟机,分离实时发行版媒体并启动服务器克隆。
参考
答案2
我不知道如何使用您的 .img 文件执行此操作,但使用 Clonezilla 可以轻松实现您的目标。只需对分区进行 Clonezilla 备份,然后使用 Clonezilla 启动虚拟机并将备份恢复到其中。
实际上,我昨天刚刚在虚拟机上测试了 18.04 升级,然后在真实机器上进行此操作。