ClamAV (简体中文)

From ArchWiki
Revision as of 02:21, 25 November 2012 by Fengchao (Talk | contribs) (疑难解答: update for systemd)

Jump to: navigation, search
翻译状态: 本文是英文页面 ClamAV翻译,最后翻译时间:2012-10-23,点击这里可以查看翻译后英文页面的改动。

Clam AntiVirus 是一款 UNIX 下开源的 (GPL) 反病毒工具包,专为邮件网关上的电子邮件扫描而设计。该工具包提供了包含灵活且可伸缩的监控程序、命令行扫描程序以及用于自动更新数据库的高级工具在内的大量实用程序。该工具包的核心在于可用于各类场合的反病毒引擎共享库。

安装

ClamAV 可通过 clamav 包进行安装,在官方源中可以找到.

配置

倘若你要将 clamav 作为守护进程或是作为简单的文件检测工具,那么你得注释掉包含 Example 的行, 在/etc/clamav/freshclam.conf/etc/clamav/clamd.conf 文件的开头部分能够找到。

启动守护进程

要启动守护进程:  # systemctl start clamd

在系统启动是自动启动:

# systemctl enable clamd

也可以修改 /etc/conf.d/clamav 文件中的启动选项 ,将 "no" 修改为 "yes" 以达到相同的效果。

# change these to "yes" to start
START_FRESHCLAM="yes"
START_CLAMD="yes"

更新病毒库

编辑配置文件,注释掉 "Example" 行

/etc/clamav/freshclam.conf
# Comment or remove the line below.
#Example

通过下列命令更新病毒库:

# freshclam

病毒库保存在下列文件中:

/var/lib/clamav/daily.cvd
/var/lib/clamav/main.cvd

扫描病毒

clamscan 可用以扫描文件, 用户目录亦或是整个系统:

$ clamscan myfile
$ clamscan -r -i /home
$ clamscan -r -i --exclude-dir=^/sys\|^/proc\|^/dev /

If you would like clamscan to remove the infected file use the --remove option in the command.

疑难解答

如果你在运行 freshclam 命令之后出现下列信息:

WARNING: Clamd was NOT notified: Cannot connect to clamd through 
/var/lib/clamav/clamd.sock connect(): No such file or directory

为 clamav 添加一个 sock 文件:

# touch /var/lib/clamav/clamd.sock
# chown clamav:clamav /var/lib/clamav/clamd.sock

然后, 编辑 /etc/clamav/clamd.conf – 去掉该行注释:

LocalSocket /var/lib/clamav/clamd.sock

保存并重启守护进程systemctl restart clamd

当启动守护进程时出现下列错误信息:

LibClamAV Error: cli_loaddb(): No supported database files found
in /var/lib/clamav ERROR: Not supported data format

以 root 身份运行 freshclam:

# freshclam -v

如果显示:

# can't create temporary directory

error, along with a 'HINT' containing a UID and a GID number.

执行下列命令:

# chown UID:GID /var/lib/clamav & chmod 755 /var/lib/clamav 
# ex: chown 64:64