[OE-core] [PATCH 3/7] sysklogd: Use update-alternatives
ChenQi
Qi.Chen at windriver.com
Thu Aug 30 09:45:37 UTC 2018
On 08/30/2018 03:44 PM, Peter Kjellerstedt wrote:
>> -----Original Message-----
>> From: openembedded-core-bounces at lists.openembedded.org <openembedded-
>> core-bounces at lists.openembedded.org> On Behalf Of Khem Raj
>> Sent: den 30 augusti 2018 05:56
>> To: openembedded-core at lists.openembedded.org
>> Subject: [OE-core] [PATCH 3/7] sysklogd: Use update-alternatives
>>
>> busybox also provides klogd and syslogd, this change makes it coexist
>> peacefully. Currently rootfs fails in situations where both of them are
>> providing these binaries and busybox postinsts fail
>>
>> update-alternatives: Error: not linking
>> /mnt/a/oe/build/tmp/work/qemuriscv64-bec-linux/core-image-full-
>> cmdline/1.0-r0/rootfs/sbin/klogd
>> to /bin/busybox.nosuid since
>> /mnt/a/oe/build/tmp/work/qemuriscv64-bec-linux/core-image-full-
>> cmdline/1.0-r0/rootfs/sbin/klogd
>> exists and is not a link
>>
>> Signed-off-by: Khem Raj <raj.khem at gmail.com>
>> ---
>> meta/recipes-extended/sysklogd/sysklogd.inc | 8 +++++++-
>> 1 file changed, 7 insertions(+), 1 deletion(-)
>>
>> diff --git a/meta/recipes-extended/sysklogd/sysklogd.inc
>> b/meta/recipes-extended/sysklogd/sysklogd.inc
>> index fc4e67c18e..2a8bed00f3 100644
>> --- a/meta/recipes-extended/sysklogd/sysklogd.inc
>> +++ b/meta/recipes-extended/sysklogd/sysklogd.inc
>> @@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b \
>> file://klogd.c;beginline=2;endline=19;md5=7e87ed0ae6142de079bce738c10c899d \
>> "
>>
>> -inherit update-rc.d systemd
>> +inherit update-rc.d systemd update-alternatives
>>
>> SRC_URI = "http://www.infodrom.org/projects/sysklogd/download/sysklogd-${PV}.tar.gz \
>> file://no-strip-install.patch \
>> @@ -70,3 +70,9 @@ python () {
>> if not bb.utils.contains('DISTRO_FEATURES', 'sysvinit', True, False, d):
>> d.setVar("INHIBIT_UPDATERCD_BBCLASS", "1")
>> }
>> +
>> +ALTERNATIVE_PRIORITY = "100"
>> +ALTERNATIVE_${PN} = "klogd syslogd"
>> +ALTERNATIVE_LINK_NAME[klogd] = "${base_sbindir}/klogd"
>> +ALTERNATIVE_LINK_NAME[syslogd] = "${base_sbindir}/syslogd"
>> +
>> --
>> 2.18.0
> This is a (partial) revert of commit 988aad01b2 (sysklogd: don't use
> update-alternatives). Can you come to an agreement regarding which is
> the correct solution?
>
> //Peter
>
I think the previous commit (syslogd: don't use update-alternatives) is
made because syslog daemon conflict with each other. I guess the author
assumed that the 'syslogd' and 'klogd' alternatives entries are handled
by busybox-syslog package.
On the other hand, I think the patch is trying to solve the problem of
busybox being installed after sysklogd.
We are currently not seeing errors because busybox is likely to be
installed before sysklogd. Even in this situation, the result is not all
correct, because the links busybox's postinstall creates are covered by
the real binaries from sysklogd.
I think the problem is about busybox's handling of alternatives.
Khem, I've sent out a patch to fix busybox's alternatives logic. Could
you please help review it?
Best Regards,
Chen Qi
More information about the Openembedded-core
mailing list