我继承了一台服务器,总体来说维护得很好。有一些奇怪的现象无疑是“现在不在场的人”做出的某些行政决定的结果。
其中之一是电子邮件的使用方式,大多数系统通知都是以电子邮件形式发出的。这是因为我不想让服务器留下一个大邮箱,其中可能包含大量垃圾,但也包含一些重要信息,因为它被用作所有内容以允许即兴创建电子邮件地址。
这个邮箱只有不到 11 GB,显然需要进行筛选。然而,由于盒子的大小,应该帮助我做到这一点的脚本崩溃了。
这不是我的专业领域,我真的不确定我可以做什么来处理这个问题,但我一直在等待文件变大。
该文件来自 Webmin,网址为/var/spool/mail/[username]
。
尝试读取它甚至所有收件箱的列表都会返回如下错误:
HTTP/1.0 500 Perl 执行失败 服务器:MiniServ/1.670 日期:2014 年 6 月 2 日星期一 15:22:11 GMT 内容类型:text/html; Charset=iso-8859-1 连接:关闭错误 - Perl 执行失败 sdbm 存储返回 -1,errno 22,键“332567”位于 /usr/libexec/webmin/mailboxes/boxes-lib.pl 第 328 行,第 1213158 行。
服务器是sendmail
,POP3/IMAP 是dovecot
。我运行的是 CentOS 5.10。
我拥有 root 访问权限,并且可以自由地做任何需要做的事情,前提是我这样做时不会关闭任何实时服务,但当我不确定如何进入所述文件并处理大量邮件时,这没有帮助。
我无法物理访问该盒子,但并不害怕使用 PuTTY 并以这种方式控制它。
我想使用 POP3 并将盒子清空到台式电脑,但由于盒子太大而导致连接超时。我想我应该预见到这一点。
有什么东西可以帮助我解决这个问题吗?
答案1
我将使用此命令直接打开文件mutt
,然后开始选择和删除对减小大小没有影响的消息。
$ mutt -f /path/to/inbox
例子
$ mutt -f /var/spool/mail/[username]
Mutt 能够根据模式标记消息,因此我会使用此功能并尝试选择大量消息,然后将其删除。