MailScanner 2011
Upgrading a MailScanner email server.
CentOS 4.9
Recent Helpful Sites:
http://blog.zacharyarmstrong.com/2008/05/24/fixing-the-perl-module-only-available-with-the-xs-version-error/
http://itknowledgeexchange.techtarget.com/linux-lotus-domino/tag/you-dont-have-the-xs-version-of-scalarutil/
http://www.linuxquestions.org/questions/linux-software-2/cannot-start-amavis-after-patch-update-695775/
A helpful site is one I have visited as I sort to get a mail server running again, I place them here for reference in the hope that you might find something that will help you.
Up grading a CentOS 4.9 server with MailScanner.
Run Yum
using what ever repositories you connect to upgrade the server with the latest patches and versions of software you use:
yum upgrade
Perl Upgrade
perl -MCPAN -e 'install Bundle::CPAN'
perl -MCPAN -e 'install NetAddr::IP'
perl -MCPAN -e 'install Mail::DomainKeys'
perl -MCPAN -e 'install Mail::DKIM'
perl -MCPAN -e 'install Data::Dump'
perl -MCPAN -e 'install Encode::Detect'
perl -MCPAN -e 'install Net::DNS::Resolver::Programmable'
perl -MCPAN -e 'install Mail::SPF'
perl -MCPAN -e 'install Razor2::Client::Agent'
perl -MCPAN -e 'install Net::Ident'
perl -MCPAN -e 'install IO::Socket::INET6'
Currently this does not compile
perl -MCPAN -e 'install IO::Socket::SSL'
(You need the XS Version of Scalar::Util for dualvar() support)
(Even after working on a forced install of Scalar::Util i could not load this)
May need to install latest MailScanner
perl -MCPAN -e shell
force install Scalar::Util
perl -MCPAN -e 'install IP::Country::Fast'
perl -MCPAN -e 'install Parse::RecDescent'
perl -MCPAN -e 'install Inline'
perl -MCPAN -e 'install NetAddr::IP'
perl -MCPAN -e 'install Business::ISBN::Data'
perl -MCPAN -e 'install Business::ISBN'
perl -MCPAN -e 'install ExtUtils::ParseXS'
perl -MCPAN -e 'install IO::String'
perl -MCPAN -e 'install Test::Manifest'
perl -MCPAN -e 'install YAML'
perl -MCPAN -e 'install Mail::SpamAssassin'
perl -MCPAN -e 'install Mail::SpamAssassin::Plugin::Razor2'
perl -MCPAN -e 'install Mail::SpamAssassin::Plugin::Pyzor'
perl -MCPAN -e 'install Mail::SpamAssassin::Plugin::DCC'
Upgrading perl can be a frustrating process, depending on what you have done previously on this server.
I have found at times that I need to upgrade some areas of perl and depending on the errors I get then go on and upgrade MailScanner, then come back to work on perl again.
After upgrades to perl and MailScanner I have ended up with a MailScanner that will not restart. See the Problem area below for solutions to problems I have had.
MailScanner Upgrade
Install Clam AV
Problems
MailScanner will not restart (March 2011)
On a 4.9 system that would not restart mailscanner, the main issue was:
MailScanner -v
dualvar is only available with the XS version of Scalar::Util at /usr/lib/perl5/vendor_perl/5.8.5/Compre
BEGIN failed--compilation aborted at /usr/lib/perl5/vendor_perl/5.8.5/Compress/Zlib.pm line 9.
Compilation failed in require at /usr/lib/MailScanner/MailScanner/SA.pm line 42.
BEGIN failed--compilation aborted at /usr/lib/MailScanner/MailScanner/SA.pm line 42.
Compilation failed in require at /usr/sbin/MailScanner line 110.
BEGIN failed--compilation aborted at /usr/sbin/MailScanner line 110.
Also perl -MCPAN -e 'install IO::Socket::SSL' would not install.
Tried up upgrade via yum:
yum install perl-IO-Socket-SSL
nothing to do
From the Mailscanner -v error tried to upgrade perl-Compress-Zlib.
yum install perl-Compress-Zlib
Transaction Check Error:
file /usr/share/man/man3/Compress::Zlib.3pm.gz
from install of perl-Compress-Zlib-1.42-1.el4
conflicts with file from package perl-IO-Compress-2.024-1.el4.rf
Ouch!
Had just read some stuff about conflicts between perl and yum, it suggested to clean up conflicts. So:
yum remove perl-IO-Compress
(this removed over 53 packages)
This wanted to also remove 53 other packages, none of which touched core areas of the server or the things I had built it to do. So I allowed all the packages to be removed (Taking note of them all in case I needed to reinstall any!) I then installed perl-Compress-Zlib.
yum install perl-Compress-Zlib
(this just installed this package)
In this upgrade of a 4.9 CentOS server I had only had issues around trying to upgrade Data::Dump and IO::Socket::SSL. After which a restart of MailScanner would fail. It is important to note that in the past when I have hand this kind of a problem it was around: You need the XS Version of Scalar::Util for dualvar() support. And doing a force install Scalar::Util would fix this restart of MailScanner probelm. I had trised this but to no availe.
Having successfully installed perl-Compress-Zlib, I restarted MailScanner:
/etc/init.d/MailScanner restart
(everything now works)
The biggest help to getting this going was MailScanner -v. This pointed me to the problem, but took a while for it to sink in.