dmesgの内容をファイルに書き込む方法は?

dmesgの内容をファイルに書き込む方法は?

私は最初から新しく構築されたLinuxオペレーティングシステムを実行しています。再起動後も持続するファイルにカーネルメッセージバッファ(dmesg)を保存したいと思います。

syslogdを実行してみましたが、既存のカーネルメッセージバッファもなくsyslogdを起動した後、カーネルから生成された新しいメッセージもない新しいログファイル/var/log/messagesのみが開かれました。

カーネルメッセージバッファを永続ログファイルに保存するには?

ベストアンサー1

/etc/rsyslog.confまたは確認する必要があります/etc/syslog.conf。たとえば、早くキューに登録した場合:

*.*                -/var/log/syslog

dmesgのコンテンツを含むすべてのコンテンツは、このファイルに配置する必要があります。より効果的にターゲティングするには:

kernel.*           -/var/log/dmesg

何らかの理由で失敗した場合は、定期的に(たとえば、cronを介して)次のことができます。

dmesg > /var/log/dmesg

dmesgバッファのサイズ(カーネルにコンパイルされるか、パラメータで設定されているlog_buf_len)とシステムの実行期間によっては、起動後のカーネルロギングが維持されます。

dmesg 出力をファイルに記録し続けるには、-w(--follow) フラグを使用します。

dmesg --follow > mydmesg.log

おすすめ記事