使用.procmailrc在unix系统上进行电子邮件转发

时间:2015-04-04 20:51:55

标签: linux email procmail

我需要将linux系统上的所有传入邮件转发到文件夹/ home / INBOX。如何在此文件夹中创建传入消息的mbox,自动获取此处转发的所有邮件?我使用以下不起作用的代码。

    :0
    ! /home/INBOX

即使在procmailrc中写入后,邮件仍然存在于默认的假脱机文件夹中,而不是保存在指定的文件夹中。

1 个答案:

答案 0 :(得分:0)

!用于转发电子邮件,/home/INBOX不是有效的电子邮件地址。

检查procmail.log应该很容易揭示这一点。

也许你对自己的术语感到困惑。转发"转发"消息是继续将其转发到不同的服务器和/或帐户,而保存到文件则称为"正在传送"。

你可能意味着

:0:
/home/INBOX

带锁定(第二个冒号),因为mbox文件夹需要互斥(否则你可能会得到一个传递过程,在另一个传递过程写入的消息中间写一条消息,从而破坏了mbox的完整性文件)。

你也可以简单地设置DEFAULT=/home/INBOX,因为当它用尽其他东西时,Procmail会在那里交付。

在高容量系统上,锁定可能会导致拥塞,在这种情况下,切换到更具弹性的邮箱格式可能是一个不错的选择; maildir现在几乎是事实上的标准。使用maildir比单个mbox文件稍微笨拙,但它有其他有用的属性(如果你从maildir中提取消息,你当然可以自由地将它们转换为mbox以方便)

对于它的价值,/home/INBOX是一个非常不标准的位置。 /home中的条目应该是各个用户的主目录,并且只有root应该具有对此目录的写访问权限(当然,用户应该具有对各个子目录的完全访问权限,这些子目录是它们各自的主目录)。但如果那是你真正想要的,并且你已经安排自己在那里进行写访问,那么它不会立即被打破,只是很奇怪。