为什么 procmail 无法写入临时文件夹

为什么 procmail 无法写入临时文件夹

我使用 procmail 过滤电子邮件,但它无法写入临时文件夹:

procmail:无法创建或重命名临时文件“/var/mail/tmp/1483421819.25425_0.morep” procmail:分配“LASTFOLDER=/var/mail/info”

这些邮件文件夹的权限是:mail:mail

什么原因导致这个问题?

谢谢!

答案1

看起来你正在尝试将/var/mail其自身用作 maildir 文件夹。我无法想象这种情况有什么意义。

通常,/var/mail应该包含一堆个人 mbox 文件夹,每个文件夹都以其所有者命名。显然,您需要配置 Procmail 以将 mbox(而不是 maildir)格式写入此位置。例如,

:0:
/var/mail/$USER

(其中 $USER 是帐户的名称,并且该文件必须是常规文件,否则不存在)。虽然这可能已经是编译后的默认操作,所以您不需要为此制定明确的方案。(您可以运行procmail -v以查看当前用户的默认邮箱是什么。)

无论如何,如果您认为您希望 maildir 正常工作,您需要有一个名为 的目录,/var/mail/tmp该目录可由其 Procmail 实例尝试传递到此位置的用户写入。(为了正确的 Maildir 功能,也应该有名为cur和的目录new,并具有类似的权限。)

更常见的是,您会在用户的主目录中拥有一个具有正确权限等的 maildir 结构(或者对于虚拟用户来说,是某种近似值),然后在那里写入。

相关内容