在現有的 dovecot 安裝中,有許多使用區域字元的預先存在的資料夾,我想將 m-UTF7 ( .&AMk-l&AOk-ments envoy&AOk-s
) 資料夾名稱變更為 UTF8 ( .Éléments envoyés
)。
除其他原因外,我的主要原因是像上面這樣的資料夾在 shell 中為我打破了 TAB 完成導航。而且替換名稱在視覺上解析起來更加容易且令人愉悅。
dovecot 中是否有一個促進選項變更的整合機制?喜歡:
if maildirCharSetOption==UTF8 and CurrentFolder.instr('&') then
SilentlyRenameFolderToUTF8(Currentfolder)`
或類似的?
或是推薦的方式(也是唯一的方式):
- 以某種方式建立受影響的資料夾列表
- 使用一些腳本、awk 和/或 sed 來
- 產生包含大量
mv
命令的 shell 批次命令文件 - 檢查腳本輸出批次檔的正確性
- 關閉鴿子,後綴,
- 重新運行腳本以獲取 up2date 資料夾清單並將其處理為
mv
命令 - 運行生成的批次腳本文件
- 將 dovecot 配置變更為“mail_location =maildir:/var/mail/%u:UTF-8=什麼」
- 再次啟動 dovecot&postfix
從文件中不清楚我是否應該使用UTF-8=yes
or true
or 1
,或者只是UTF-8
不使用=<value>
。
我對如何完成上述工作有一個可行的想法,但想知道是否有更好的方法,或者來自之前繼承 m-UTF7 安裝的人的完整腳本,並希望分享它。
我認為,可能有一種方法可以暫時暫停 dovecot 交付,而不是停止 dovecot、postfix 等doveadm
。
看來,m-UTF7 是預設的。這是為什麼?或者,是否有理由反對使用 UTF-8 作為資料夾名稱?
答案1
UTF-8是僅鍵選項,即:
mail_home = /home/data/%d/%n
mail_location = maildir:~/mail:LAYOUT=fs:DIRNAME=_m_a_i_l_:UTF-8
看:
https://doc.dovecot.org/configuration_manual/mail_location/ https://github.com/dovecot/core/blob/master/src/lib-storage/mailbox-list.c#L317