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