最准方法是执行sudo parted -l,查看“partition table:”字段值:msdos即mbr,gpt即gpt;fdisk -l查“disk label type”行,dos或gpt对应mbr或gpt;gdisk -l若显示“found valid gpt”则确认gpt,若“found invalid gpt and valid mbr”则为mbr;lsblk -f有partuuid列且含值可反推gpt。

在麒麟操作系统中确认硬盘使用的是MBR还是GPT分区表,是执行分区操作、安装系统或排查启动异常前的必要步骤;分区表类型错误会导致fdisk无法写入、UEFI固件拒绝加载引导程序、甚至数据丢失。
用parted -l直接读取Partition Table字段
这是最简明、机器可读性最强的方法,输出里明确写着“Partition Table:”,一眼就能定论。
打开终端,执行:sudo parted -l
逐块磁盘查找以“Partition Table:”开头的行——若值为【msdos】,即传统MBR;若为【gpt】,则是GUID分区表。
注意:该命令需root权限,否则部分磁盘可能不显示;若某磁盘信息块中完全找不到“Partition Table:”这一行,或显示unknown,说明分区表未被识别,应切换方法验证。
用fdisk -l核对Disk label type字段
fdisk对MBR识别稳定,对GPT也能给出基础判断,适合交叉验证。
第一步:运行命令 sudo fdisk -l
第二步:定位某块磁盘信息头,例如“Disk /dev/sda: 500 GiB”,在其下方紧邻行查找“Disk label type:”字样。
本文档主要讲述的是Android 操作系统的介绍;Android是基于Linux内核的操作系统,是Google公司在2007年11月5日公布的手机操作系统,早期由Google开发,后由开放手持设备联盟(Open Handset Alliance)开发。它采用了软件堆层(software stack,又名以软件叠层)的架构,主要分为三部分。底层Linux内核只提供基本功能;其他的应用软件则由各公司自行开发,部分程序以Java编写。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看
第三步:若显示【dos】,等同于msdos,即MBR;若显示【gpt】,则为GUID分区表。若该行缺失或标为unknown,说明分区表已损坏或未初始化,不能依赖此结果。
用gdisk -l穿透式识别GPT头结构
当fdisk输出模糊或怀疑存在混合分区表(如GPT+保护性MBR)时,gdisk是唯一能穿透表层、直击GPT头结构的工具。
执行命令:sudo gdisk -l /dev/sda(把/dev/sda换成你的真实磁盘设备名)
观察输出末尾提示:若显示“Found valid GPT with protective MBR”,说明是标准GPT;若显示“Found invalid GPT and valid MBR”,则实际为MBR格式,GPT头不存在或已损毁。
注意:运行后若看到警告“Warning: The kernel is still using the old partition table.”,说明内核缓存未刷新,必须执行sudo partprobe或重启系统,否则后续操作可能写入错误位置。
用lsblk -f辅助判断PARTUUID存在性
此法不直接显示分区表类型,但可通过元数据特征反推:GPT分区天然携带PARTUUID字段,MBR分区只有UUID。
执行命令:lsblk -f
查看输出列中是否有“PARTUUID”这一栏——若有且对应分区行有值(如“PARTUUID=1a2b3c4d-”),基本可断定该磁盘使用GPT;若仅有UUID而无PARTUUID列,大概率是MBR。










