无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 4066|回复: 10
打印 上一主题 下一主题

[讨论] 同一个磁盘是否可以同时存放MBR和GPT的分区表信息?

[复制链接]
跳转到指定楼层
1#
发表于 2018-1-17 13:10:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
很久之前就看到大家在讨论BIOS启动GPT磁盘中的操作系统。
既然是BIOS,一定会去读取0扇区。GPT磁盘为了增加操作系统兼容(容错)性,准备了一个PMBR扇区,保证能兼容的尽量兼容,不能兼容的防止误删除。
PMBR存放在GPT分区表的0扇区,假如你的计算机使用了win8以上的UEFI+GPT启动,PMBR里面什么内容都没有也是没关系的。但是如果打算使用BIOS+GPT启动,0扇区一定要写入分区表信息的。

那么问题就来了:
1.我既在0扇区记录了MBR分区表信息(大概是在01BE的位置),同时也在1扇区记录了GPT分区表的信息,是否就代表我的磁盘是MBR+GPT混合分区表磁盘?
2.因为我同时在2各地方记录了相同的分区表信息,如果2个地方分区表有所不同,是否会造成分区错乱?比如说我GPT分区表没有逻辑分区的概念,但是我在MBR分区表中设置了逻辑分区。是否要保证2个分区表严格的一致性?
3.我没有尝试过BIOS+GPT,但是根据坛友反应,操作系统启动后,无论是分区表的多个主分区,还是超过2.2t的部分,都是能够正常识别的。这说明BIOS启动后,操作系统确确实实的读取了"GPT分区表",这项工作是在什么时候做的呢?我猜测应该是MBR的引导文件引导了操作系统,他的生命周期就结束了,就没他事儿了,引导操作系统之后,GPT分区是操作系统识别的,和启动方式没有一毛钱关系,我理解的对吗?
4.操作系统判断一个磁盘是否为GPT磁盘是通过什么判断的?

2#
发表于 2018-1-17 13:43:40 | 只看该作者
当用BIOS启动而磁盘是GPT的分割时
是需要对0扇区加工滴...

整合后BIOS可读取0扇区来'启动'...
而DG则是判读成GPT磁盘分割

..操作系统确确实实的读取了"GPT分区表",这项工作是在...
启动工作交付BootMgr去执行,也是Grub4Dos...

之前在NonameTeam有个实践,可惜2017年底前就访问不了了...


点评

bios+GPT这种模式我已经用了三年了.这种模式可以启动xp/win7/win10/ubuntu 还能兼容mac系统 副作用为零,也可以弄成uefi/bios+gpt双重引导模式.  发表于 2018-1-18 02:36
回复

使用道具 举报

3#
发表于 2018-1-17 14:12:52 | 只看该作者

点评

感谢杏大分享。 也就是说,无论是MBR还是GPT,都是人为定义的标准,而应用层(操作系统、分区软件)都是依赖于这套标准来操作分区的。混合分区表不符合这个标准,也就难免会遇到各种各样的意外,而我所能做到的仅仅  详情 回复 发表于 2018-1-18 13:09

评分

参与人数 1无忧币 +5 收起 理由
lbw2007 + 5 很给力!

查看全部评分

回复

使用道具 举报

4#
发表于 2018-1-18 02:25:42 | 只看该作者
1.mbr gpt混合分区很早就出现了  分区软件gdisk可以处理这种分区表 目的是为了应付bios+mbr/gpt的黑苹果和windows双系统存在的
2.这种变态分区是不会混乱的,windows在mbr和gpt分区表同时存在时,会直接无视gpt分区表,只当是普通的mbr分区方式处理.而苹果系统或是linux类系统会无视mbr分区表,直接当gpt分区表处理. 鉴于你只是安装windows系统,你的这种混合分区模式毫无意义,因为windows会只当是mbr分区模式处理,gpt分区信息会被直接无视,不起作用.
3.bios+gpt这种方式我一直在使用,但是请注意,这里的gpt不可以是带有mbr分区表的gpt分区表,你可以在纯粹的gpt分区表硬盘的0扇区写入引导代码,但是绝不能写入mbr的分区参数,不然的话gpt分区信息就无效了.至于gpt的识别问题,只和操作系统有关系.
4.操作系统判断硬盘是否为GPT分区模式,是开发者的编程模式决定的.
1.windows全套系统会先读取硬盘mbr分区表位置的分区信息,如果有,直接判断为MBR分区表,如果没有,接着读取硬盘GPT分区表信息.
2.linux类系统刚好相反,先判断是不是GPT分区表,如果满足GPT要求,就直接无视你的MBR分区表信息.苹果系统也是类似的

点评

如果我在WinPE下面用DG修改了分区表结构,按照2楼的说法我修改的是GPT分区表结构,那么MBR分区结构依然保持原样,但是GPT分区结构已经发生变化了,也就是我的MBR和GPT分区表结构是完全不同的,这样存储数据不会乱吗  详情 回复 发表于 2018-1-18 13:02
回复

使用道具 举报

5#
发表于 2018-1-18 02:32:39 | 只看该作者
同一个磁盘是否可以同时存放MBR和GPT的分区表信息?
我的答案是可以的.
但是呢?
同时存放MBR和GPT双分区表被windows系统识别为MBR分区,GPT分区信息直接被无视
同时存放MBR和GPT双分区表被linux/mac系统识别为GPT分区,MBR分区信息直接被无视
所以这种混合分区模式其实是一点用处没有的.根本不会造成分区混乱.
bios+gpt这种模式是可以的,但是请不要添加任何MBR分区信息,但你可以在硬盘0扇区写入一个引导,来加载ESP分区里面的grub4dos,进而启动xp(需替换2003系统的disk.sys文件)/win7/win10/ubuntu/android/mac/pcbsd等系统   这些系统都会把硬盘当作GPT分区表处理,不会有任何副作用.本人这样使用已经很久了.

评分

参与人数 1无忧币 +5 收起 理由
maomao659274 + 5 很给力!

查看全部评分

回复

使用道具 举报

6#
发表于 2018-1-18 06:19:02 来自手机 | 只看该作者
学习了
回复

使用道具 举报

7#
发表于 2018-1-18 13:02:09 | 只看该作者
510819776 发表于 2018-1-18 02:25
1.mbr gpt混合分区很早就出现了  分区软件gdisk可以处理这种分区表 目的是为了应付bios+mbr/gpt的黑苹果和w ...

如果我在WinPE下面用DG修改了分区表结构,按照2楼的说法我修改的是GPT分区表结构,那么MBR分区结构依然保持原样,但是GPT分区结构已经发生变化了,也就是我的MBR和GPT分区表结构是完全不同的,这样存储数据不会乱吗?
如果我的硬盘容量大于2.2TB,并且我放满了数据,那多出来的一部分操作系统怎么处理?

点评

至于你说的2tb以上的容量硬盘,这个无需担心,无任何问题。  发表于 2018-1-18 16:40
混合分区表,win只认mbr,linux/mac只认gpt 除非你是win/linux双系统,这样两套分区表才会都起作用,我的建议是彻底放弃mbr分区表,你可以用bios+gpt 不会出矛盾了  发表于 2018-1-18 16:34
回复

使用道具 举报

8#
发表于 2018-1-18 13:09:02 | 只看该作者
sinoxer 发表于 2018-1-17 14:12
http://www.rodsbooks.com/gdisk/hybrid.html

感谢杏大分享。
也就是说,无论是MBR还是GPT,都是人为定义的标准,而应用层(操作系统、分区软件)都是依赖于这套标准来操作分区的。混合分区表不符合这个标准,也就难免会遇到各种各样的意外,而我所能做到的仅仅是通过做一系列处理尽量去避免这些意外。
换句话说,不是不行,而是尽量避免杂交……
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-4-23 17:44

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表