我正在尝试设置邮递员,它已经运行,但是当用户向邮件列表发送邮件时。
它没有投递,因为它将此消息传递给 maildrop,而 maildrop 又试图查找邮件列表的 Maildir 目录。
例如邮件[电子邮件保护]
maildrop 查找 /home/maillist 目录,但该目录不存在。
我该如何解决这个问题?
我只想使用 maildrop。
谢谢
答案1
您将 mailman 邮件列表别名存储在哪个文件中?如果您将其存储在除默认文件(/etc/aliases 或 /etc/postfix/aliases,具体取决于安装)之外的任何文件中,则需要将该文件添加到 main.cf 文件中的别名映射条目中。该条目最终看起来类似于alias_maps = hash:/etc/postfix/aliases, hash:/usr/local/mailman/data/aliases
假设您将邮件列表条目存储在 /usr/local/mailman/data/aliases 中。否则,您的邮件列表别名将需要保留在系统默认别名文件中。如果您正在执行虚拟域,请改用 virtual_alias_maps 指令。
一旦确定在 main.cf 文件中定义了正确的别名文件,那么您将需要重新加载 postfix 以使用上面描述的别名映射。
邮件列表条目看起来像是listname: "| /path/to/mailman listcommand listname"
定义为默认域一部分的列表,也像listname@domain: "| /path/to/mailman listcommand listname"
虚拟域一样。别名命令行周围的双引号很重要。
文本别名文件并不是 postfix 实际使用的。相反,它通常使用某种数据库格式。大多数人对本地文件使用哈希数据库类型。也可以使用 LDAP 和 SQL 数据库进行别名映射,但您似乎不会这样做。要将文本别名文件转换为 postfix 可以使用的文件,您需要运行 postalias 或 postmap 命令。有关详细信息,请查看手册页(man postalias
和man postmap
),但通常命令如下所示postalias /path/to/aliases
。
祝你好运,如果我答错了,请告诉我。