什么是log_daemon_msg?


15

我一直在寻找/etc/init.d/ssh启动时如何运行“适当的” sys守护程序的想法(我正尝试添加svnserve到该列表中)。我将其log_daemon_msg用作命令,但我不知道它是什么。

which log_daemon_msg然后man log_daemon_msg空了出来

例:

log_daemon_msg "Starting OpenBSD Secure Shell server" "sshd" || true
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

这是如何运作的?我尝试了Googling,但是我唯一能找到的是关于它在哪里记录消息的问题,这是没有用的,因为我几乎不知道如何使用它甚至它是什么-命令,内置函数或其他东西?


1
显示完整的文件:很可能是函数定义在始于/etc/init.d/ssh
Matteo

Answers:


19

那是与LSB相关的功能。请看看/lib/lsb/init-functions和/或/etc/redhat-lsb/lsb_log_message。路径取决于您的发行版。


2
谢谢!我的谷歌搜索发现它与LSB有某种联系,实际上我查看了Wiki页面,但这并不是特别有用。感谢您的路径!(以前是,这是Ubuntu服务器。)
Dubslow

哇,我只是. /lib/lsb/init-functions在我正在分析的init脚本的顶部错过了这一点……似乎最好写source <...>而不是. <...>在希望轻松分析脚本的时候写。
Tomasz Gandor

-2

我没有BSD,也从未使用过它……但是可以肯定的是log_daemon_message必须是一个shell函数。在上面查看类似的语句:

。。/功能

这将在功能文件中提供所有功能。您可以做的另一件事是使用find查找特定功能:

找到/ etc -type f -exec grep -li log_daemon_msg {} \;

并查看文件中的内容。正如我所说的,我没有BSD,但是研究很有趣!

干杯和好运


它不是BSD,而是Ubuntu 12.04服务器。只是ssh是BSD程序。@Matteo,我grep了该文件,它不是本地定义的函数。我没想到要检查它还加载什么其他文件,我现在就去做。我在这里问的原因是,一个结果表明它是一组常用/广泛使用的函数。
Dubslow
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.