Yocto 引导分区与引导 rootfs 目录

Yocto boot partition vs boot rootfs directory

我需要挂载我的启动分区,以便在我的 yocto 构建中执行软件更新。 我希望将它安装在 /boot 中,但我看到那里已经有一个目录

我似乎找不到关于这个 /boot 目录是什么以及为什么需要它的信息。它包含与引导分区中相同的 .itb 文件

我需要这个引导目录吗?它被谁使用?有没有办法告诉 yocto 不要创建它?

简而言之

简短的回答是,通常情况下,除非您对 etc/fstab 文件进行了调整,否则启动分区会安装在 /boot 中。你可以检查它确实是用df命令挂载的引导分区。

fstab

现在我自己有点 fstab 菜鸟,但这是我可以从中得到的。 fstab file中是负责自动挂载设备的文件。一般来说,yocto 默认生成一个 fstab 文件,如下所示:

/dev/mmcblk0p1  /boot   vfat    defaults    0   0

意思是(据我所知)您的第一个分区将自动安装在 /boot 中。 (如果这里有任何 fstab 向导,请随意详细说明)

根据我的经验

这作为正常安装的文件夹工作。您可以在 /boot 中修改所有您想要的,并且更改将在 boot 分区上发生。更改完成后,重新启动,您应该能够看到更改已生效。

关于你的问题

我有一个广泛的想法,但我怀疑这取决于您的构建和目标。 而且我没有 yocto 版本,我可以用 atm 检查一下。所以这是我的提示:

  • 你需要吗?我不这么认为......除非你有一个模块或脚本应该自动弄乱引导分区......即使如此我也不认为这很重要。我想找出最快的方法是从 /etc/fstab 中删除安装引导分区的行,然后查看是否有东西崩溃
  • 它被谁使用了?我怀疑没有人。我认为这只是访问引导分区 buas 的一种便捷方式,正如我所说,还没有机会确认这一点。
  • 如何防止 yocto 创建它?您需要做的就是告诉 yocto 编写一个 fstab 文件,而不需要 mounting /boot 行。 Here 是如何覆盖父层安装的文件。知道fstab是由/poky/meta/recipes-core/basefiles/base-files_X.X.X.bb.
  • 安装的

请注意,总的来说,我不是 100% 确定 /boot 它的用途,但我不建议摆脱它。在我看来,挂载引导分区没有任何缺点,它是在调查构建时检查引导分区的便捷工具。

原来是 atmel dt overlay 将覆盖文件放在 /引导目录。这些覆盖与我的机器无关,所以我删除了 dt-overlay 依赖项

https://github.com/linux4sam/meta-atmel/blob/07867084ec52b5580e55eb67c861823eaab5e4c3/recipes-bsp/dt-overlay-at91/dt-overlay-at91_git.bb#L51