Email-Server

Courier 在沒有磁碟空間時重新下載郵件

  • December 30, 2015

背景:客戶報告重新下載郵件。郵件儲存在 /home 目錄中,在我檢查時沒有可用空間。(是的,我們有 Nagios,但客戶知道情況:>) Courier-imap{-ssl} 版本:4.8.0-3

問題:當沒有觀察到磁碟空間時,郵件客戶端如何開始重新下載該帳戶中的所有郵件?

據我所知,我發現這種情況和文件之間存在聯繫: courierimapuiddb 儲存在使用者的 Maildir 中。它是一個保存電子郵件 UIDS 的數據庫。但是,當沒有剩餘磁碟空間時,它怎麼可能被擦除呢?

如果您需要更多資訊來調查,請給我一個連結。

courierimapuiddb當 IMAP 登錄發生以反映 Maildir 內容的更改時,可能應該更新,但由於磁碟空間不足而損壞。

這種損壞可能會導致在下一次 IMAP 登錄發生時生成新的消息 UID,這反過來又會使所有現有消息對 IMAP 客戶端顯示為新消息。(我現在不知道 courier 的 UID 生成有多確定性。不太可能,但也許重建courierimapuiddb將始終將相同的 UID 分配給相同的消息……)

如果 IMAP 客戶端被配置為同步郵箱(即便於離線工作),那麼這些新的 UID 將觸發客戶端再次有效地下載所有現有消息。下載後,它們不應顯示為新消息,因為 IMAP 協議會保留伺服器端的讀取狀態。

引用自:https://serverfault.com/questions/745910