3

I want to schedule a daily scan in my Home directory using ClamAv. Can anybody explain me how to perform such task using a bash script? I don't need to scan mails, just Home directory and maybe other directories. Thank you

P.s.: I don't really need it, but is there a way to perform a scan on the whole pc?

2 Answers 2

2

I would use cron for this instead of strictly using bash. In the directory /etc/cron.daily/ create a small script clamavscan.sh that looks like:

#!/bin/sh
clamscan /home/username/

Then be sure to make the script executable with chmod +x clamavscan.sh. This should run the clamscan of your home directory once daily at 6:25 (as you can see in the file /etc/crontab).


To have ClamAV scan you entire machine, you should just be able to run clamscan /, although this might require root privileges to really scan everything.

2
  • What will ClamAv do if it finds some threats?
    – OverMorrow
    Commented Mar 23, 2016 at 1:53
  • I don't know what ClamAv's default behavior is. You could probably set ClamAv to automatically delete/quarantine/whatever the threats so you don't have to deal with them. Otherwise, if you want to make the call manually, you could make a slightly more sophisticated clamavscan.sh script that somehow alerts you to make a decision. At the very least you can redirect the output of the clamscan so you have a logfile to check for threats. Commented Mar 23, 2016 at 2:30
0

I've been trying to create a similar cron job myself today. I went a slightly different route. I opened up /etc/crontab and added the following job:

0 18 * * SUN root rm -rf /var/log/clamav/freshclam.log
1 18 * * SUN root freshclam
22 18 * * SUN root clamscan -r -i / | grep FOUND >> /home/osamu/virus-scan-reports/virus-scan-report-`date +"\%d-\%m-\%Y"`.txt

If someone else has a better way to schedule regular virus scans including updating the known virus database please reply this thread.

0

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .