syslogでログファイルが書き込みされなくなるトラブル

Linux
この記事は約3分で読めます。

syslogサーバーを構築し、ログが数日分溜まるのを待っていたのですが、ログファイルが途中から書き込みされなくなりました。

初めはsyslogが受信されなくなったのかと思いましたが、違いました。

                 

原因

/etc/rsyslog.confのsyslogファイルの権限が不適切だったことが原因でした。

rsyslogのサービスステータスを確認すると以下のようなメッセージが表示されます。

 

このエラーメッセージから、syslogファイルに対しての権限設定が適切ではないことが分かります。

syslogは受信できているものの、ファイルに書き込みor読み込みが出来ずにエラーとなっている状態でした。

 

 

                 

対処

syslogファイルの書き込み権限を適切なものに設定する必要があります。

この設定は/ect/rsyslog.confで行っています。

/ect/rsyslog.confの以下部分を変更します。

 

変更前

変更後

それぞれの変数(ディレクティブと呼ぶのが正しいようです)の説明は以下の通りです。

$PrivDropToUser

Name of the user rsyslog should run under after startup. Please note that this user is looked up in the system tables. If the lookup fails, privileges are NOT dropped. Thus it is advisable to use the less convenient $PrivDropToUserID directive. If the user id can be looked up, but can not be set, rsyslog aborts.


$PrivDropToGroup

Name of the group rsyslog should run under after startup. Please note that this user is looked up in the system tables. If the lookup fails, privileges are NOT dropped. Thus it is advisable to use the less convenient $PrivDropToGroupID directive. Note that all supplementary groups are removed from the process if $PrivDropToGroup is specified. If the group id can be looked up, but can not be set, rsyslog aborts.

引用元:https://www.rsyslog.com/doc/master/configuration/droppriv.html

 

/etc/rsyslog.confの変更後、

rsyslogを再起動すると、ログの書き込みがされます。

サービスのステータス見ると先ほどのエラーが発生しなくなりました。

admというユーザーがないので、そのエラーは出てしまいました。

これでsyslogファイルに書き込みされるようになったのでログファイルがたまるのを待っていようと思います。

コメント

タイトルとURLをコピーしました