私はDebian wheezyを実行しています。 /etc/init.d/
の多くのスクリプトは、log_success_msg
やlog_warning_msg
などの Linux Standard Base で定義されたさまざまなロギング関数を使用します。 LSBのドキュメントは、これらの関数が何をすべきかについて、少し曖昧に見えます。
Log_success_msg関数は、システムが成功メッセージを指定されていないログファイルに書き込むようにします。メッセージの形式は指定されていません。 log_success_msg関数は、標準出力にメッセージを書き込むこともできます。
ただし、これは、関数がログファイルに書き込むことができるまたはまたは標準出力に書き込むだけです。 Debianでは少なくともjustとメッセージが標準出力に書き込まれるようです。これらの関数を定義するファイル/lib/lsb/init-functions
をチェックアウトしたときに、私の疑いが確認されました。ログメッセージを表示するには、echo
を呼び出すだけです。
これは役に立たない行動です。ブート時に標準出力に書き込まれたテキストは、ブートが完了するとすぐに消え、どのような場合でも画面の上部からスクロールアウトされることがあります。確かに、これらのメッセージが実際にログファイルに格納されていれば、はるかに役立ちます。実際、これらの関数が標準出力に行くだけの場合は、これらの関数を介して何かをログに記録するポイントすら見ていません。
これらのログをファイルに送る方法はありますか?なぜ標準出力のみに何かを「ログに記録」する必要があるのかについて誰かが私に啓蒙できますか?それはどのような役立つ機能を果たしますか?
解決策はbootlogd
をインストールして置くことです
BOOTLOGD_ENABLE=yes
/etc/default/bootlogd
。
参照: