系统信息:
Description: Ubuntu 10.04.4 LTS
Linux mail 2.6.32-42-server #95-Ubuntu SMP Wed Jul 25 16:10:49 UTC 2012 x86_64 GNU/Linux
H/W path Device Class Description
====================================================
system Bochs
/0 bus Motherboard
/0/0 memory 96KiB BIOS
/0/401 processor QEMU Virtual CPU version 1.0.50
/0/402 processor CPU
/0/1000 memory 2GiB System Memory
/0/1000/0 memory 2GiB DIMM RAM
/0/100 bridge 440FX - 82441FX PMC [Natoma]
/0/100/1 bridge 82371SB PIIX3 ISA [Natoma/Triton II]
/0/100/1.1 scsi1 storage 82371SB PIIX3 IDE [Natoma/Triton II]
/0/100/1.1/0.0.0 /dev/cdrom disk DVD reader
/0/100/1.2 bus 82371SB PIIX3 USB [Natoma/Triton II]
/0/100/1.3 bridge 82371AB/EB/MB PIIX4 ACPI
/0/100/2 display GD 5446
/0/100/a storage Virtio block device
/0/100/12 network Virtio network device
/1 eth0 network Ethernet interface
我意外地将 APT 的 Postfix 安装到了我们的 Zimbra 电子邮件服务器虚拟机 (KVM/Proxmox VE 2.1) 上。我立即清除了它,但是没有用。以下是我为修复它而采取的步骤:
- 重新安装 Zimbra
- 停止 Zimbra 服务
重置权限
chown -R zimbra:zimbra /opt/zimbra
固定权限
/opt/zimbra/libexec/zmfixperms -verbose -extended
重新启动 Zimbra 服务
更新 Zimbra SSH 密钥
密钥生成器
更新了 Zimbra SSH 密钥
更新验证密钥
按照上述步骤,Zimbra 现在又可以正常工作了,问题是,由于 Zimbra 一整天都出现故障,邮件队列中的所有电子邮件现在都消失了!我的意思不仅仅是您无法在 GUI 中看到它们,它们甚至不再存在于文件系统中。
当我尝试修复 Zimbra 时,队列中至少有 75 封电子邮件,这是现在的假脱机状态:
zimbra@mail:~$ postqueue -p
Mail queue is empty
我的所有电子邮件到底都到哪里去了?
答案1
如果将来有人遇到此问题,这就是修复方法。您可能会得到不止几封重复邮件,但这总比丢失一封重要的电子邮件要好……
要查找排队的消息,请运行:
grep -iRE '<recipient_email_address>' /var/log/mail.log* | grep -i 'queued as' | awk '{print $6}' | cut -d ':' -f 1 | xargs | tr ' ' '|'
要在文件系统上查找实际的电子邮件文件,请运行:
grep -iRE '<output_from_previous_command>' /opt/zimbra/store | grep -iv 'Message-Id' | cut -d ':' -f 1 | xargs
将电子邮件“注入”回其来自的用户帐户:
su -l zimbra
/opt/zimbra/bin/zmlmtpinject <output_from_previous_command> -r <recipient_email>
请记住,您将丢失所有日期/时间信息。解决此问题的唯一方法是向包含“Date:”标头副本的每条消息添加“X-Zimbra-Received”标头。发挥您的想象力来了解如何做到这一点,Perl 浮现在您的脑海中……