Ubuntu эквивалент успеха / отказа CentOS

Многие услуги в CentOS выглядят так (за исключением зеленого и красного соответственно):

$ sudo service blah start
Starting blah:           [  OK  ]
$ sudo service notrunning stop
Stopping notrunning:     [FAILED]

Это происходит из-за того, что скрипты /etc/init.d используют служебные скрипты в /etc/rc.d/init.d/functions под названием success и failure. Вот фрагмент из /etc/init.d/sshd в CentOS:

echo -n $"Starting $prog: "
$SSHD $OPTIONS && success || failure

Мой вопрос: есть ли эквивалент ubuntu? Я мог бы скопировать сценарии, но они сложнее, чем вы думаете, и зачем изобретать колесо, если мне это не нужно?

1
задан 2 October 2014 в 02:01

1 ответ

Вы можете использовать функции, предоставляемые пакетом lsb-base в /lib/lsb/init-functions. Я видел сценарии init.d для поиска этого файла, а затем используя функции внутри, такие как log_end_msg:

$ (. /lib/lsb/init-functions; log_end_msg 1)
   ...fail!
$ (. /lib/lsb/init-functions; log_end_msg 0)
   ...done.

Например, фрагмент из /etc/init.d/ssh (case для start ):

if start-stop-daemon --start --quiet --oknodo --pidfile /var/run/sshd.pid --exec /usr/sbin/sshd -- $SSHD_OPTS; then
    log_end_msg 0 || true
else
    log_end_msg 1 || true
fi
2
ответ дан 24 May 2018 в 03:13

Другие вопросы по тегам:

Похожие вопросы: