Linux

如何使用 UEFI 將我的 linux 磁碟從 MBR 轉換為 GPT?

  • January 24, 2022

我有一個 linux 機器(Ubuntu 16.04),它的引導磁碟使用 MBR 進行分區。如何將其轉換為 GPT+UEFI?

在開始之前,請確保您有備份,並確保准備好 linux live boot 來拯救您的系統。這很容易搞砸!

  1. 使用 gdisk 將分區表轉換為 GPT。

gdisk /dev/sda

  1. 創建 GRUB 需要的“BIOS 引導”分區。

n創建一個新分區。需要大約 1MB。您可能可以從 34-2047 扇區擠入。使用Ll查找“BIOS 啟動” (ef02) 的程式碼。

  1. 寫入新的分區表。

w

  1. 重新載入分區表。

partprobe /dev/sda

  1. 使用新的分區方案重新安裝 GRUB 引導載入程序。

grub-install /dev/sda

可以選擇重新啟動以驗證它是否正常工作。如果你只需要 GPT 而不是 UEFI,你可以在這裡停下來。 6. 使用 gdisk 添加“EFI 系統”分區 (ESP)。官方應該是100-500MB,但我的只用了130kB。可以位於磁碟上的任何位置,因此如果您使用的是物理磁碟等不可調整大小的媒體,請考慮將其放在最後。

gdisk /dev/sda並用於n創建分區。

  1. 給 ESP 一個不帶空格的獨特標籤,例如EFI-system,因為我們將在 fstab 中引用分區標籤。

c設置標籤。

  1. 寫分區表。

w

  1. 重新載入分區表。

partprobe /dev/sda

  1. 為 ESP 建構文件系統。

mkfs -t vfat -v /dev/disk/by-partlabel/EFI-system

  1. 創建 ESP 掛載點。

mkdir /boot/efi

  1. 將 ESP 添加到/etc/fstab. 它應該如下所示:

/dev/disk/by-partlabel/EFI-system /boot/efi vfat 預設值 0 2

  1. 安裝 ESP。

mount /boot/efi

  1. 在 Ubuntu/Debian 上安裝 EFI 包。

apt install grub-efi-amd64

  1. 安裝 GRUB EFI 引導載入程序。

grub-install --target=x86_64-efi /dev/sda

  1. 重啟。
  2. 將 BIOS 從 BIOS 引導更改為 UEFI 引導。
  3. 使用一次性啟動菜單強制啟動磁碟。您可能必須導航到磁碟(從文件引導) -> EFI-> ubuntu-> grubx64.efi
  4. 重新安裝 GRUB 的 EFI 引導載入程序以更新 UEFI 引導選擇器。

grub-install

資源:

引用自:https://serverfault.com/questions/963178