Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Bug#730059: busybox-syslogd conflicts with systemd

160 views
Skip to first unread message

Trent W. Buck

unread,
Sep 11, 2014, 2:00:01 AM9/11/14
to
Package: busybox-syslogd
Version: 1:1.22.0-6
Followup-For: Bug #730059

In fact busybox-syslogd is the *only* package with
Provides: klogd
the others seem to
Provides: linux-kernel-log-daemon

I don't understand why this is the case.
Does the difference signify a different interface,
or is it just an oversight?

The point is probably moot since journalctl replaces it, but couldn't
the busybox-syslogd init script say "if pid1 is systemd, start syslogd
but not klogd" ?


--
To UNSUBSCRIBE, email to debian-bugs-...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Michael Tokarev

unread,
Sep 29, 2014, 2:40:02 AM9/29/14
to
Control: tag -1 - moreinfo + wontfix
11.09.2014 09:49, Trent W. Buck wrote:
> In fact busybox-syslogd is the *only* package with
> Provides: klogd
> the others seem to
> Provides: linux-kernel-log-daemon
>
> I don't understand why this is the case.
> Does the difference signify a different interface,
> or is it just an oversight?
>
> The point is probably moot since journalctl replaces it, but couldn't
> the busybox-syslogd init script say "if pid1 is systemd, start syslogd
> but not klogd" ?

It is not the init script, it is the busybox syslog implementation.
For simplicity, it is one applet that does both syslog function and
klogd function, and klogd function is not optional. In order to
stop providing klogd, someone should write a patch for busybox
(upstream, because I for one don't want to make debian-specific
changes to busybox) to make klogd function optional, after which
it will be possible to adjust initscript to run syslogd without
klogd if systemd is running.

Tagging as wontfix for now.

Thanks,

/mjt

Trent W. Buck

unread,
Sep 29, 2014, 6:00:02 AM9/29/14
to
Michael Tokarev wrote:

> It is not the init script, it is the busybox syslog implementation.
> For simplicity, it is one applet that does both syslog function and
> klogd function, and klogd function is not optional.

Er, are you sure?

I'm definitely not familiar with busybox code, but

* /etc/init.d/busybox-{syslogd,klogd} are separate scripts that run separate processes:

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1475 0.0 0.0 4812 420 ? Ss 09:57 0:00 /sbin/klogd
root 1478 0.0 0.4 13008 8632 ? Ss 09:57 0:00 /sbin/syslogd -C8192

* busybox {syslogd,klogd} --help suggests they're separate applets.

* busybox/sysklogd/Config.src has separate options for syslogd and klogd.

* the description for CONFIG_SYSLOGD says

"When used in conjunction with klogd, messages from the Linux
kernel can also be recorded."

which implies it can be used without klogd.

* If I stop klogd, "logger test" still makes "test" appear in logread.

* if I do "make allnoconfig" then in "make menuconfig" I can enable
System Logging Utilities > syslogd without klogd being turned on.

$ ./busybox --help | tail -3
Currently defined functions:
logread, syslogd

$ ./busybox logread | grep user.notice.*test
Sep 29 19:37:11 frey user.notice twb: test

Disclaimer: the source code tests above, I was looking at
1_22_0-191-g26a8b9f because that was what I had in front of me.
The runtime bits I checked on a jessie/sid install.
signature.asc

Michael Tokarev

unread,
Sep 30, 2014, 4:00:02 AM9/30/14
to
Control: tag -1 - wontfix

29.09.2014 13:56, Trent W. Buck wrote:
> Michael Tokarev wrote:
>
>> It is not the init script, it is the busybox syslog implementation.
>> For simplicity, it is one applet that does both syslog function and
>> klogd function, and klogd function is not optional.
>
> Er, are you sure?

Errr.... not. That was a definitive -ENOCOFFEE.

I stand corrected. Yes you're absolutely right, that's 2 separate applets,
with 2 separate initscripts for them included in busybox-syslogd package.

I just cleaned up Provides/Replaces/Conflicts lines of busybox-syslogd
package, so this conflict should be fixed.

I also added a line to busybox-klogd to stop starting it when systemd is
running.
0 new messages