Include:Parted
![]() 在此通知移除之前,请勿遵循此处的说明。 |
高级分区和 GPT 磁盘标签需要 parted
分区编辑器。来自 BusyBox 的默认 fdisk
是一个功能极度精简的版本。
要安装 parted,请执行命令
# apk add parted
创建分区布局
根据您的主板、BIOS 功能和配置,我们可以使用 MBR(传统 BIOS)或 GUID 分区表(GPT)中的分区表。
我们将通过示例布局来描述两者。
带有 DOS 磁盘标签的 BIOS/MBR
![]() 在此通知移除之前,请勿遵循此处的说明。 |
我们将使用 parted
实用程序对存储设备进行分区,以拥有一个 /boot
分区,供 Syslinux 引导加载程序使用。Syslinux 旨在与传统 BIOS 和 MSDOS MBR 分区表一起使用。在此示例中,root
分区占用所有剩余空间。可以适当地更改此设置。
Syslinux 确实支持 GPT 分区表,但 GRUB2 是 UEFI 的更好选择(UEFI 仅在使用 GPT 时才有可能)。
+---------------------------+------------------------+-----------------------+ | Partition name | Partition purpose | Filesystem type | +---------------------------+------------------------+-----------------------+ | /dev/sda1 | Boot partition | ext4 | | /dev/sda2 | Root partition | ext4 | +---------------------------+------------------------+-----------------------+

要创建一个大约 100MB 的启动分区以从中启动,
# parted -a optimal (parted) mklabel msdos (parted) mkpart primary ext4 0% 100M (parted) set 1 boot on (parted) mkpart primary ext4 100M 100%
要查看您的分区表,请在 parted
中输入 print
。您的结果应如下所示
(parted) print Model: ATA TOSHIBA ******** (scsi) Disk /dev/sda: 1000GB Sector size (logical/physical): 512B/4096B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 1 1049kB 99.6MB 98.6MB primary ext4 boot 2 99.6MB 1000GB 1000GB primary ext4
带有 GPT 磁盘标签的 UEFI
![]() 在此通知移除之前,请勿遵循此处的说明。 |
我们将使用 parted 实用程序对存储设备进行分区。挂载在 /boot/efi
的 EFI 系统分区将保持未加密状态,剩余磁盘可以加密。这意味着 GRUB2 将解密 LUKS 卷并从那里加载内核,从而防止拥有物理访问您计算机权限的人员在您的计算机未解锁时恶意地在您的启动分区中安装 rootkit(或 bootkit)。分区方案将如下所示
+---------------------------+------------------------+-----------------------+ | Partition name | Partition purpose | Filesystem type | +---------------------------+------------------------+-----------------------+ | /dev/sda1 | EFI system partition | fat32 | | /dev/sda2 | LUKS container | LUKS | | |-> /dev/mapper/lvmcrypt | LVM container | LVM | | |-> /dev/vg01/root | Root partition | ext4 | | |-> /dev/vg01/boot | Boot partition | ext4 | | |-> /dev/vg01/swap | Swap partition | swap | +---------------------------+------------------------+-----------------------+

创建一个大约 200MB 的 EFI 系统分区,然后将剩余空间分配给您的 LUKS 分区。
# parted -a optimal (parted) mklabel gpt (parted) mkpart primary fat32 0% 200M (parted) name 1 esp (parted) set 1 esp on (parted) mkpart primary ext4 200M 100% (parted) name 2 crypto-luks
(parted) print 型号:ATA TOSHIBA ******** (scsi) 磁盘 /dev/sda:1000GB 扇区大小(逻辑/物理):512B/4096B 分区表:msdos 磁盘标志
编号 起始 结束 大小 类型 文件系统 标志
1 1049kB 99.6MB 98.6MB primary ext4 boot 2 99.6MB 1000GB 1000GB primary ext4