我正在修改 Yocto .bb 配方文件以在我的映像中添加并启用 3 个 systemd 服务。下面显示了我的配方文件的底部,仅添加并启用了两项服务。这有效!
app1.service 是一次性基本服务,运行一次,app2.service 通过使用“首先等待 app1.service 完成”之后=app1.service”在 app2.service 文件中。所有这些工作正常,没有问题:
FILES_${PN} += "${sysconfdir} \
${systemd_unitdir}/system/app1.service \
${systemd_unitdir}/system/app2.service \
"
inherit systemd
SYSTEMD_SERVICE_${PN} = "app1.service app2.service"
现在,我添加了第三个服务,名为 app3.service,如下所示。该服务还应该以相同的方式等待 app1.service 首先完成
FILES_${PN} += "${sysconfdir} \
${systemd_unitdir}/system/app1.service \
${systemd_unitdir}/system/app2.service \
${systemd_unitdir}/system/app3.service \
"
inherit systemd
SYSTEMD_SERVICE_${PN} = "app1.service app2.service app3.service"
但是,当我启动设备时,只有 app3.service 运行,app1.service 和 app2.service 报告如下,这告诉我该服务未以某种方式启用:
app1.service - app1
Loaded: loaded (/lib/systemd/system/app1.service; disabled; vendor
preset: enabled)
Active: inactive (dead)
这我无法理解。我希望所有三个服务都被启用,因为我将它们添加到了 SYSTEMD_SERVICE_${PN}。
按照我在 .bb 配方文件中添加三个服务的方式是否有问题?谢谢