首页 > 解决方案 > 如何在 Yocto 发行版上创建交换分区/文件

问题描述

我正在尝试在core-image-minimal已安装 a 的板上创建一个交换分区/文件。

fdisk -l命令不显示任何分区,因此我无法确定需要使用哪个块设备来创建新分区。

其次,在正确初始化的 using上启动swapon命令会引发一个无效参数错误,指出该文件包含漏洞,即使我使用.swapfilemkswapdd

在这一点上,我不确定我是否可以做这样的事情,因为free输出看起来像:

              total        used        free      shared  buff/cache   available
Mem:         503304       32108      101108         216      370088      465180
Swap:             0           0           0

标签: linuxyoctopartitioningswapfile

解决方案


要将任何分区添加到映像中,您需要修改wks用于构建的文件。

要获取当前wks文件运行:

bitbake -e | grep ^WKS_FILE=

然后,在您的图层源中查找该文件。

在该文件中,您可以添加(例如 1GB 交换):

part swap --ondisk mmcblk0 --size 44 --label swap --fstype=swap --size=1024M --overhead-factor 1

对于一个真实的例子,您可以在此处查看 raspberry-pi 机器交换支持提交。

您可以使用自定义wks文件并将其设置为您的自定义机器 conf 文件:

WKS_FILE ?= "custom-image.wks"

有关详细信息,请查看有关wks的 Yocto 参考。


推荐阅读