如何获知磁盘使用的是 MBR 分区表还是 GPT 分区表,以及两种分区表如何互相转换

1 GPT 和 MBR 的分区标识

在 openEuler 操作系统中使用 GPT 分区表的磁盘和使用 MBR 分区表的磁盘有着不同的标识,可以通过多种命令来查看磁盘使用的是哪一种分区表

1.1 使用 fdisk -l 查看分区表类型

使用 fdisk -l 命令分别查看使用 MBR 和 GPT 分区表的磁盘信息。如下图所示:

命令返回结果中,Disklabel type 字段的值即为磁盘分区表类型标识符:

  • MBR 分区表的磁盘类型标识为:dos
  • GPT 分区表的磁盘类型标识为:gpt

1.2 使用 parted 查看分区表类型

使用 parted 命令分别查看使用 MBR 和 GPT 分区表的磁盘信息。如下图所示:

命令返回结果中,Partition Table 字段的值即为磁盘分区表类型标识符:

  • MBR 分区表的磁盘类型标识为:msdos
  • GPT 分区表的磁盘类型标识为:gpt

2 MBR 和 GPT 如何创建

2.1 如何创建 MBR 分区表

2.1.1 使用 fdisk 创建 MBR 分区表

只要使用 fdisk 命令对磁盘进行分区,那么就会自动创建 MBR 分区表,无需特殊操作,如下图所示:

上图显示:“设备不包含可识别的分区表。创建了一个新的 DOS 磁盘标签,磁盘标识符为 0x29fa7174。”

2.1.2 使用 parted 创建 MBR 分区表

执行 parted DISK mklabel msdos 命令即可创建 MBR 分区表,如下图所示:

2.2 如何创建 GPT 分区表

2.2.1 使用 gdisk 创建 GPT 分区表

只要使用 gdisk 命令对磁盘进行分区,那么就会自动创建 MBR 分区表,无需特殊操作,如下图所示:

上图显示:“在内存中创建新的 GPT 条目”,在保存后会把 gpt 分区表写入到磁盘中

2.2.2 使用 parted 创建 GPT 分区表

执行 parted DISK mklabel gpt 命令即可创建 GPT 分区表,如下图所示:

3 MBR 与 GPT 分区表如何转换

3.1 MBR 分区表转换为 GPT 分区表

现有一块使用 MBR 分区表的磁盘,如下图所示:

要将其转换为 GPT 分区表,该如何操作呢?只需要使用 gdisk 命令对该磁盘进行分区即可,会自动创建 GPT 分区表,如下图所示:

上图显示,使用 gdisk 命令对使用 MBR 分区表的磁盘进行分区时,会弹出如下提醒:“发现无效的GPT和有效的MBR;在内存中将MBR转换为GPT格式。此操作具有潜在的破坏性!如果您不想将MBR分区转换为GPT格式,请键入’q’退出!”,在保存后会把 gpt 分区表写入到磁盘中

现在磁盘分区表已经变为 GPT:

3.2 GPT 分区表转换为 MBR 分区表

现有一块使用 GPT 分区表的磁盘,如下图所示:

要将其转换为 MBR 分区表,该如何操作呢?使用 fdisk 命令对该磁盘进行分区,输出 “o” 命令创建一个 DOS 分区表,如下图所示:

上图显示,使用 fdisk 命令对使用 GPT 分区表的磁盘进行分区时,使用 o 命令创建 DOS 分区表时会弹出如下提醒:“该设备包含“gpt”签名,将通过写入命令将其删除。”,在保存后会把 mbr 分区表写入到磁盘中

现在磁盘分区表已经变为 MBR:

2 Likes

感谢分享,内容很全面!!