我有一个基于i.MX6的最小嵌入式系统,该系统没有任何网络连接。我计划自定义systemd,以使其启动时间更少。当前,用户空间需要更多时间来启动。 我已经使用yocto构建了图像。
是否可以使用yocto定制系统?或在板启动后需要使用sysctl禁用systemd服务。
答案 0 :(得分:2)
这可以从yocto本身完成。但是在进行删除之前,请确保列出在systemd中不需要的子组件/软件包。
大多数时候,您可能也对时间同步,定时和其他与网络相关的软件包不感兴趣。
获取完整列表here。这是systemd bitbake的最新版本,它提供了所有可用的软件包。选择所需的列表,然后仅在.bbappend文件中启用所需的列表
如果您对已启用的软件包没有足够的控制权,请创建一个自定义.bbappend(可能在您的自定义图层中),名称为“ systemd _%。bbappend ”,然后添加,
PACKAGECONFIG_remove =“要删除的软件包列表” 。
这将删除systemd中不需要的软件包。相同的过程适用于非系统组件。
答案 1 :(得分:0)
首先检查启动板时正在运行多少systemd服务文件。
在etc/systemd/system/
中,启动时所有运行服务的路径。
尝试一一删除所有服务(*.services
)并启动主板。