【问题标题】:How to properly use log_daemon_msg, log_end_msg, log_progress_msg to write a proper daemon script?如何正确使用 log_daemon_msg、log_end_msg、log_progress_msg 编写合适的守护程序脚本?
【发布时间】:2013-05-27 04:07:47
【问题描述】:

我很惊讶无法找到有关这些功能的正确用户的任何文档:

log_daemon_msg
log_progress_msg
log_end_msg
log_action_msg
log_success_msg
log_failure_msg
log_warning_msg

我在哪里可以找到关于它们的使用和其他相关功能的更多信息?

注意,我在 /lib/lsb/init-functions 中找到了它们,但是关于它们的使用的文档大部分都丢失了。

【问题讨论】:

  • 好问题。我也一直在尝试查找有关该主题的文档

标签: daemon


【解决方案1】:

我想这就是你要找的:

http://refspecs.linuxbase.org/LSB_4.1.0/LSB-Core-generic/LSB-Core-generic/iniscrptfunc.html

我已经阅读了很多关于 debian wheezy 的 init 脚本,但似乎并没有统一的方式来创建 init 脚本。有些人使用echo 而不是log_warning_msglog_failure_msg

注意:/lib/lsb/init-functions 在 bash 下似乎不能正常工作。所以记得使用适当的shebang:

#!/bin/sh 

【讨论】:

  • LSB 规范不包括 log_progress_msg
  • 也不是log_end_msg
  • 这些日志保存在哪里?
  • @Josir 消息被发送到标准输出和/或错误。你必须照顾好它。
  • 由于脚本是由init.d控制的,所以我不知道如何“照顾它”。无论如何,我为此创建了一个特定的问题:stackoverflow.com/questions/69757333/…
【解决方案2】:

尝试使用任何脚本进行测试:

vim 123.sh

#!/bin/sh
. /lib/lsb/init-functions

[ 1 != 2 ] && log_end_msg 1

所以我已经包含了来自 /lib/lsb/init-functions 的函数。

并执行:

bash 123.sh 
   ...fail!

等等:

cat 123.sh 
#!/bin/sh
. /lib/lsb/init-functions

[ 1 != 2 ] && log_end_msg 0

然后运行:

bash 123.sh 
   ...done.

【讨论】:

    猜你喜欢
    • 2012-08-30
    • 2010-09-16
    • 2017-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-18
    • 2015-04-29
    • 2013-05-16
    相关资源
    最近更新 更多