所以我试图从可启动的 USB 安装 Windows 10,不幸的是没有阅读错误我删除了 C 分区,我得到了那个错误
Windows 无法安装在此磁盘上 所选磁盘具有 MBR 分区表,在 EFI 系统上,windows 只能安装在 GPT 磁盘上`
我已经搜索了两天,并尝试了以下解决方案:
- 将 USB 刻录为 GPT 或 MBR
- 在 USB 上使用 gparted Live(必须删除数据)
- 将传统模式更改为 UEFI 模式并禁用安全启动
任何其他解决方案要么需要第三方(我无法运行,因为我没有 Windows),要么使用该clean
命令删除整个硬盘。
那么有什么方法可以做到这一点而不会丢失其他分区或访问它们并备份它们(不取出硬盘驱动器)?
这个答案也有效吗?
在 Windows 安装期间将 MBR 转换为 GPT 而无需擦除磁盘
,因为在进入[w]
转换后它说Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING PARTITIONS!!
在我看来这会擦除所有内容
在任何 Linux 系统(包括 Gparted Live)中,打开一个终端并
gdisk
在代表您的磁盘的设备上运行。例如,如果lsblk -S
说它是 /dev/sda,则使用gdisk /dev/sda
.gdisk 是一种常用的分区工具,类似于 parted/GParted 和 Linux fdisk。唯一的区别是它总是写出 GPT 分区表——当它在 MBR 分区磁盘上运行时,它会读取现有的 MBR 分区,但总是以 GPT 格式写入表。
在 gdisk 中,不要做任何其他事情(不要尝试创建或删除分区),直接使用
w
命令保存更改即可。(您不需要创建 EF00 分区;无论如何,Windows 安装程序都会这样做。)虽然如果你愿意,你可以使用
p
查看实际的分区表并记下每个分区的开始+长度(以扇区为单位)——如果一个分区被删除但随后在完全相同的位置重新创建,它仍然会包含与以前相同的数据(除非分区工具故意将其清除,而 gdisk 通常不会这样做)。确认写入后,旧的 MBR 分区表将被移除,并创建包含相同分区的 GPT 分区表。
(是的,我意识到这与链接的帖子中的大部分内容相同。)
但是您已经在运行 Windows。讯息
是在Windows PE上运行的 Windows 安装程序的输出。它不是成熟的 Windows,但仍然是具有几乎相同功能的相同 Windows 内核
Windows PE 可以运行正常的 Windows exe 文件,更重要的是包含用于无损转换的MBR2GPT.EXE 。因此,在启动安装盘后,只需按Shift+F10,命令提示符就会打开,让您做任何您想做的事情。现在只需运行
mbr2gpt
进行转换,例如下面将磁盘 0 转换为 GPT只要您的磁盘满足要求,它就会将磁盘从 MBR 转换为 GPT而不会丢失数据
另请参阅将 MBR 转换为 GPT - 没有任何操作系统
如果转换失败,请参阅无法从 MBR 转换为 GPT以了解其他解决方案
有关 Windows PE 的详细信息,请参阅为什么将 WinPE 称为操作系统?
首先,我建议在问题上更精确。“来自可启动的 USB”是指什么?CD-Rom、DVD-Rom、U 盘还是硬盘?
“将传统模式更改为 EUFI 模式并禁用安全启动”我不知道“EUFI”是什么意思。我只能猜测这是一个错误。你应该多注意一点。
==================================================== =======
关于你的问题,我的回答是:
检查 MBR 到 GPT 转换的风险:
当转换不需要移动或缩小分区时,从 MBR 到 GPT 的转换可以被认为是低风险的。
由于 GPT 结构位于明确定义的位置,因此需要移动或缩小分区。
查看 https://en.wikipedia.org/wiki/GUID_Partition_Table中的图像
GPT 结构需要磁盘的前 34 个扇区(从扇区 0 到 33)和后 33 个扇区(因为没有驻留在扇区 0 中的保护 MBR 的备份)。
如果您的分区不触及该区域,则 GPT 结构可以写为它只是一个定义的指针列表,该指针位于磁盘的开头和结尾,指向磁盘内部分区的开头。
如果您的分区从磁盘开头的所谓 GPT 区域开始,则必须将其向前移动到磁盘末尾的方向(朝向更高的 LBA 编号)。这种移动操作是有风险的。想象一下,如果您在这样做时松开电源会发生什么。
如果移动使分区接触到磁盘的最后 33 个扇区,则必须通过向后移动一个或几个分区(在扇区号 0 的方向)来创建磁盘空闲空间,假设分区之间仍有空闲空间,或者至少要缩小一个分区。如果要收缩的分区不是磁盘上的最后一个分区,则也需要移动。这个过程也可以被认为是有风险的。
如果里面的分区不接触前 34 个扇区,您仍然需要查看分区是否接触最后 33 个扇区。这将需要移动和/或收缩以释放最后 33 个扇区。
即使在低风险环境中,也值得偏执并记录当前的分区结构。我会推荐Testdisk。在进行驱动器分析时,您可以将驱动器的分区结构备份到标有“backup.log”的文件中,您可以使用文本编辑器阅读该文件。
检查磁盘开头的可用空间
有了这些信息,您就可以确定该操作是否有风险。查看“backup.log”时,可以直接看到开始时可用空间的可用性。
检查磁盘末尾的可用空间
要检查磁盘末尾的必要空闲区域,您可以查看应该打印扇区数的磁盘外壳,或者使用像 hdparm 这样的 linux 工具。
这是一个链接的示例,重要的是图片上的 LBA48 数字:
https://www.geeksforgeeks.org/hdparm-command-in-linux-with-examples/
计算最后一个分区使用的最后一个扇区,检查是否还有 33 个空闲扇区。
结论
如果磁盘开头或磁盘末尾的 GPT 区域被占用,则最好重新安装新磁盘,而不是尝试进行有风险的转换。
以上都适用于硬盘接口外侧512字节的扇区大小。这可以是真正的 512 字节扇区或 512 字节模拟(通常是内部 4096 字节)。如果所讨论的硬盘的外部扇区大小为 4096 字节(4096 字节的内部扇区以 1:1 的比例通过),则扇区编号会发生变化。