linux windows双起系统, 把windows 移入virtualbox虚拟机

我台式机是win10, ubuntu 双起的, win10 上配了一个复杂的开发环境,很久没用了,平时主要用Linux,但因为配置复杂,舍不得删,怕以后万一有用。一共三块硬盘,加起来1.5T,担心哪天硬盘坏了,就新买一块 2T 的硬盘,把windows 整个环境备份到虚机里:

首先,装好新硬盘,启动到 ubuntu,给硬盘建立分区表(我用的是gpt),设置分区和文件系统,挂载到 ubuntu 里某个目录下(我这里新建了一个/vmdisk);

sudo fdisk -l
#列出目前硬盘及分区情况;

sudo dd bs=512 count=234452992 if=/dev/sdb of=/vmdisk/win10_sdb.raw
#把 win10 所在硬盘用 dd 复制到新硬盘一个镜像文件, count 是fisk 显示的 sdb 上我需要的最后一个分区(sdb4)的末尾扇区号加1;

#网上说raw镜像文件在虚机里面没法做snapshot,所以下面转化成 vdi 或 vhd,vmdk:
sudo qemu-img convert -f raw -O vpc /vmdisk/win10_sdb.raw /vmdisk/win10c_sdb.vhd

以前的Win10除了前面sdb上的系统分区(c盘),还用到了另一块硬盘上的分区,比较大,要是像前面那样先生成raw镜像,再转换格式,新硬盘空间就不够了,所以用下面命令(最后的数字取自 fdisk 显示的 sda 的字节数):
su
dd if=/dev/sda | VBoxManage convertfromraw stdin ./sda.vdi --format VDI 320072933376

接下来在ubuntu 里用virtualbox 创建win10虚机,加入前面得到的硬盘镜像文件,因为我台式机用的是UEFI, 所以虚拟机设置->系统->主板 里面“启用EFI” 的选项要勾上。首次启动虚机会进入UEFI Shell, 输入 fs0: , fs1: 等,可进入不同分区,然后可用 ls 命令列出分区内容, cd 命令进入目录,找到 .EFI 结尾的合适的文件,文件名作为命令输入,就可进入引导界面,进而启动 windows. 下次重启就不会进UEFI Shell 了,而是直接进入windows引导界面。

进入windows 后发现,本来已经激活的系统,在虚机里显示的是未激活。

更新: 后续 https://blog.csdn.net/weixin_42417818/article/details/114020438

更新:知乎上听说虚拟机内外安全隔离也有漏洞,这个我就不是很清楚了,我在家不管windows 还是 linux 都是开发学习用,和钱相关的主要都在手机操作.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值