Linux主机上出现多个分段错误

我在Linode.com上的虚拟机上安装了一个旧的Slackware 9.0邮件服务器。 它拥有大约130GB的邮件托pipe在Maildir格式分区,单独的Ext3文件系统(最大的是92GB)。 我正在计划一个服务器升级的过程(在最近的Slackware上进行全新的安装),但是这并不重要,因此希望在情况恶化之前解决当前的问题。

在过去的几个月中,各个公用事业部门开始了分拆,部分stream程也被零星地closures了。 服务器上运行的主要应用程序是qpsmtpd,qmail,Dovecot,ClamAV和bogofilter,服务器通常具有非常低的系统负载,尽pipe大约300个活动的IMAP用户每秒大约1个邮件进入或离开系统。

大约三个星期前VM被转移到了一个8GB的Linode,问题似乎变得更糟。 我有一个预感,这个问题是关系到运行一个比操作系统可以使用更多的内存的32位操作系统。 我对内核的经验有限,以及它如何处理内存。

ClamAV每天重新启动2-3次,每隔几个小时重新启动一次qpsmptpd(用Perl编写,但是预先生成)。

另外,在Maildirs中运行大量的消息(文件)段错误,在这里find一个示例strace日志:

http://pastie.org/8127239

更多信息:

Linux内核= 3.9.3-x86

内存= 8GB

$ free total used free shared buffers cached Mem: 8286016 3672400 4613616 0 266632 2442144 -/+ buffers/cache: 963624 7322392 Swap: 1048572 0 1048572 

我会非常感谢一些指标,并会很乐意提供更多的细节诊断。

  • Netstat显示了两个sshd的监听,但只有一个pid
  • 如何设置VPN后面的testing环境?
  • 服务器重启,不知道为什么
  • DNS区域传输(AXFR)失败
  • 重复失败:不提示input密码:“运行'sftp user @ host'失败”
  • 我如何知道通过SSH连接到我的Linode VPS的证书?
  • One Solution collect form web for “Linux主机上出现多个分段错误”

    这是停止的地方:

     mremap(0xb7504000, 3075489792, 745472, MREMAP_MAYMOVE) = -1 EINVAL (Invalid argument) 

    我们来看看mremap是如何工作的:

     mremap(old_address, old_size, new_size, int flags); 

    和EINVAL错误的描述:

     EINVAL An invalid argument was given. Possible causes are: old_address was not page aligned; a value other than MREMAP_MAYMOVE or MREMAP_FIXED was specified in flags; new_size was zero; new_size or new_address was invalid; or the new address range specified by new_address and new_size overlapped the old address range specified by old_address and old_size; or MREMAP_FIXED was specified without also specifying MREMAP_MAYMOVE. 

    看起来像SW错误。 解决方法是使用64位操作系统来扩展虚拟内存寻址。

    你用什么版本的clamav?

    服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器.