このスレッドは解決済です(未解決に戻す場合はこちら)
<<戻る

clamavのログファイルについて このメッセージに返信する
日時: 2011/05/24 00:10
名前: Kain
URL:
初めまして、こちらのサイトを参考にLINUXサーバーいじっているのですが、clamavで下記のようなエラーが発生します。

ERROR: Problem with internal logger (UpdateLogFile = /var/log/clamav/freshclam.log).
/etc/cron.daily/freshclam:

ERROR: Problem with internal logger (UpdateLogFile = /var/log/clamav/freshclam.log).
ERROR: Can't open /var/log/clamav/freshclam.log in append mode (check permissions!).

/var/log/のファイルを確認したところ

-rw-r--r-- 1 clam clam 0 5月 22 05:14 freshclam.log

となっておりました。

ユーザー名とグループが本来であれば【clamav】が正しいと思われますが、ファイルが作成される際のデフォルトのユーザー名・グループ名が【clam】となってしまいます。

この設定の変更を行うには、どのようにすればよろしいのでしょうか?
初歩的な質問で申し訳ありませんが、よろしくお願いします。
記事編集 編集
Re: clamavのログファイルについて このメッセージに返信する
日時: 2011/05/24 01:45
名前: ペングイン
URL: http://blog.trippyboy.com
Kainさん

ディフォルトではclamが所有者になるのが正しいのではないかと思いますが
以下3点を除くどこかでログローテの設定やfreshclam実行クーロンが実行
されているのではないかと思います。

1. /etc/freshclam.conf にて「DatabaseOwner」はディフォルトで「clam」。
ここがログファイルを作成するユーザを指定しています。

ディフォルトの設定からコメントアウトと空行を排除しました。

# grep -v ^# freshclam.conf | grep -v ^$
DatabaseDirectory /var/lib/clamav
UpdateLogFile /var/log/clamav/freshclam.log
LogSyslog yes
DatabaseOwner clam
DatabaseMirror database.clamav.net
#

2. /etc/cron.daily/freshclam が実行される際に、ファイルが無い場合
ディフォルトでclamになるように設定されています。

> LOG_FILE="/var/log/clamav/freshclam.log"
> if [ ! -f "$LOG_FILE" ]; then
> touch "$LOG_FILE"
> chmod 644 "$LOG_FILE"
> chown clam.clam "$LOG_FILE"
> fi

3. /etc/logrotate.d/freshclam でもログのローテションの設定がされています。
ログのローテション時にもディフォルトではclamで作成されるようになっています。

> /var/log/clamav/freshclam.log {
> missingok
> notifempty
> create 644 clam clam
> }

freshclamに関してはそれほど頻繁にログが出力されるものではないので、
アーカイブされているものがあれば、zcat ファイル名 | less で見てみて、
実行されている時間が意図したもの以外で記録されていないかも見てみましょう。

記事編集 編集
Re: clamavのログファイルについて このメッセージに返信する
日時: 2011/06/09 20:50
名前: hiro
URL:
私のところでも同じエラーが出ていましたので、ペングインさんの1−3を確認しましたところ、1.のDatabaseOwner だけなぜか clamav になっていました。これを clam に変更すると、

ERROR: Can't open /var/lib/clamav/mirrors.dat for writing

というエラーが出たので/var/lib/clamav/mirrors.dat の所有者を確認すると、clamav になっていました。

そこで、1−3をすべてclamavに変更すると、その後エラーは出なくなりました。

ご参考までに。
記事編集 編集
Re: clamavのログファイルについて このメッセージに返信する
日時: 2011/06/10 07:01
名前: Kain
URL:
返信が遅くなりました。

確かに3つのファイルで所有者が違っていました。
所有者をclamavに変更すると、エラーは消えました。

このデータベースの所有者については、下記のようなエラーが出ていたことがあります。

ERROR: Can't create temporary directory /var/lib/clamav/clamav-176096142b9587ddc7137c9370a3bc40
Hint: The database directory must be writable for UID 101 or GID 103

このため、IDを確認すると
clamav:x:101:103:Clam Anti Virus Checker:/var/clamav:/sbin/nologin
clam:x:102:104:Clam Anti Virus Checker:/var/clamav:/sbin/nologin

となっているので、clamではエラーになるのだと思います。

いずれ時間を見つけて、もう少し調べてみようと思います。

今回は貴重なアドバイスありがとうございました。


>私のところでも同じエラーが出ていましたので、ペングインさんの1−3を確認しましたところ、1.のDatabaseOwner だけなぜか clamav になっていました。これを clam に変更すると、
>
>ERROR: Can't open /var/lib/clamav/mirrors.dat for writing
>
>というエラーが出たので/var/lib/clamav/mirrors.dat の所有者を確認すると、clamav になっていました。
>
>そこで、1−3をすべてclamavに変更すると、その後エラーは出なくなりました。
>
>ご参考までに。
記事編集 編集
件名※必須
名前※必須
URL
任意のパスワード (投稿後のコメント修正・削除時に使用)
画像認証※必須 投稿キー(画像で表示されている数字を入力)
コメント※必須

※質問を投稿後に自己解決された場合は、原因と行った対処を具体的に書き込み下さるよう、よろしくお願いします。

- WEB PATIO -