我不知道我的驱动器环境发生了什么,无法将 MBR 转换为 GPT,并mbr2gpt
指出我没有启动分区:
Info MBR2GPT was explicitly asked to run in full OS mode.
Info MBR2GPT: Attempting to validate disk 0
Info MBR2GPT: Retrieving layout of disk
Info MBR2GPT: Initial partition information
Info ===========================================================
Info Partition layout for disk: 0
Info Partition style : MBR
Info MBR signature: 3309446813
Info Number of partitions : 2
Info ===================PARTITION===============================
Info Number: 1
Info Type: 7
Info Boot: No
Info Recognized: Yes
Info Style: 0
Info Offset: 1048576
Info Length: 197003647488
Info Volume: \\?\Volume{c542269d-0000-0000-0000-100000000000}\
Info Drive: C:\
Info NT Path: \Device\HardDisk0\Partition1
Info ===================PARTITION===============================
Info Number: 2
Info Type: 7
Info Boot: No
Info Recognized: Yes
Info Style: 0
Info Offset: 197005410304
Info Length: 315102330880
Info Volume: \\?\Volume{c542269d-0000-0000-0000-70de2d000000}\
Info Drive: D:\
Info NT Path: \Device\HardDisk0\Partition2
Info ===========================================================
Info ESP partition size will be 104857600
Info MBR2GPT: Validating layout, disk sector size is: 512 bytes
Error ValidateLayout: Wrong boot partition count, expected 1 but found 0.
Error Disk layout validation failed for disk 0
我在磁盘管理中检查了我的驱动器,其中磁盘 0 没有系统保留分区,但磁盘 2 有;我真的很困惑它是否是我在很久以前在其上安装系统时留下的:
有人能帮帮我吗?
答案1
它可能谈论的是EFI 系统分区(ESP),这是 GPT 磁盘上的 Windows 启动所必需的。为此,您需要缩小C:
或D:
获得至少 100MiB,这是程序似乎期望的大小。(也许缩小Disk 2
或E:
也F:
可以。不确定。)您可以右键单击磁盘管理中的分区来缩小它。
不知道是否需要您提前自己创建。如果需要,您可以尝试这,但根据文档,这仅在磁盘已经是 GPT 磁盘时才有效(而 MS 文档通常不可靠)。如果这不起作用,您可以在例如“实时”Linux 上使用fdisk
(和mkfs.fat
) 来执行此操作。确保将类型代码设置为ef
。
我不确定这个程序运行得如何,所以我建议你缩小D:
1M(再次使用磁盘管理,这可能是缩小 NTFS 格式分区的最安全、最好的方法)左右,这样当备份 GPT 写入磁盘末尾时,它不会对文件系统造成任何破坏D:
。
另请查看文档以防bcdboot
程序没有为您在新创建的 ESP 上安装 UEFI 版本的 Windows 启动管理器。请确保您使用/f UEFI
明确指定的版本,并在转换后重新启动之前安装该版本,因为 BIOS 版本(显然是 上的Disk 2
)将无法再引导C:
/上的安装Disk 0
。
编辑:也许您应该改为使用缩小后获得的空间diskpart
创建一个主分区,并将其标记为并查看。如果仍然不起作用,请将其格式化为 NTFS 并使用(使用新分区的驱动器号作为 X)将 Windows 启动管理器的 BIOS 变体安装到其中,然后尝试通过传统启动而不是在 UEFI 启动菜单中重新启动。(但它们不会在那里显示。通过识别设备信息中的供应商/型号等,自己找出哪个是哪个。)Disk 0
active
bcdboot C:\Windows /f BIOS /s X:
Disk 0
Disk 2
您也可以简单地将bcdboot C:\Windows /f BIOS /s C:
其标记C:
为活动,尽管我不知道这个愚蠢的程序C:
在这种情况下会做什么。
您可能还需要执行以下操作:
bootsect /nt60 X:
bootsect /nt60 X: /mbr
PS 如果您的主板有 BIOS 而不是 UEFI,请忘记将系统磁盘转换为 GPT 磁盘,因为您将永远无法使用 BIOS 启动 Windows-on-GPT。