Hi all,

 

小伙伴分享一个GPT分区无损转MBR分区的操作。大家如果有更好的方法,欢迎讨论。或者本文中有错误的地方,欢迎指出。

 

简短步骤:

=======================

1winPE启动,磁盘工具,删除GPT中的EFIMSR等分区,并使分区总数<=4,并让第一个分区成为活动分区

2linux启动,gdisk /dev/sda, r, g, p, w

3winPE启动,修复引导部分

=======================

 

说明:分区操作是危险操作,如果包含重要数据,请先备份重要数据。虽然以下操作大多数情况都是可行的,而且在修改之前也可以备份分区表,万一失败了,再把备份的分区还原

 

详细步骤,请往下看:

 

GPTMBR是常见的两种 partition schema,区别主要就在于:1GPT支持对2T以上的硬盘进行分区;2,如果要UEFI启动,则分区必须是GPT,具体有很多官方文档,这里也引用一篇来自政府网站的“官方”文档:

 

对硬盘进行分区时,GPTMBR有什么区别?

http://fyzx.ankang.gov.cn/Article/Class26/201408/1484.html

 

 

现在新买的电脑很多都是采用GPT分区的,但并不是所有的操作系统都支持GPT分区,有些软件可能只能运行在老的操作系统上,我们想把GPT分区转换成MBR分区,是否有方法呢?而且这时候电脑已经用了一段时间,每个分区都有数据,能否实现无损转换呢?微软的官方文章都是说把所有的分区删除,然后系统盘启动,Shift+F10,使用diskpart工具来转换,就是所有的数据都没有了。命令如下,供参考:

 

diskpart, list disk, select disk 0, clean, convertmbr

 

GPT分区表的大致结构如下:

GPT分区无损转MBR分区的操作_GPT

 

 

网上查了下,有很多磁盘管理工具都可以实现GPTMBR的转换,包括国内比较出名的DiskGenius工具,但。。。,都是要钱的:(

 

DiskGenius免费版常规的操作都可以,比如:查找丢失的分区并重建分布表,分区大小调整等。但GPTMBR,需要专业版支持。其它工具也类似,免费的版本只提供有限的功能。

 

GPT分区无损转MBR分区的操作_GPT_02

 

 

 

有没有免费的工具可以实现呢?很自然,想到了linux这个免费的平台,果然,很简单,用gdisk这个自带的工具就可以实现。

 

Ubuntu系列的发行版一般都支持live模式,即不用先安装,可直接从光盘或者U盘启动并使用,一切功能都有,如果觉得好,再决定是否安装到硬盘。这里用的是linuxmint 17.3 Xfce Rosa(此发行版基于Ubuntu),从U盘启动,运行gdisk,先试试效果

 

检测到了GPT分区。用户正常使用是有CDEF四个盘,这里用print 命令打印分区表的时候显示有7个分区,前面三个容量都比较小,都是几百MB,其中第一个是恢复分区,第二个是ESP (EFI System Partition),第三个是MSR(Microsoft Reserved) 分区

 

GPT分区无损转MBR分区的操作_GPT_03

 

 

输入r,进入recovery/transformation ,可以看到g 命令是用于转换的,按g进行转换,再按p,打印分区表,这里的分区表最后一列显示出了分区类型,0x07表示微软的NTFS分区,0x0B或者0x0CFAT32分区,0x27是恢复分区

 

GPT分区无损转MBR分区的操作_GPT_04

 

 

从上图可以看出,由于MBR分区只能有四个主分区,这里只能转换前面四个分区,有用的就是用户的C盘,而DEF等数据盘都不能转换。需要将不用的分区删除并将分区控制在4个以内。

 

 

winPEPre-installation Environment)启动,运行磁盘工具,删除GPT相关的三个分区,这些分区反正也用不着了,也不包含用户数据。工具很多,这里截图是DiskGenius,可以看到,在第一个分区前面有一段空白,容量是300MB+100MB+128MB,这是删除后的效果。同时也可以看到用户CDEF盘都有数据,图中阴影部分。

 

GPT分区无损转MBR分区的操作_MBR_05

 

 

删除后,记得将第一个分区(这里显示为C盘)设置为活动分区,就是设置分区0x80标志,否则系统无法引导,因为原来的活动分区已被删除。

 

 

再次运行gdisk, r, g, p, w,发现这次行了,包含用户数据的四个分区都可以转换

 

GPT分区无损转MBR分区的操作_MBR_06

 

 

输入w命令,write 所做的改动到磁盘

 

GPT分区无损转MBR分区的操作_转换_07

 

 

再次进入PE,修复系统引导部分

 

GPT分区无损转MBR分区的操作_转换_08

 

 

重新启动,从硬盘引导,成功进入win8,各分区数据正常

 

GPT分区无损转MBR分区的操作_MBR_09

 

 

至于前面500MB的空白区域,可以不用管它,对于1T的硬盘来说,这些可以忽略不计。或者用磁盘工具进行分区调整,几分钟的事情。同时想到,如果我们反过来转换,从MBR转成GPT的话,似乎应该先把第一个分区缩小,空出500MB以便创建GPT的这些分区。有兴趣的可以试试:)

 

感谢花时间看完此篇。

 

Regards,

Alex Zhu