If you’re still running a CentOS 5.10 machine, you may notice that after recent updates SpamAssassin no longer works on your system. Trying to start it manually will get you a puzzling error:

# service spamassassin start
Starting spamd: child process [12345] exited or timed out without signaling production of a PID file: exit 255 at /usr/bin/spamd line 2588.

Manually running sa-update also triggers an error (albeit more detailed):

# sa-update
Undefined subroutine &Scalar::Util::tainted called at /usr/lib/perl5/5.8.8/i386-linux-thread-multi/File/Spec/Unix.pm line 152.

This is caused by a bad Scalar::Util binary being installed on the system.

The issue can be corrected by updating to the correct package:

cd ~
wget http://search.cpan.org/CPAN/authors/id/P/PE/PEVANS/Scalar-List-Utils-1.39.tar.gz
tar -xzf Scalar-List-Utils-1.39.tar.gz
cd Scalar-List-Utils-1.39
perl Makefile.pl
gmake install

Now sa-update should run and spamassassin should start successfully.

PS: If the file URL becomes unavailable, search for the most recent package here: http://search.cpan.org/~pevans/Scalar-List-Utils-1.39/

Leave a Reply