我想生成一个Yocto映像,它使用systemd作为唯一服务来控制我的系统日志。所以我只想使用journalctl
工具,并且根本不想要任何对syslog的引用。
要设置systemd图像,我已经设置了我的发行版(如Yocto文档中所述):
DISTRO_FEATURES_append = " systemd"
DISTRO_FEATURES_BACKFILL_CONSIDERED = "sysvinit"
VIRTUAL-RUNTIME_dev_manager = "systemd"
VIRTUAL-RUNTIME_init_manager = "systemd"
VIRTUAL-RUNTIME_initscripts = ""
但是,构建的映像添加了一个名为sysklogd
的rpm包,生成的映像运行一些与syslog相关的systemctl服务:
- syslogd.service
- syslog.socket
我想生成和图像,根本没有参考syslog。管理这个问题的正确方法应该是什么?
提前谢谢! :)
答案 0 :(得分:1)
添加
VIRTUAL-RUNTIME_syslog = ""
<。>在.bb或.bbapend文件中。这将删除sysklogd包。
请参阅文件/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb,其中定义为
VIRTUAL-RUNTIME_syslog ?= "sysklogd"
答案 1 :(得分:0)
最后我解决了我的问题。首先,我按照此链接中说明的信息从我的自定义图像中删除了“busybox”:
Removing busybox completely from a Yocto generated image
删除busybox后,定义此变量(按照之前的答案建议)按预期工作:
.*
现在生成的图像不包含对syslog和sysklogd的任何引用。非常感谢您的支持!! : - )