====== 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}}