Amavis

為什麼 Amavis 在啟動時給出超出重試限制/文件存在錯誤?

  • March 22, 2021

我注意到我的郵件伺服器出現了一些service temporarily unavailable錯誤並且無法發送電子郵件,所以在深入研究後我發現原因是 Postfix 無法連接到 Amavis。

當我查看 Amavis 的日誌記錄(我在 中找到/var/log/mail.warn)時,我發現了這一點:

[snip] (!!)TROUBLE in pre_loop_hook: db_init: BDB no dbS: BDB0002 __fop_file_setup:  Retry limit (100) exceeded, File exists. at (eval 91) line 318.
[snip] (!)_DIE: Suicide () TROUBLE in pre_loop_hook: db_init: BDB no dbS: BDB0002 __fop_file_setup:  Retry limit (100) exceeded, File exists. at (eval 91) line 318.

為什麼會發生這種情況,我該如何解決?

我正在執行 Debian,我相信在這開始發生之前不久我已經更新了軟體包並重新啟動了,所以也許更新破壞了一些東西。

我正在自我回答這個問題,因為我找到了解決方案,但我仍然不知道為什麼會發生這種情況,所以如果其他人對此有任何見解,我很樂意聽到。


/var/lib/amavis/db當我嘗試手動執行時,我看到了一個參考amavis-new,因此我將該文件夾移至db.bak(在 Amavis 抱怨該文件夾不存在後,創建了一個具有相同amavis:amavis 750權限的新文件夾)。在那之後,Amavis 能夠成功啟動,我的電子郵件又開始投遞了。

如前所述,我仍然不確定為什麼會發生這種情況,儘管它可能與問題中提到的包更新有關。

我也不知道那個 Amavis 數據庫中是否有什麼重要的東西,因此我把它移到一邊,而不是完全刪除它。

引用自:https://unix.stackexchange.com/questions/597248