如果使用 SD 卡引导 linux 系统启动, 一般需要在 SD 卡上有 2 个分区。一个分区使用FAT32 文件系统, 用于放置启动镜像文件(如 BOOT.BIN, linux 镜像等), 另一分区使用EXT4 文件系统, 用于存放根文件系统。
需要说明的是在之前的 petalinux 工程中,“ Image Packaging Configuration”子菜单根文件系统的类型的配置使用的是默认的 INITRAMFS,所以只需要一个使用 FAT32 文件系统的分区就可以了。当设置为“ SD card”则需要另一个存放根文件系统的分区。
本文讲解 SD 卡的分区和格式化。
1)将 SD 卡插入到读卡器中、并将读卡器插入电脑并连接到 Ubuntu 系统, 在 Ubuntu 系统中找到 SD 所对应的设备节点,笔者插入的 SD 卡对应的设备节为/dev/sdb。 现在我们先给 SD卡分区。在终端中输入如下命令:
umount /dev/sdb*
sudo fdisk /dev/sdb
2)输入“ p ”执行结果如下图所示:
3)可以看到 SD 卡目前的分区表, 笔者的 SD 卡有一个 FAT32 的分区, 在开始新分区之前需要将以前的分区删除,键入“ d ”,删除该分区,再次键入“ d ”时会出现下图所示的红色字体提示,表明已无存在的分区;如果大家的 SD 卡存在多个分区,需要全部删除,存在多个分区的情况下,键入“ d ”时会提示选择需要删除的分区编号。