我正在研究/etc/init.d/ssh
如何在启动时运行“正确的”系统守护进程(我正在尝试添加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
这是如何运作的?我尝试用谷歌搜索,但我唯一能找到的就是关于它在哪里记录消息的问题,这是无用的,因为我几乎不知道如何使用它,甚至不知道它是什么——命令、内置命令,还是其他东西?
答案1
那是最低有效位相关功能。请查看/lib/lsb/init-functions
和/或/etc/redhat-lsb/lsb_log_message
。该路径取决于您的发行版。
答案2
我没有 BSD,也从未使用过它......但可以肯定 log_daemon_message 必须是一个 shell 函数。查看上面的语句,例如:
。 。/功能
这会获取函数文件中的所有函数。您可以做的另一件事是使用 find 查找特定函数:
查找 /etc -type f -exec grep -li log_daemon_msg {} \;
并查看文件中的内容。正如我所说,我没有 BSD,但研究很有趣!
干杯,祝你好运