You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Dovecot认证后因查询不存在的postfix_accounts.users表导致用户验证失败的问题求助

Dovecot认证后因查询不存在的postfix_accounts.users表导致用户验证失败的问题求助

我在Rocky Linux 9.1上搭建了一套邮件服务器,用到了Postfix、Dovecot和MariaDB,所有组件都是最新版本:postfix-3.5.9、dovecot-2.3.16、mariadb-10.5.22。数据库已经配置妥当,postfix_accounts库下面有三张表:accounts_table、alias_table、domains_table。

我已经在/etc/dovecot/conf.d/10-mail.conf里设置了mail_home = /var/vmail/%d/%n,也通过doveconf | grep mail验证过这个配置已经生效。重启Postfix和Dovecot服务后,看起来都运行正常,但用邮件客户端输入用户名密码登录时,总是提示认证失败。

查看Dovecot的实时日志(执行命令journalctl -u dovecot -f),发现了关键的错误信息:

auth-worker(1696): Debug: mysql(127.0.0.1): Finished query 'SELECT home, uid, gid FROM users WHERE username = 'xxxxx' AND domain = 'xxxxxxx.com.au'' in 0 msecs: Table 'postfix_accounts.users' doesn't exist
auth-worker(1696): Warning: sqlpool(mysql): Query failed, retrying: Table 'postfix_accounts.users' doesn't exist
auth: Debug: master userdb out: FAIL 2733244417

从日志能看出来,Dovecot的auth-worker在完成密码验证后,会去查询数据库里的users表,想获取用户的home目录、UID和GID,但我根本没建过这个表。我尝试找配置项,想让Dovecot不要用MySQL来查询userdb信息,或者修改查询语句指向我已有的accounts_table,但找了半天没头绪。

有没有同学遇到过同样的情况?求指点怎么解决!

备注:内容来源于stack exchange,提问作者cidy.long

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 12:48:09