[CentOS] Fried Email Server! Perl Problem

Tue Oct 18 20:43:33 UTC 2011
Marcelo Beckmann <marcelo.beckmann at webers.com.br>

Em 18-10-2011 18:16, Jack Fredrikson escreveu:
> I hate it when I crash my email server. Here's what tailing /var/log/qmail/qmail-smtp/current gives me:
>
> [root at toast jack]# tail /var/log/qmail/qmail-smtpd/current
> @400000004e9ddbd031610f54 tcpserver: status: 0/20
> @400000004e9ddbd72c767c04 tcpserver: status: 1/20
> @400000004e9ddbd72c7ab60c tcpserver: pid 12039 from 210.76.164.235
> @400000004e9ddbd739a20d1c tcpserver: ok 12039 mail.toast.com:209.216.9.56:25 mail.cdfy-china.com:210.76.164.235::2804
> @400000004e9ddbd81c826894 Can't load '/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/auto/DB_File/DB_File.so' for module DB_File: libdb-4.3.so: failed to map segment from shared object: Cannot allocate memory at /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/XSLoader.pm line 70.
> @400000004e9ddbd81c827c1c  at /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/DB_File.pm line 251
> @400000004e9ddbd81c828004 Compilation failed in require at /var/qmail/bin/qmail-scanner-queue.pl line 480.
> @400000004e9ddbd81c8287d4 BEGIN failed--compilation aborted at /var/qmail/bin/qmail-scanner-queue.pl line 480.
<snip>

Hi,

I had a problem and saw log like this ('failed to map segment from 
shared object: Cannot allocate memory') when I setup a new qmail-toaster 
server on CentOS 6 some weeks ago.

In my case the problem was with submission service:
]# head /var/log/qmail/submission/current
@400000004e8632f1279bcb1c tcpserver: status: 0/200
@400000004e8c8d660a78233c tcpserver: status: 0/200
@400000004e8cc0f40b7c931c tcpserver: status: 1/200
@400000004e8cc0f40b7fd70c tcpserver: pid 20116 from 127.0.0.1
@400000004e8cc0f40b809674 tcpserver: ok 20116 
mx.webers.com.br:127.0.0.1:587 :127.0.0.1::60821
@400000004e8cc0f40b8dd514 /var/qmail/bin/qmail-smtpd: error while 
loading shared libraries: libselinux.so.1: failed to map segment from 
shared object: Cannot allocate memory


In my case, the solution was to increase memory, softlimit line on 
/var/qmail/supervise/submission/run:

exec /usr/bin/softlimit -m 64000000 \    <==== increse this value
     /usr/bin/tcpserver -v -R -H -l $HOSTNAME -x $TCP_CDB -c "$MAXSMTPD" \
     -u "$QMAILDUID" -g "$NOFILESGID" 0 587 \
     $SMTPD $VCHKPW /bin/true 2>&1


Maybe it would be useful for your case too.


Best regards,
-- 
Marcelo Beckmann
Suporte Corporativo - suporte at webers.com.br
Webers Tecnologia - http://www.webers.com.br
Curitiba       (PR) (41) 3094-6600
Rio de Janeiro (RJ) (21) 4007-1207
São Paulo      (SP) (11) 4007-1207