我对这里发生的事情有疑问。这里的“一个新的DOS磁盘标签”是否意味着DOS分区表已经创建了?换句话说,默认创建了一个DOS分区表,然后当选项“g”创建GPT分区表时将其删除?
primus@ubu2104:~$ sudo fdisk /dev/sdd
Welcome to fdisk (util-linux 2.36.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0xb23a7979.
Command (m for help): g
Created a new GPT disklabel (GUID: 4F2417FA-CE86-4649-A719-F47191C0742E).
Command (m for help):
答案1
是的,fdisk
默认情况下会在内存中创建一个“DOS”分区表。创建一个 GPT 分区表来g
替换它。如果您在创建 GPT 分区表之前实际编写了第一个分区表,fdisk
则会明确告诉您它正在替换分区表:
旧的 dos 签名将被写入命令删除。
fdisk
您可以通过仅支持 GPT来避免这种情况:
fdisk -t gpt /dev/sdd
您仍然需要键入g
来创建 GPT 分区表。
答案2
fdisk
在您告诉(使用命令)之前,不会将任何内容写入磁盘,w
因此 DOS 分区表实际上并未写入磁盘。但由于磁盘没有分区表,fdisk
自动计划创建一个。这只是一个辅助函数,因此您不必手动执行此操作,并且可以创建分区(使用n
)而无需考虑分区表。如果您决定创建 GPT 分区表(使用g
),则计划的 DOS 分区表创建将被取消,并且仅创建 GPT 分区表。
-n
您可以使用/避免自动创建分区表--noauto-pt
。
答案3
这似乎是一个覆盖整个磁盘的保护分区,并确保 GPT 不兼容分区处理不会将磁盘视为空磁盘。
实际分区是 GPT 分区(包含在整个“DOS”分区中)。
看https://en.m.wikipedia.org/wiki/GUID_Partition_Table#/及其位于扇区 0 的保护性 MBR。