是否可以让 .vmdk 的开头指向启动映像,而其余部分指向其他分区?

是否可以让 .vmdk 的开头指向启动映像,而其余部分指向其他分区?

尝试通过 VirtualBox 从 Linux 启动到我物理安装的 Windows 10——两者都在同一个硬盘上。我阅读了很多资料:

我遇到的问题是有一个启动分区来加载 Windows 10 EFI。

据我所知,这是我所进行的过程:

  1. 创建时间.vmdk
sudo VBoxManage internalcommands createrawvmdk \
-filename win10.vmdk \
-rawdisk /dev/nvme0n1 -partitions 2,3,4 \
-relative -mbr win10.mbr

注意:分区 2、3 和 4 是 Microsoft 保留分区、主 NTFS 分区和 Windows RE。我不想有该/boot/efi分区,因为在虚拟机中运行已安装的分区是不安全的。win10.mbr来自dd if=/dev/nvme0n1 of=win10.mbr bs=512 count=1

  1. /dev/nvme0n1更改权限以允许我的用户对生成的文件(win10.vmdk和)进行读/写访问win10-pt.vmdk

  2. 在 VirtualBox 中创建虚拟机,使用win10.vmdkNVMe 控制器作为直写硬盘。此外,还启用了 UEFI。

  3. 将虚拟机的硬件 ID 更改为我的。

当然,这会将我启动到 UEFI cli,因为没有安装启动分区。

  1. 将启动分区复制到.isodd if=/dev/nvme0n1p1 of=boot.iso

  2. 将设置boot.iso为虚拟机的光盘并启动。由于找不到 Linux 安装,因此启动到 grub-cli(很好,因为我不想通过访问已安装的分区来冒数据丢失的风险)

  3. 从 grub cli 启动 Windows 10 EFI,但在加载 Windows 10 时,会出现蓝屏,提示启动分区无法访问(光盘在 VirtualBox 中是只读的,因此这是有道理的)

那么,如何获得用于启动 Windows 10 虚拟机的当前启动分区的副本?我正在考虑以某种方式使第一个分区指向.vmdk一个.img文件,分区 2、3 和 4 指向实际分区,而第 5 个分区将不指向任何内容(因为那是 Linux 分区,我不需要它,尤其是因为它存在数据丢失的风险)。当然,另一种实现相同目标的解决方案也很棒。

相关内容