一 简介
    clam antivirus是基于UNIX/LINUX 操作系统的一款免费杀毒软件,支持在线更新病毒库。
测试服务器说明:
linux AS 2.6.9
下载 clamav-0.93.tar.gz
tar zxvf clamav-0.93.tar.gz
进入目录,编译安装
./configures --prefix=/usr/local/clamav
make    /    make install
配置clamav.conf及freshclam.conf
安装完毕后,配置文件在etc目录中,clamav.conf是杀毒软件的主配置文件,freshclam.conf是更新病毒库的配置文件,下面是俩个文件的配置实例,可以根据环境修改:
注:你需要注释clamd.conf和freshclam.conf文件开头部分的“Example”
vi /usr/local/clamav/etc/clamd.conf
LogFile /var/log/clamd.log
LogVerbose yes
PidFile /var/run/clamav/clamd.pid
TemporaryDirectory /var/tmp
DatabaseDirectory /usr/local/clamav/share/clamav
LocalSocket /tmp/clamd
FixStaleSocket<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

User clamav
vi /usr/local/clamav/etc/freshclam.conf

DatabaseDirectory /usr/local/clamav/share/clamav

UpdateLogFile /var/log/freshclam.log

LogVerbose yes

PidFile /var/run/clamav/freshclam.pid

DatabaseOwner clamav

DatabaseMirror db.cn.clamav.net

DatabaseMirror database.clamav.net

升级杀毒软件

/usr/local/clamav/bin/freshclam

杀毒

/usr/local/clamav/bin/clamscan

参数说明:

(0) 扫描指定的文件 :
   clamscan file

  (1) 扫描当前目录 :
   clamscan

  (2) 扫描/home目录中所有文件 (包括子目录 ):
  clamscan -r /home   clamscan -r / (扫描/的所有目录以及其子目录 )

   (3) Load database from selected file and limit disk usage to 50 Mb:
   clamscan -d /tmp/newclamdb --max-space=<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />50m -r /tmp

  (4) 扫描数据流 :
   cat testfile | clamscan -

  (5) 检查邮件目录 :
   clamscan -r --mbox /var/spool/mail

  其他差数

  -l [路径] [文件名] 增加扫描报告
   # clamscan -l /var/log/clamscan.log /
  --move [路径] 移动病毒文件至 ..
  --remove [路径] 删除病毒文件
  --unzip(unrar) 解压压缩文件扫描

返回值

  0 : 无病毒

  1 : 发现病毒

40: 已经通过的未知选项

  50: 数据库初始化错误

  52: 不支持的文件格式

  53: 无法打开目录

  54: 不能打开文件 (ofm)

  55: 读文件错误 (ofm)

   56: Can't stat input file / directory.

   57: Can't get absolute path name of current working directory.

  58: I/O 错误, 请检查文件系统

  59: 无法在/etc/passwd获得当前用户的信息

  60: 无法在/etc/passwd获得'clamav'(默认名)用户的信息

 

61: Can't fork.

  63: 不能创建临时文件/目录(检查权限 ).

  64: 无法对临时目录进行写操作 (请指定另一个目录 ).

  70: 无法分配或释放内存 (calloc).

  71: 无法分配内存 (malloc).