1

systemd's man-page https://www.freedesktop.org/software/systemd/man/systemd.html says that one can send SIGRTMIN+21 to the systemd process to disable status message such as Started Login service. etc. from appearing on the console. The relevant snippet from man page is below:

SIGRTMIN+21
Disables display of status messages on the console, as controlled via 
systemd.show_status=0 on the kernel command line.

When I look at the process table, there are at least 4 different processes associated with systemd. Which of these is referred to in the man-page?

~# ps -ef |grep [s]ystemd
root       448     1  0 18:47 ?        00:00:01 /lib/systemd/systemd-journald
root       450     1  0 18:47 ?        00:00:00 /lib/systemd/systemd-udevd
root       722     1  0 18:47 ?        00:00:00 /sbin/cgmanager -m name=systemd
root       723     1  0 18:47 ?        00:00:00 /lib/systemd/systemd-logind
message+   742     1  0 18:47 ?        00:00:00 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation

I wrote a simple daemon that does nothing other than sleeping for 10 secs continuing and ensured that it starts upon boot.

I took a wild guess and sent the signal to cgmanager process (pid 722) as:

# kill -SIGRTMIN+21 722

There were a couple of messages on the console about restarting the Cgroup daemon, but the "Start job ...." message continues to appear on the console:

[  OK  ] Stopped Cgroup management daemon.
[  OK  ] Started Cgroup management daemon.

Server lin1 ttyS0

[   ***] A start job is running for Sleep te... initialization (51s / no lim

Has anyone been able to disable console logging like I attempted to do above? If so how?

4
  • is it only journald doing any logging? I just ask, because in Debian rsyslog can at least log some things to the console.
    – Guy
    Dec 30, 2016 at 20:02
  • 1
    dmesg -n 1 might be another way to limit console spam.
    – thrig
    Dec 30, 2016 at 20:04
  • 1
    dmesg -n 1 doesn't work either :(
    – linuxfan
    Dec 30, 2016 at 20:45
  • Appended systemd.show_status=0 to kernel command line and no systemd messages appeared on the console! I wish sending a signal to systemd would also give the same result.
    – linuxfan
    Dec 30, 2016 at 22:13

1 Answer 1

2

If you're running systemd as your init system, the process that you need to send those signals to is the one with PID 1 (it might be called init on your system instead of systemd).

I don't think the process logs anything upon receiving SIGRTMIN+21, but it does upon receiving SIGUSR1 (which causes systemd to reconnect to the D-Bus bus):

kill -SIGUSR1 1

journalctl -e will then show:

Dez 30 20:34:25 mineo-foobar systemd[1]: Trying to reconnect to bus...

The above only shows that PID 1 is the correct one to send the signals to, but to stop the status messages, you still have to use kill -SIGRTMIN+21 1.

2
  • Does the man-page say that the signal should be sent to init instead? I sent SIGUSR1 to init but that didn't help. The service continues to hog my console with the same message as before.
    – linuxfan
    Dec 30, 2016 at 19:46
  • # ls -l /sbin/init lrwxrwxrwx 1 root root 20 Aug 27 2015 /sbin/init -> /lib/systemd/systemd Sending kill -SIGRTMIN+21 1 does indeed stop the spam. @Wieland - I'll accept your answer if you edit it accordingly. thanks
    – linuxfan
    Dec 30, 2016 at 22:45

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .