web-dev-qa-db-ja.com

log_daemon_msg、log_end_msg、log_progress_msgを適切に使用して適切なデーモンスクリプトを記述する方法

これらの機能の適切なユーザーに関するドキュメントを見つけることができないことに驚きました。

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しかし、その使用法に関するドキュメントはほとんどありません。

28
sorin

これがあなたが探しているものだと思います:

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

私はdebian wheezyで多くのinitスクリプトを読んでいますが、initスクリプトを作成する統一された方法はないようです。 log_warning_msglog_failure_msgの代わりにechoを使用する人もいます。

注:/lib/lsb/init-functionsは、bashではうまく機能しないようです。したがって、適切なシバンを使用することを忘れないでください:

#!/bin/sh 
15
alfredocambera

任意のスクリプトでテストしてみてください:

vim 123.sh

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

[ 1 != 2 ] && log_end_msg 1

そこで、/ lib/lsb/init-functionsからfuncsを含めました。

そして実行:

bash 123.sh 
   ...fail!

等々:

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

[ 1 != 2 ] && log_end_msg 0

そして実行:

bash 123.sh 
   ...done.
2
ipeacocks