なんだこれは

はてなダイアリーから移転しました。

sudo freshclam -vでエラーが出る→こうですか?

祝辞

全てのclamXavclamav-update.plのユーザーへ。clamav 0.90がリリースされてます。開発者の皆様ご苦労様です。ありがとうございます。fu7mu4はclamav-update.plを使っていたので、0.90がインストールされました。OKAMURA様ありがとうございます。さて、えーっと?

To all clamXav and clamav-update.pl user, clamav team released 0.90 version .thanks to them. I used clamav-update.pl. it's very convenience to me. thanks to OKAMURA. and so on....

updateの経過

/usr/local/clamXav/share/clamav/freshclam.logを見ると、clamav 0.90のリリースがわかる。

the freshclam.log notice me to be older verison clamav

Received signal: wake up

ClamAV update process started at Wed Feb 14 08:55:44 2007

WARNING: Your ClamAV installation is OUTDATED!

WARNING: Local version: 0.88.7 Recommended version: 0.90

DON'T PANIC! Read http://www.clamav.net/faq.html

main.cvd is up to date (version: 42, sigs: 83951, f-level: 10, builder: tkojm)

daily.cvd is up to date (version: 2562, sigs: 6123, f-level: 9, builder: sven)

/usr/local/clamXav/etc/freshclam.confに

But in my freshclam.conf has the bellow line:

OnOutdatedExecute /usr/local/clamXav/bin/clamav-update.pl

行があるから、clamav 0.90が自動ダウンロードされたはずである。

So I think clamav-update.pl install clamav 0.90 autmatically.

freshclamでversion checkでエラー

then I checked version of freshclam...

sudo /usr/local/clamXav/bin/freshclam -v

を実行してみると、こんなこと言われてしまいました。うん?
freshclam returned bellow error messages;

ERROR: Parse error at line 91: Option NotifyClamd requires string argument.

ERROR: Parse error at line 77: Option FixStaleSocket requires boolean argument.

ERROR: Can't parse the config file /usr/local/clamXav/etc/clamd.conf

さて、どうしたものかと読むと、NotifyClamdはstringが必要という。たぶん、指定が変ったのだろう。

What's up ? What should I do ?
I think some conf file setting is changed.

daemon停止

とりあえず正常ではないのでdaemon停止。
OK, OK I stop ClamAntiVirusDaemon and FreshClamDaemon.

sudo /Library/StartupItems/ClamAntiVirusDaemon/ClamAntiVirusDaemon stop

sudo /Library/StartupItems/FreshClamDaemon/FreshClamDaemon stop

ClamAntiVirusDaemon 動いてないよ...orz
Oh, oh ClamAntiVirusDaemon is not working ...orz

ひょっとしたらclamdのプロセスが生きていたかもしれない。ps aux| grep clamとかでkillしておいた方が吉かもしれん。

clamd may working ? If you worry about that, kill that process...

91行のエラー

/usr/local/clamXav/etc/freshclam.confを見ると、当該場所はここ。

In 91th line, freshclam.conf said;

NotifyClamd

上の部分に NotifyClamd /config/file/pathとあるのでclamd.confの絶対パスを入れてみた。編集後はこう。

Error message said required clamd.conf's absolute path... I fixed..

NotifyClamd /usr/local/clamXav/etc/clamd.conf

さて、もう一度freshclamの実行テスト。
Try freshclam again !

sudo /usr/local/clamXav/bin/freshclam -v

うん、とりあえず、結果
It returned bellow;

Current working dir is /usr/local/clamXav/share/clamav

Max retries == 3

ClamAV update process started at Wed Feb 14 10:30:28 2007

Querying current.cvd.clamav.net

TTL: 900

Software version from DNS: 0.90

main.cvd version from DNS: 42

Connecting via proxy.hosts

main.cvd is up to date (version: 42, sigs: 83951, f-level: 10, builder: tkojm)

daily.cvd version from DNS: 2562

Connecting via proxy.hosts

daily.cvd is up to date (version: 2562, sigs: 6123, f-level: 9, builder: sven)

LibClamAV Error: Database Directory: /usr/local/clamXav/share/clamav not locked

出力形式が新しくなってるー!えっとー、77行のは?
ひとつまたはふたつクリアですけど、Errorが残ってる?こうですか?わかりません><

Uh-ha !
Newer format !

Error is fixed ? I confused...

古い形式は?

さて、公式ページを見てみよう。今回の主な変更点は?と

In that case, I visit public clamav site and checked main changing point.

One of the most important changes is the availability of scripted updates. Instead of transferring the whole cvd file at each update,only the differences between the latest cvds and the previous versions will be transferred.

In case the local copy of the latest cvd is corrupted or the scripted update fails for some reason, freshclam will fallback to the oldmethod. Similarly to cvd files, scripted updates are compressed and digitally signed and are already being distributed. They willdramatically reduce traffic on our mirrors and will allow us torelease even more updates in the future.

http://www.clamav.net/2007/02/14/clamav-090-finally-out-over-90000-signatures-in-the-database//

日本語にすると

clamavは定義ファイルを差分ダウンロードできるようになりました。localに定義ファイルがないか破損していたら、昔の方法でダウンロードします。

ここで変則技を使ってみる。定義ファイル*cvdを消す。

uh-ha ! try scripted update. : remove cvd files and update !

sudo rm /usr/local/clamXav/share/clamav/*cvd

sudo /usr/local/clamXav/bin/freshclam

こうすると、定義ファイルの差分ダウンロードを回避し、今までのファイルダウンロードになる。そうしたほうがエラー情報が多い(理由不明)

it returned bellow lines. I don't know why; scripted updating gives me more info than older updaing.

ClamAV update process started at Wed Feb 14 11:18:07 2007

Connecting via proxy.hosts

Downloading main.cvd [100]]

main.cvd updated (version: 42, sigs: 83951, f-level: 10, builder: tkojm)

Connecting via proxy.hosts

Downloading daily.cvd [100]]

daily.cvd updated (version: 2562, sigs: 6123, f-level: 9, builder: sven)

Database updated (90074 signatures) from db.jp.clamav.net

ERROR: Parse error at line 77: Option FixStaleSocket requires boolean argument.

WARNING: Clamd was NOT notified: Can't find or parse configuration \

file /usr/local/clamXav/etc/clamd.conf

LibClamAV Error: Database Directory: /usr/local/clamXav/share/clamav not locked

やっぱりクリアはひとつらしい。orz
OK. I pass only 1 error and 2 errors remains....

booleanってOn/OffなのかYes/NoなのかTrue/Falesなのかわかんないよ! OnもYesもダメじゃん。注意:77行は/usr/local/clamXav/etc/clamd.confの77行

and so I have no idea boolean is on/off or yes/no perhaps true/false ?

あと、77行はどうしよう?

とりあえず、ググルと、

I googled that;

clamdの場合

LocalSocketとTCPSocketは排他的となっていて、どちらか一方のみ記述可能で、かつ必ずどちらか一つを記述しなければなりません。

http://www.eng.maritime.kobe-u.ac.jp/~i_asano/misc/clmilter/clmilter.html

(Translated in English)
In clamd case,

LocalSocket and TCPSocket are exclusive, you must choose only one from them.

というのが見つかったので、これを止めればいいような気がする。/usr/local/clamXav/etc/clamd.confをいじる。77行をコメントアウトした。

So I commented out in 77th line on clamd.conf

#FixStaleSocket

追記: FixStaleSocket trueでもOKらしいです。上の文章って一体?追記時間:14:50

もう一度変則技すると最後のが、こうなりました。

then try again...

daily.cvd updated (version: 2562, sigs: 6123, f-level: 9, builder: sven)

Database updated (90074 signatures) from db.jp.clamav.net

Clamd successfully notified about the update.

LibClamAV Error: Database Directory: /usr/local/clamXav/share/clamav not locked

77行のはクリア。さて、なんですか?lockって?

OK I clear 2 error. What "lock" mean?

最後の手段

再起動してみよう。
In the last way, I rebooted my mac osx.....

再起動 → libClamav Errorが消えました。
try again ... oh fixed ! yeah !

追記: clamav-updateの掲示板によると、FreshClamDaemonのユーザーは以下を実行することとのことです。
Note: clamav-update developer's board said, FreshClamDaemon user must do bellow lines;
追記時間15th:9:40

sudo chmod u-s /usr/local/clamXav/bin/freshclam

sudo chown root /usr/local/clamXav/bin/freshclam

http://clamav-update.sourceforge.jp/forum/viewtopic.php?p=113#113