> The other night my default gentoo RulesDuJour for Spamassassin > acquired new > Adult and General rule-sets from SARE. Thereafter spamd refused all > connections and subsequently received mail was not spam filtered. > Issuing '/etc/init.d/spamd restart' as root resolved the situation... > but I don't want to have to do this every time a rule-set is > automatically updated overnight. > > This is a (sanitised) extract from /var/log/messages : > > ...omissis... > > > Does anyone else have this problem? Can it be attributed to fcron or > RulesDuJour or something peculiar to my setup? > I don't understand the "process already running" messages from fcron - > but my cron jobs all seem to be executed normally.
Yep! That's a well-known issue to me, but with amavis. When the rulesdujour script issues a '/etc/init.d/amavis restart', the gentoo's init script doesn't wait enough for amavis termination and times out. I had to overcame the problem by configuring ruledujour to restart amavis through a simple, my-hand-made, script. That's it: #!/bin/bash AMV_NM=amavisd AMV_RC=/etc/init.d/amavisd # Get the amavis' processes pids PIDS=$( /sbin/pidof "${AMV_NM}" ) if [[ ! -z "${PIDS}" ]]; then # Stop amavis "${AMV_RC}" stop # Check for amavis termination while [[ ! -z "${PIDS}" ]]; do sleep 1 PIDS=$( /sbin/pidof "${AMV_NM}" ) done # (Re)start amavis "${AMV_RC}" restart fi Please note that, since the "stop" action is prone to fail, you can't just use a "start" action later. Use a "restart" instead: it will detect amavis as not running anymore and will start it as required. Of course, this script may be adapted to your needs: simply set AMV_NM e AMV_RC to the name and init script's path of spamd. Regards, giampaolo > > The script which was run immediately prior to spamd stopping > accepting connections is the standard one supplied for Gentoo - a > copy of the version I'm using is here : http://temporary.shic.dynalias.net/rules_du_jour --