我使用 gdisk 在硬盘上创建了 BIOS 启动分区:
$ sudo gdisk /dev/sdb
Command (? for help): p
Disk /dev/sdb: 7821312 sectors, 3.7 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): F7F2BE49-B8D8-4910-8E69-381DEBD954DC
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 7821278
Partitions will be aligned on 4-sector boundaries
Total free space is 2 sectors (1024 bytes)
Number Start (sector) End (sector) Size Code Name
1 36 7168035 3.4 GiB EF02 BIOS boot partition
2 7168036 7821278 319.0 MiB 8300 Linux filesystem
Command (? for help): q
我需要安装这个 BIOS 分区:
$ sudo mount /dev/sdb1 /mnt
mount: block device /dev/sdb1 is write-protected, mounting read-only
mount: you must specify the filesystem type
为了挂载此 BIOS 分区,要使用什么相关的文件系统类型?我在互联网上读到 ext2 很好,但我找不到原因的解释。
答案1
BIOS 启动分区不包含文件系统;它只是放置一些 GRUB 代码的地方,在 MBR 磁盘上,这些代码应该位于启动扇区之后,第一个分区开始之前。在 GPT 磁盘上,该区域由(较大的)分区表使用,不可用于引导加载程序代码,因此引导加载程序代码会放在一个小的分区中。
BIOS 引导分区应该非常小:1 MB 就足够了。为您的文件系统创建一个单独的(更大的)分区。
请注意,某些系统有一个单独的/boot
目录分区,其中包含一个文件系统以及引导加载程序使用的其他文件。 这与 BIOS 引导分区不同。
- 该
/boot
目录包含大部分引导加载程序代码及其配置;这就是 GRUB 所说的“第 2 阶段”。每个 Linux 系统都需要这些文件。 - BIOS 引导分区仅适用于使用 GPT 磁盘的传统 MBR 式引导时。它包含引导加载程序用来挂载带有“stage 2”文件的分区的“stage 1.5”代码。
- 在使用 EFI 式引导的系统上,没有 BIOS 引导分区。相反,有一个 EFI 系统分区,其中包含完全不同的“第 1 阶段”引导加载程序,它能够
/boot
自行挂载和访问“第 2 阶段”文件,而不需要“第 1.5 阶段”作为中间步骤。
答案2
查看维基百科页面BIOS 启动分区看起来这确实是您的选择。
摘抄BIOS 引导分区通常非常小。它可以小至约 30 KiB;但是,未来的引导加载程序可能需要更多空间,因此建议创建更大的 BIOS 引导分区。由于大多数现代磁盘分区工具使用 1 MiB 分区对齐策略来为高级格式磁盘、SSD 设备和某些类型的 RAID 配置提供最佳性能,因此 1 MiB 是 BIOS 引导分区的逻辑大小。
支持它的工具列表看起来也不会造成任何限制:
已知以下实用程序支持 BIOS 引导分区:
- GRUB 2(1.97~beta1或更高版本):当安装过程中发现BIOS引导分区时,GRUB会将其自身嵌入其中。
- GNU Parted(2.0 或更高版本)。
- GParted,GNU Parted 的前端。
- NetBSD(5.0 或更高版本)中的 gpt(8) 分区编辑器。
- gdisk:GPT fdisk
所以我可能会使用 ext2 或 ext3,稍微倾向于 ext3。