そこで、試しにclamavを使ってみた。
ふつうに、インストールしたが、どうもうまく作動しない。
を参考にさせていただいた。
というのを実行したのだが意味がよくわからない。
なんといい加減なんだろうと自分を責めつつ。
その後
# freshclam とパターンファイル更新を実行したのだが、以下のエラー
ERROR: /var/log/clamav/freshclam.log is locked by another process
ERROR: Problem with internal logger (UpdateLogFile = /var/log/clamav/freshclam.log).
/var/log/clamav/freshclam.logが他のプロセスで使われているということであるが、不明。
とりあえずスキャンしてみた。
$ clamscan --infected --remove --recursive /
とルートから再帰的にすべてのファイルをスキャン、感染は削除という条件なので時間がかかる。あまりにも、時間がかかるうえ、
上略
LibClamAV Warning: fmap_readpage: pread fail: asked for 4085 bytes @ offset 11, got 0
LibClamAV Warning: fmap_readpage: pread fail: asked for 4085 bytes @ offset 11, got 0
LibClamAV Warning: fmap_readpage: pread fail: asked for 4085 bytes @ offset 11, got 0
LibClamAV Warning: fmap_readpage: pread fail: asked for 4085 bytes @ offset 11, got 0
LibClamAV Warning: fmap_readpage: pread fail: asked for 4093 bytes @ offset 3, got 0
LibClamAV Warning: fmap_readpage: pread fail: asked for 4094 bytes @ offset 2, got 0
以上のようなWarningメッセージが出るためにCtl+cでキャンセル
検索対象をhome以下にして以下の実行をした
$ sudo clamscan --infected --remove --recursive ./
[sudo] user のパスワード:
----------- SCAN SUMMARY -----------
Known viruses: 6299527
Engine version: 0.99.2
Scanned directories: 1672
Scanned files: 13054
Infected files: 0
Data scanned: 2140.12 MB
Data read: 3621.86 MB (ratio 0.59:1)
Time: 1399.222 sec (23 m 19 s)
正常スキャンされている。
フルスキャンをかけるために、また調査が必要。
とりあえず、/var/log/clamav/freshclam.logが他のプロセスで使われているのを追いかける。
fuserコマンドは、引数として渡されたファイルやファイルシステムのプロセスIDを確認することができる。
プロセスidを入れてみると
$ ps 694
PID TTY STAT TIME COMMAND
694 ? Ss 0:29 /usr/bin/freshclam -d --foreground=true
同じfreshclam
わからない。
一度、teratail で聞いてみようかな?
ということで、質問してみる。
回答が早い。
sudo freshclam
全件スキャンについては、/sysを除いてスキャンすればうまく行った。
clamscan --infected --remove --exclude-dir="^/sys" --recursive /
/sys・には、ドライバに関する情報にアクセスするための仮想ファイルが入っている。
teratail気に入ってしまった。