How do I scan for viruses with ClamAV?
Terminal
At first you have to update the virus definitions with:
sudo freshclam
Then you can scan for viruses.
clamscan OPTIONS File/Folder
If necessary start with root permissions: sudo clamscan
.
Examples:
-
To check all files on the computer, displaying the name of each file:
clamscan -r /
-
To check all files on the computer, but only display infected files and ring a bell when found:
clamscan -r --bell -i /
-
To scan all files on the computer but only display infected files when found and have this run in the background:
clamscan -r -i / &
Note - Display background process's status by running the
jobs
command. -
To check files in the all users home directories:
clamscan -r /home
-
To check files in the
USER
home directory and move infected files to another folder:clamscan -r --move=/home/USER/VIRUS /home/USER
-
To check files in the
USER
home directory and remove infected files (WARNING: Files are gone.):clamscan -r --remove /home/USER
-
To see more options:
clamscan --help
See:
- Latest documentation: PDF | HTML
- ClamAV official Wiki
- Ubuntu Wiki
Graphical User Interface: ClamTK
ClamTk is a frontend for ClamAV. You can install it via Terminal with:
sudo apt-get install clamtk
You can get the latest version from Bitbucket as Debian package.
There is also a PPA (Outdated):
sudo apt-add-repository ppa:landronimirc/clamtk
sudo apt-get update && sudo apt-get install clamtk
Scan Menu: Here you can choose a file, folder or a device for scanning
View Menu:
Quarantine Menu:
Advanced Menu:
Help Menu: Here you can check for updates.
See:
- ClamTk@Sourceforge
- ClamTk Help
- ClamTk FAQ
The accepted answer is a great answer, but every time I reach this page, it's a pain to find the command I want from the clutter of information. So just providing a concise answer to the question:
sudo apt-get install clamav; sudo freshclam
To scan all folders in your computer (except /sys
):
clamscan -r -i --exclude-dir="^/sys" --bell /
To scan specific folders or files, you have to create a file in which you list out which files/folders you want to scan, and tell clamav where to find that file:
clamscan -r -i --bell --file-list=/home/nav/ClamScanTheseFolders.txt
My ClamScanTheseFolders.txt
contained:
/media/nav/someFolder1
/media/nav/someFolder2
/opt/someFolder/somefile