Dovecot:自动删除我的邮件

Dovecot:自动删除我的邮件

我注意到 dovecot 会在 30 天后自动删除我的邮件。这对我来说是不希望出现的行为,但我不知道如何更改它。

我检查了自动删除配置,但是它已被禁用:

# doveconf | grep expunge
autoexpunge = 0
autoexpunge_max_mails = 0
autoexpunge = 0
autoexpunge_max_mails = 0
autoexpunge = 0
autoexpunge_max_mails = 0
autoexpunge = 0
autoexpunge_max_mails = 0
autoexpunge = 0
autoexpunge_max_mails = 0

我仔细查看了配置文件,但没有找到可以设置此类设置的地方。你能帮我找到电子邮件被删除的原因吗,以及如何解决此问题。

我使用 debian stretch 与 dovecot + postfix + postgres,大部分配置均采用默认。

更新:

我发现电子邮件消失的原因是/etc/cron.daily/sa-learn包含以下摘录的脚本:

MAILDIR=/home/mailboxes/maildir/
USERS=$(ls /home/mailboxes/maildir/ | grep -v $SPAMTRAP)
SPAM=".Junk"

# ...

echo Sync SA base >> $log 2>&1
sa-learn --sync >> $log 2>&1
if [ $? -eq 0 ]; then
        for user in $USERS ; do
                maildir=$MAILDIR/$user
                echo "deleting spam for $u older than $cleanafter" >> $log 2>&1
                find $maildir -type f -mtime +$cleanafter -exec rm {} \;
        done
else
        echo "sa-learn wasn't able to sync. Something is broken. Skipping spam cleanup"
fi

我不确定sa-learn脚本来自哪里,但看起来这种行为存在很大缺陷。

答案1

如果确实是 dovecot,您应该会在日志中看到这一点。否则,请检查它是否不是您的邮件客户端。提高日志的详细程度,并在您注意到邮件丢失时检查它们。以下是正确的文档:https://doc.dovecot.org/admin_manual/logging/

当然,不要犹豫,分享您的发现。

相关内容