systemd-notifysystemdDeveloperLennartPoetteringlennart@poettering.netsystemd-notify1systemd-notifyNotify service manager about start-up completion and other daemon status changessystemd-notify OPTIONSVARIABLE=VALUEDescriptionsystemd-notify may be called by daemon
scripts to notify the init system about status changes. It can be
used to send arbitrary information, encoded in an
environment-block-like list of strings. Most importantly, it can be
used for start-up completion notification.This is mostly just a wrapper around
sd_notify() and makes this functionality
available to shell scripts. For details see
sd_notify3.
The command line may carry a list of environment variables
to send as part of the status update.Note that systemd will refuse reception of status updates
from this command unless NotifyAccess=all is
set for the service unit this command is called from.OptionsThe following options are understood:Inform the init system about service start-up
completion. This is equivalent to systemd-notify
READY=1. For details about the semantics of this
option see
sd_notify3.Inform the init system about the main PID of
the daemon. Takes a PID as argument. If the argument is
omitted, the PID of the process that invoked
systemd-notify is used. This is equivalent
to systemd-notify MAINPID=$PID. For details
about the semantics of this option see
sd_notify3.Send a free-form status string for the daemon
to the init systemd. This option takes the status string as
argument. This is equivalent to systemd-notify
STATUS=.... For details about the semantics of this
option see
sd_notify3.Returns 0 if the system was booted up with
systemd, non-zero otherwise. If this option is passed, no
message is sent. This option is hence unrelated to the other
options. For details about the semantics of this option, see
sd_booted3. An
alternate way to check for this state is to call
systemctl1
with the is-system-running command. It will
return offline if the system was not booted
with systemd. Exit statusOn success, 0 is returned, a non-zero failure code
otherwise.ExampleStart-up Notification and Status UpdatesA simple shell daemon that sends start-up notifications
after having set up its communication channel. During runtime it
sends further status updates to the init system:#!/bin/bash
mkfifo /tmp/waldo
systemd-notify --ready --status="Waiting for data..."
while : ; do
read a < /tmp/waldo
systemd-notify --status="Processing $a"
# Do something with $a ...
systemd-notify --status="Waiting for data..."
doneSee Alsosystemd1,
systemctl1,
systemd.unit5,
sd_notify3,
sd_booted3