我已将 Debian 12 安装在 SATA 驱动器上以通过 BIOS 启动。MBR 类型分区由 Debian 安装程序中设置的默认值决定。我希望将此 SATA 驱动器移动到另一台只能通过 UEFI 启动的计算机。目前,我可以通过执行以下操作在新计算机上安装的现有 SATA 驱动器上通过 UEFI 启动 Debian
- 关闭安全启动。
- 首先在外部驱动器上启动 rEFInd。
- 让 rEFInd 指示固件执行 Debian 的 Grubless UEFI 启动。
我更愿意修改 SATA 驱动器以安装 Grub UEFI 引导 Debian。另外,我认为分区应该转换为 GPT。转换为 GPT 并安装有效的 UEFI 引导 Grub 需要哪些步骤?
旧电脑有 2048 MiB 的 RAM 内存,新电脑有 4096 MiB 的 RAM 内存。由于内存较大,因此我想相应扩大交换空间。
MBR 分区表条目
分割 | 设备 | 引导 | 起始 扇区 |
结束 区域 |
扇区大小 |
尺寸 | 类型 | ID |
---|---|---|---|---|---|---|---|---|
第一小学 | /dev/sda1 | * | 2048 | 479561485 | 479559438 | 228.7 GiB | Linux 文件系统 | 83 |
第二小学 | /dev/sda2 | 479561486 | 488424194 | 8862709 | 4327 MB | Linux 交换 | 82 |
磁盘 /dev/sda/:232.9 GiB,250074470400 字节,488426700 个扇区 @ 512 字节/扇区
此答案需要从 Debian 12.7.0 安装程序启动。这可以是 USB 闪存驱动器或 DVD。此答案使用 DVD。从 Debian 下载的安装文件是
debian-live-12.7.0-amd64-gnome.iso
。步骤如下。
UEFI 启动安装程序以运行实时 Debian。
打开终端应用程序窗口。输入以下命令成为 root 用户。
将 MBR 分区表转换为 GPT。
在安装 BIOS 启动 Debain 时,安装程序不会在 MBR 后和驱动器末尾的大约 1 MiB 空间中创建任何分区。这样可以通过输入以下命令轻松地从 MBR 分区表转换为 GPT
如果成功,则输出将如下所示。如果输出不同,则可能是之前进行了修改,在 GPT 所需的空间中分配了分区。
创建 EFI 系统分区。
此步骤还会创建一个 BIOS 启动分区,以便还可以安装 BIOS 启动 Grub。(创建 GPT 时会覆盖以前的 Grub BIOS 启动代码。)
输入以下命令来安装 GParted 应用程序。
GParted 应用程序将用于执行以下操作。
输入以下内容以打开 GParted 应用程序。
删除
/dev/sda2
下面显示的突出显示的分区。选择
/dev/sda1
分区,如下所示。调整卷大小,以便保留 8914 MiB 的可用空间,如下所示。
选择分区后立即的未分配空间
/dev/sda1
,如下所示。创建一个新的 1 MiB 分区,如下所示。
选择“新分区#1”后面立即未分配的空间,如下所示。
创建一个新的 300 MiB 分区,如下所示。
选择“新分区#2”后面立即未分配的空间,如下所示。
创建一个新的 8613 MiB 交换分区,如下所示。
选择绿色复选标记“应用所有操作”,如下所示。
为 设置标志,如下所示
/dev/sda2
。这会将分区类型更改为 BIOS 启动。设置 的标志,如下所示
/dev/sda3
。这会将分区类型更改为 EFI 系统。结果如下所示。退出 GParted 应用程序。
如果需要,请输入以下命令以按升序重新编号 GPT 分区。在答案中,省略了此命令,因为分区已经按升序排列。
挂载根分区和 EFI 分区。
输入下面给出的命令。
更新
fstab
文件。输入以下命令来查看该
fstab
文件。下面是一个示例。根 (
/
) 和交换 UUID 的形式为xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
,其中每个x
都是十六进制数字。下面的根和交换 UUID 分别被替换为{root partition UUID}
和{original swap UUID}
。需要更新交换 UUID,并添加 EFI 卷的 UUID。以下命令输出新的 UUID。EFI UUID 的形式为
XXXX-XXXX
,每个 UUIDX
都是一个十六进制数字。示例输出如下所示。EFI 和 swap UUID 分别被
{EFI UUID}
和替换{new swap UUID}
。要对 进行更改
/etc/fstab
,您可以使用nano
、其他编辑器或输入以下命令。输入以下命令时,将{original swap UUID}
、{new swap UUID}
和替换{EFI UUID}
为相应的实际 UUID。完成后,可以使用以下命令查看新
fstab
文件。注意:{root partition UUID}
应该保持不变。下面是一个例子。
安装 Grub
首先安装 Grub 用于 BIOS 启动,然后安装用于 UEFI 启动。
启动到 Debian。
关闭计算机。移除安装介质。启动 Debian。
新的 GUID 分区表 (GPT)
GUID 分区表 (GPT) 条目
扇区
区域
扇区大小
类型 GUID
终端窗口的内容
Debian 安装程序默认交换空间大小
下表显示了 Debian 安装程序为交换空间选择的默认大小。对于少量 RAM 内存,交换空间是 RAM 数量的两倍多一点。对于大量 RAM,交换空间比实际 RAM 数量多一点。