如何在不损失驱动器末尾的NTFS分区的情况下将驱动器的分区表从MBR更改为gpt?

长话短说,我有一个使用MBR分区表格式化的外部USB硬盘驱动器,我想在一个~23.40 GB未分配空间中以UEFI模式安装Ubuntu,然后我需要保留~442.33 GB NTFS分区:

截图

要在UEFI模式下安装Ubuntu,我需要将驱动器的分区表格式化为gpt。

我不认为有一种简单/直接的方法将MBR分区表转换为gpt分区表,所以我也在寻找复杂/间接的方式。

例如,我认为可以通过记下NTFS分区启动,编写新分区表并将NTFS分区添加到新分区表来完成某些操作,但我从未这样做过,我不知道从哪里开始; 此外我不想在这种情况下第一次尝试这个,因为我对这些东西并不是很有信心而且我不能失去我需要保留的NTFS分区。

实际上有一种简单的方法:在磁盘上运行gdisk ,然后键入w以保存更改(如果您不执行任何其他操作,则包括从MBR转换为GPT, gdisk会自动执行此操作)。 也就是说,有一些警告:

  • 如果磁盘是可引导的,则转换后它将不再可引导。 通常可以通过安装合适的引导加载程序来恢复可引导性。 NTFS意味着Windows,这意味着从BIOS模式转换为EFI模式启动。 做出这种改变是可能的,但有点单调乏味。 这是一个描述如何操作的页面。 如果磁盘严格来说是一个数据(非启动)磁盘,那么这个问题对您来说并不重要。
  • 如果磁盘上的最后一个分区太靠近磁盘的末端,它可能需要缩小一小部分 – 通常只有几个扇区,尽管许多工具需要舍入到1MiB单元,所以你可能会丢失1MiB左右。 GParted经常忽略像这样的微小间隙,所以如果你需要这样做,你的屏幕截图还不清楚。
  • 如果第一个分区开始太靠近磁盘的起始位置,则可能需要移动其起始点。 你的磁盘显然不是这样。
  • 某些元数据(如分区类型代码)将无法正确转换。 这不是您的磁盘的问题。

有关此主题的更多信息,请参阅有关MBR到GPT转换的GPT fdisk文档。 (注意:我是gdisk的作者,默认情况下安装了最新版本的Ubuntu;因此该页面可以被视为官方文档。)