[系统教程]微软Win10轻松转换MBR为GPT官方教程

  • A+

注:本文作者是Lenovo的技术支持工程师,所以这篇文章已经在Lenovo内部知识库,以及所撰写的英文版本,在Lenovo海外support网站发表过了,本文略有修改。

微软官方MBR无损转换GPT工具及使用方法

概述

MBR2GPT.exe是由微软官方随Win10 Creators Update 1703及更高版本提供的一个工具,用于将MBR分区表无损转换为GPT格式。

知识点分析

众所周知,主引导记录(MBR)转换为GUID分区表(GPT)时,无法保留硬盘上现有的操作系统、分区结构及数据,需要在转换之前事先全盘备份。

具体操作方法是在diskpart工具中执行convert to gpt命令。

虽然目前一些第三方工具(比如DiskGenius等)已经实现了MBR与GPT的无损转换,但很显然,微软官方的方案更具优势。

随着Windows10 Creators Update(1703)的发布,微软提供了一个名为mbr2gpt.exe的命令行工具,用于将MBR无损转换为GPT格式。

该工具旨在从Windows预安装环境(Windows PE)命令提示符运行,但也可以从完整的Windows 10操作系统(OS)运行。

重要事项:

1、将硬盘转换为GPT后,必须配合UEFI引导,操作系统才能启动。执行此操作前请务必确认您的机器和系统是否支持UEFI引导模式!

2、使用此工具理论上不会丢失硬盘数据,但为了保险起见,建议还是备份好重要数据,避免翻车,小心驶得万年船。

操作步骤

我们首先搭建实验环境,在虚拟机中以Legcay BIOS + MBR的方式安装64位Win10 1703,具体过程已经超出本文范围,不再赘述。

安装好后,查看硬盘和分区信息:

 

 

确认硬盘为MBR分区表,总大小15G,共两个分区,C盘前面的500M分区是安装系统是自动划分出的用于WinRE环境的保留分区。

OK,下面继续。

首先以管理员身份运行命令提示符,输入以下命令:

mbr2gpt /validate /allowfullos然后回车

 

这里解释一下后面两个参数的含义:

validate表示对当前硬盘进行验证,需满足下列条件才能进行后续的转换操作

 

allowfullos参数表示允许在完整的操作系统(OS)环境下运行,因为此工具默认需要在Windows预安装环境(PE)中运行

下一步,开始真正的转换。

对于只有一块硬盘的机器,可以直接输入mbr2gpt /convert /allowfullos开始转换(在操作系统下运行,仍需添加allowfullos参数,否则会报错!)

对于SSD硬盘,转换过程很快,实测10s左右即可转换完成;机械硬盘未经测试过,时间可能会长一些。

 

若机器有多块硬盘,请先用diskpart工具中的list disk选项确认要转换的硬盘的编号,然后添加/disk:[DiskNumber]参数指定硬盘。

在本例中是disk 0,所以输入mbr2gpt /convert /disk:0 /allowfullos如下图:

 

转换过程中会自动创建UEFI + GPT引导模式所需的EFI分区。

在转换成功完成后,工具会提示将BIOS由Legacy模式切换为UEFI模式,否则重启后系统无法引导!这一步非常重要,切记!

下面我们将虚拟机设置为UEFI引导模式

 

保存后重新开启虚拟机,已经可以顺利引导了,如图:

 

进入系统后,再次使用diskpart验证,发现已经是GPT了,见下图:

 

至此,转换完成。

备注

1、MBR2GPT工具是Win10 1703及更高版本自带的,无需单独下载安装,直接在cmd中运行即可;

2、本文参考资料来自微软官方文档,里面有更详细的说明(点此链接查看

3、本文方案的优点&适用场景是:无需重装系统、不破坏现有分区和数据,实现从MBR到GPT的转换,并且是微软官方方案,相比第三方软件更有优势。

4、对于Win7、Win8/8.1,微软的建议是先升级到最新版本的Win10,然后再进行从MBR到GPT的转换。

5、若驱动器开启了BitLocker,请在转换前先关闭BitLocker加密状态。

7、方案中大量涉及命令行,请先评估自己的实际操作能力,避免因操作不当带来麻烦。

下载服务恢复

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

Blue Captcha Image
Refresh

*