====== dovecot 在 nfs 儲存環境設定 ======
這問題在我更換大硬碟之後將 mail 實際存放改到 nfs 磁碟, 就出現 imap 搬移信件到特定目錄 lock 失敗的困擾, 剛剛終於解決..
我的目的不是多台 mail server 共享讀取 nfs 的檔案資料, 只是一台安裝在 VMWare 內的 mail server 讀取實體主機上面硬碟, 當 mail server 掛點, 可以快速切換恢復上線的需求.
===== - 在 nfs 開放的 storage 設定 =====
[root@pd920 data]# cat /etc/exports
:
/data/maildata/ vm-mail(rw,no_root_squash,no_all_squash)
:
主要是去掉 sync 參數, 原本設定為 \\
/data/maildata/ vm-mail(rw,no_root_squash,no_all_squash,sync)
===== - 在 dovecot 的參數設定 =====
[root@vm-mail home]# cat /etc/dovecot.conf | grep -v "#"
:
protocols = imap pop3
mmap_disable = yes
lock_method = dotlock
mbox_read_locks = dotlock
mbox_write_locks = dotlock
mbox_lock_timeout = 30
protocol imap {
imap_client_workarounds = delay-newmail outlook-idle netscape-eoh
}
:
主要是將 lock 機制都改成 dotlock , 增加以下這兩個設定就能迅速開啟 nfs 目錄的信件\\
mbox_read_locks = dotlock \\
mbox_write_locks = dotlock \\
===== - 信件目錄權限 =====
後來發現搬移信件過程出現以下的錯誤訊息
cat /var/log/maillog
:
Apr 30 11:23:39 vm-mail dovecot: IMAP(jtsai): file_lock_dotlock() failed with mbox file /var/mail/jtsai: Permission denied
Apr 30 11:23:39 vm-mail dovecot: IMAP(jtsai): file_lock_dotlock() failed with mbox file /var/mail/jtsai: Permission denied
:
所以後來將存放 mail 的 /var/mail 開放可寫入權限來解決這問題
===== 參考資料網址 =====
* [[http://www.dovecot.org/list/dovecot/2008-February/029037.html|[Dovecot] nfs locking issues...]]
* http://wiki.dovecot.org/NFS
{{tag>郵件 nfs dovecot}}