感谢IT之家网友 醉卧沙场啸 的投稿 IT之家编辑注:本文作者是Lenovo的技术支持工程师,所以这篇文章已经在Lenovo内部知识库,以及所撰写的英文版本,在Lenovo海外support网站发表过了,本文略有修改。 概述 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硬盘,atv,转换过程很快,实测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、方案中大量涉及命令行,请先评估自己的实际操作能力,避免因操作不当带来麻烦。 (责任编辑:本港台直播) |