Postfix 无法找到 /etc/postfix/virtual 文件 [关闭]

Posted

技术标签:

【中文标题】Postfix 无法找到 /etc/postfix/virtual 文件 [关闭]【英文标题】:Postfix unable to find /etc/postfix/virtual file [closed] 【发布时间】:2013-07-02 07:56:04 【问题描述】:

在 Ubuntu Server 12.04 机器上,我为/etc/postfix/virtual 中的特定地址设置了电子邮件转发器: example@mydomain.com postfix-test@dotancohen.com

地址postfix-test@dotancohen.com 工作并接收邮件。当我向example@mydomain.com 发送邮件时,我会在日志中看到:

warning: hash:/etc/postfix/virtual is unavailable. open database /etc/postfix/virtual.db: No such file or directory
warning: hash:/etc/postfix/virtual lookup error for "example@mydomain.com"
warning: 705B58190E: virtual_alias_maps map lookup problem for example@mydomain.com  -- deferring delivery

为什么后缀可能找不到/etc/postfix/virtual file

$ ls -la
total 96
drwxr-xr-x   3 root root  4096 Jul  4 08:46 .
drwxr-xr-x 102 root root  4096 Jun 24 06:23 ..
-rw-r--r--   1 root root   274 Jun 24 06:23 dynamicmaps.cf
-rw-r--r--   1 root root  1549 Jul  4 08:46 main.cf
-rw-r--r--   1 root root  5531 Jun 24 06:23 master.cf
-rw-r--r--   1 root root 19707 Feb 20 20:03 postfix-files
-rwxr-xr-x   1 root root  8729 Feb 20 20:03 postfix-script
-rwxr-xr-x   1 root root 26498 Feb 20 20:03 post-install
drwxr-xr-x   2 root root  4096 Feb 20 20:03 sasl
-rw-r--r--   1 root root    43 Jul  4 08:27 virtual
-rw-r--r--   1 root root   130 Jul  4 08:26 vmailbox

$ cat virtual
example@mydomain.com post-test@dotancohen.com

$ cat main.cf | grep virtual
virtual_mailbox_domains = mydomain.com
virtual_mailbox_base = /var/mail/vhosts
virtual_mailbox_maps = hash:/etc/postfix/vmailbox
virtual_minimum_uid = 100
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
virtual_alias_domains = fastupfront.com
virtual_alias_maps = hash:/etc/postfix/virtual
# virtual_alias_maps = /etc/postfix/virtual # I tried without the 'hash:' prefix as well.

请注意,mydomain.com 是匿名的。事实上,文件中使用的域名是一个真实的域名,它的 A 和 MX 记录指向该服务器的 IP 地址,并且使用 Apache 提供网页服务。 DNS 记录上周已更改,因此我知道它们已经传播。

【问题讨论】:

解决方案:serverfault.com/a/972243/208540 【参考方案1】:

问题是编辑/etc/postfix/virtual后需要执行以下命令:

$ sudo postmap /etc/postfix/virtual
$ sudo service postfix reload

【讨论】:

sudo postmap /etc/postfix/virtual 再次给我同样的错误 也为我解决了!在过去的两天里,我一直因“临时查找错误”而发疯。 :| sudo postmap /etc/postfix/virtual 也给了我错误,用 touch /etc/postfix/virtual 解决了

以上是关于Postfix 无法找到 /etc/postfix/virtual 文件 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

postfix

/etc/postfix下 main.cf 配置文件详解

配置postfix和dovecot启用SSL以加密连接

postfix邮件服务

postfix 指定用户限制指定域名收发

Postfix 不发送邮件