本节将详细介绍如何为 Petalinux 系统创建一个可引导的 SD 卡,重点包括建立 boot 和 rootfs 分区的步骤。然后将生成的引导映像和根文件系统文件写入相应的分区,以确保系统能够正确启动并运行。此过程是确保 Zynq 开发板能够顺利加载 Petalinux 操作系统的关键步骤。
- 此章节内容适用于Lemon ZYNQ主板,如是其他板子请看对应板子目录
- 本文在 vivado2018.3 以及 Petalinux2018.3 版本上进行演示
准备工作:
- 一张TF卡 (卡上的内容将会被清除,请先备份卡上的重要文件到其他磁盘)
- 一个TF卡读卡器
本章内容:
一、对SD卡(TF)进行分区
为了方便演示,本节将直接在有图文操作界面的分区gparted下 进行操作。
在操作之前,再次提醒,分区操作将清空TF卡上所有的信息,请务必确认卡上没有重要的文件了。
1) 在Ubuntu下安装 gparted 软件 (在命令行中输入下列指令)
sudo apt-get install gparted
2) 插入我们带TF卡的读卡器,插入之后我们的虚拟机会弹出检测到新USB设备的提醒,这里要选连接到虚拟机才行,这样读卡器才能被我们的虚拟机访问到。
3)备注:如果你的读卡器按上述操作后仍然无反应(并且你的USB读卡器设备是USB3.0以上版本的),请在虚拟机设置界面将USB选项设置成USB3.1
4)打开我们刚才安装的gparted(在命令行终端输入下列命令)
sudo gparted
5) 在gparted界面下 将右上角的磁盘空间切换到我们的TF卡(这里不要选错了)
6)如果TF卡上之前已经分区了,那么先右键点击unmount,再选择delete,删除分区
(备注:要确保所有的分区也被删除,如我上图中最左侧右边也有个分区,容易被遗漏掉,可以参看下面的分区列表)
7) 新建分区 右击unallocated分区->New
a )BOOT分区设置:boot分区设置为fat32格式,这里我设置了512MB(512MB一般足够了,大家按自己的需求来设置),点击Add添加
b )rootfs 空间设置:将剩下所有空间都定义为rootfs,格式需要是ext4
8)对更改进行应用, 期间会弹出警告,点Apply即可, 完成之后会弹窗提醒,点close即可。
完成后的分区:
二、烧录镜像
1) 将上文中images下的 BOOT.BIN 和 image.ub文件复制到 fat32的boot分区下
2)回到我们上一节工程的images下的linux文件夹下(rootfs.tar.gz所在的文件夹),右键空白处,点选open in Terminal,打开命令行终端。
3) 在命令行中输入tar解压命令,将rootfs.tar.gz中的内容解压缩到rootfs分区中。(rootfs路径可能会因为Ubuntu的用户名不同而不同,大家根据实际的路径修改)
sudo tar xvf rootfs.tar.gz -C /media/user/rootfs
之后正常退出TF卡就好。
至此我们就完成了本节中的TF卡分区与烧录的所有操作了。详细的使用可以参看下一节内容。