Answers:
UEFI上的Windows 7要求磁盘分区使用GUID分区表(GPT),而不是BIOS系统上的传统MBR分区格式。不幸的是,Windows无法将MBR分区无损地转换为GPT。
但是,如果您不介意从驱动器中复制数据,然后进行转换,然后再将其复制回去,则可以按照Microsoft Technet文章将主启动记录磁盘更改为GUID分区表磁盘中的说明使用Windows进行操作。本文介绍了两个过程,这两个过程都需要复制数据,然后修改磁盘以使用GPT。使用Windows界面,您首先要删除磁盘上的任何卷,然后通过右键单击磁盘并选择菜单项将磁盘转换为GPT磁盘。结合使用命令外壳和Admin高程,您可以使用diskpart
实用工具删除任何卷,然后将磁盘转换为GPT磁盘。
如果您不想首先备份数据并可以访问可安装驱动器的Linux机器,则Linux中有一些工具可以使您按如下所述无损地转换分区类型。如果您没有Linux盒子,也可以尝试创建Linux引导CD并从中进行引导。
Searhing为“MBR转换为GPT”带来了其他工具,但我从来没有尝试过它们。
不,您不必格式化并重新安装。您可以转换磁盘以允许UEFI引导。
有一个很棒的开源项目:gptgen,它是一个“ ..tool”,用于以非破坏性方式转换以常见的“ MSDOS风格” MBR方案(包括扩展分区)分区的硬盘,以使用GUID分区表(GPT)。”
Microsoft在此过程上发布了一个很好的教程。以下是节略的说明(您也可以使用未删节的版本)。这个过程花了我不到10分钟的时间。
脚步
备份任何重要内容。我们将对硬盘进行一些重大更改。
创建系统修复光盘(或使用原始Windows安装媒体)。
标识要转换的硬盘。您可以[Windows Disk Manager][4]
用来执行此操作。这通常是磁盘#0。
下载gptgen。这是神奇的工具。
解压缩gptgen,以admin身份启动cmd提示符,然后运行以下命令。 警告您确实备份了数据,对吗?这是不可归还的重点。
gptgen.exe -w \\.\physicaldrive0
运行以上命令后,您可能会看到蓝屏。那是正常的。我自己没有看到蓝屏,那也很好。
使用Windows安装光盘或系统修复光盘启动。
选择语言和首选项,然后选择“ 修复计算机”->“疑难解答”->“高级选项”->“命令提示符”
我们将使用diskpart完成磁盘上的更改。输入“ diskpart”,然后按Enter。
通过键入“列表磁盘”来标识Windows所在的启动磁盘,然后按Enter。这样的事情应该出现:
Disk ### Status Size Free Dyn Gpt -------- ------------- ------- ------- --- --- * Disk 0 Online 128 GB 0 B *
select disk 0
list partition
您会看到类似以下内容:
Partition ### Type Size Offset ------------- ---------------- ------- ------- Partition 1 Primary 350 MB 1024 KB Partition 2 Primary 126 GB 350 MB
select partition 1
delete partition
create partition EFI size=100 offset=1
format quick fs=fat32 label="System"
assign letter=S
create partition msr size=128 offset=103424
Partition ### Type Size Offset ------------- ---------------- ------- ------- Partition 1 System 100 MB 1024 KB Partition 2 Reserved 128 MB 101 MB Partition 3 Primary 126 GB 229 MB
list volume
select volume 3
assign letter=C
exit
bcdboot c:\windows /s s: /f UEFI
/f
标志,因此最后一条指令在Windows 7上无效。我试着删除它,但是没有用。
将Windows安装从旧版转换为UEFI:
请注意,此技术仅适用于支持UEFI固件的计算机系统。请首先在您的BIOS设置中进行检查,然后继续本教程。
步骤1:
确认您的安装确实处于传统模式。按WinKey+ R,然后键入msinfo32
并按Enter。BIOS模式在“系统摘要”中应为“旧版”。
步骤2: 下载System Rescue Disk并从中制作可启动媒体。从此处下载磁盘。请参阅制作可引导媒体的说明。那是微不足道的,可以按照本教程进行操作。
testdisk
使用箭头键进行导航。选择在传统模式下安装Windows的HDD,然后按Enter。选择[EFI GPT] EFI GPT分区图,然后按Enter。选择分析,然后按Enter。选择“快速搜索”(位于底部),然后按Enter。选择继续(在底部),然后按Enter。再按一次Enter键。选择Write(在底部),然后按Enter。按Y,然后按Enter。您的分区表已从MBR更改为GPT。步骤7: 运行以下命令:
diskpart
list disk
-注意包含Windows安装的磁盘号。让我们说,这是x
select disk x
list partition
-注意包含Windows安装的分区号。让我们说,这是y
select partition y
shrink minimum=200 desired=200
create partition efi
list partition
-注意新分区的分区号。让我们说,这是z
select partition z
format fs = fat32
assign letter = b:
exit
mkdir b:\EFI
mkdir b:\EFI\Microsoft
cd /d b:\EFI\Microsoft
bootrec /fixboot
diskpart
list vol
bcdboot c:\windows /l en-us /s b: /f ALL
-请注意,此处c:
表示安装Windows的分区的字母。让我们先找出来。步骤8: 重新启动。多田!做完了!检查您的安装是否已更改为UEFI。
参考:如何将Windows 7/8 / 8.1安装从旧版转换为UEFI,而不会丢失数据!
使用gdisk的更简单方法:将Windows 7/8/10安装从传统转换为UEFI,而不会丢失数据(更简单的方法)
纳森贝德福德的答案的快速附录:
正如simonzack所说,Windows 7 bcdboot
不支持该/f
标志。我没有任何问题。只需bootrec /rebuildbcd
在运行Nathan的命令后立即运行,它就可以正常工作了。
不需要第二个128 MB分区。我没有房间,只是忽略了它。到目前为止一切正常。