Clamd and systemd

Arthur Dent misc.lists at blueyonder.co.uk
Wed Sep 19 19:36:28 UTC 2012


On Wed, 2012-09-19 at 10:47 +0100, Arthur Dent wrote:
> > "What tells it that it is a "scan" service? That bit of the puzzle seems
> > to be missing..."
> >
> > Whatever is the parameter after the @ and before the dot  becomes %i in
> > the service file.  Look at the service file:
> > [Unit]
> > Description = clamd scanner (%i) daemon
> > After = syslog.target nss-lookup.target network.target
> >
> > [Service]
> > Type = simple
> > ExecStart = /usr/sbin/clamd -c /etc/clamd.d/%i.conf --nofork=yes
> > Restart = on-failure
> > PrivateTmp = true
> >
> > so clamd at scan.service invokes clamd with the scan.conf file as it's
> > configuration file.
> > This way you can have multiple clamd services each using a different
> > config file.  Just create another config file in
> > /etc/clamd.d/my_config.conf and:
> > ln -s /lib/systemd/system/clamd at .service
> > /etc/systemd/system/clamd at my_config.service
> >
> > You should have the /etc/clamd.d/scan.conf I think:
> >
> > [root at moses shorewall]# rpm -qf /etc/clamd.d/scan.conf
> > clamav-scanner-0.97.5-1700.fc17.noarch
> 
> Thank you Bill for a helpful and, more importantly, informative reply. I
> think this will not only help me to solve my problem but, even better,
> help me to understand where I was going wrong.
> 
> As before, I don't have access to the machine right now, so i will try
> when I get home to work through this and get it right.
> 
> I will once again report back later...

Well... Progress!

Because I have done so much tinkering and editing of configs (and had
previously even tried the script I mentioned earlier) I was unsure as to
what should be where, so I blitzed every clam* package with yum erase,
ran updatedb and then deleted any and all clam* files and directories
still left. I also deleted the clam* users that had been created
(including a "clamd user that I had created myself), and then
reinstalled the lot.

A quick edit of the freshclam configs and the /etc/clamd.d/scan.conf
file and a call to systemctl enable clamd at scan.service and systemctl
start clamd at scan.service and I am up and running!

Thank you so much.

All is not _quite_ perfect however. In calling clamdscan from my script
(itself called from procmail) I get the error:
ERROR: Can't parse clamd configuration file /etc/clamd.conf

Note the config file and location. In order to get it to work (which it
does), I need to declare clamdscan in my script as:
"/bin/clamdscan -c/etc/clamd.d/scan.conf"

So where does it default to /etc/clamd.conf ? I have grepped the whole
of /etc/* and can't find a reference to this location, and there is
no /etc/sysconfig/clamd as there used to be.

I think this is the last remaining mystery. After I have solved this I
will be a very happy bunny!

Thank you again.

Mark



-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <http://lists.fedoraproject.org/pipermail/users/attachments/20120919/ddda3740/attachment-0001.sig>


More information about the users mailing list