介绍
虽然有些 Linux 系统只需要一个 FAT 格式的引导分区(例如,那些使用 ramdisk 的系统),但有些系统需要第二个 ext4 格式的分区来保存根文件系统。在本教程中,FAT 分区将被称为“启动”分区,用于保存启动映像(BOOT.BIN)和 Linux 映像(image.ub 或 Image + .dtb)。根文件系统的 ext4 分区将被称为“根”。
创建两个分区
这些步骤假设您使用的是空白、未格式化的 SD 卡,上面没有现有分区。我们将使用 Linux 中的 fdisk 实用程序来创建新分区。Fdisk 是基于文本的工具,用于在磁盘上创建分区。您还可以使用 gparted,它是 gui 基本分区工具。
- 首先,卸载您的磁盘并使用您的设备名称启动 fdisk。就我而言,我的 SD 卡位于 /dev/sdc:
$ sudo fdisk /dev/sdc
|
- 键入 p,查看您当前的分区表。
- 如果您有现有的分区,您可以通过键入“d”来删除它们
|
fdisk - 检查分区 |
- 通过键入“n”创建一个新分区。
- 通过选择'p'使其成为主分区
- 使用默认分区号和第一个扇区。
- 通过键入 +1G 为该分区留出 1G(此值可以根据您的需要而有所不同 - 卡的其余部分将用于第二个分区)
|
fdisk - 新分区 |
- 通过键入“a”在此分区上设置可引导标志。
- 现在,如果您使用“p”打印出分区表,您应该会在 Boot 下看到带有 * 的新分区。
- 通过键入“n”创建根分区。
- 选择主分区(p)
- 保留第一个和最后一个扇区的默认值。
|
fdisk - 新分区 |
- 如果您现在检查您的分区表,您应该会看到刚刚创建的 2 个分区。
- 验证后键入“w”写入磁盘并退出。
格式化分区
创建分区后,下一步是使用适当的文件系统对其进行格式化。
引导分区
引导分区应始终格式化为 FAT。要将第一个分区格式化为 FAT,请使用以下命令:
$ mkfs.vfat -F 32 -n boot /dev/sdc1
|
根分区
根据您的 Linux 配置,根分区可以格式化为 ext2/ext4。要将第二个分区格式化为 ext4,请使用以下命令:
$ mkfs.ext4 -L root /dev/sdc2
|
如果您的根文件系统构建工件是未压缩的 ext4 映像(即 rootfs.ext4),您可以跳过此步骤
将映像复制到新分区
引导分区
对于启动映像,只需将文件复制到 FAT 分区即可。这通常包括 BOOT.BIN、image.ub 和 boot.scr(2020.1 及更高版本)。但是,您的系统可能需要 FAT 文件系统上的其他文件。
根分区
对于根文件系统,该过程将取决于您的根文件系统映像的格式。
dd if =rootfs.ext4 of=/dev/sdc2
|