Ubuntu

了解 exim 配置文件

  • February 15, 2016

所以,我想了解這個 Exim 配置目錄發生了什麼。

在 /etc/exim4 中,有:

* exim4.conf.template
* update-exim4.conf.conf
* conf.d

conf.d 有一堆目錄和文件,每個里面都有一堆我發現真的不同的 if 語句。

例如:

maildir_home:
 debug_print = "T: maildir_home for $local_part@$domain"
 driver = appendfile
 .ifdef MAILDIR_HOME_MAILDIR_LOCATION
 directory = MAILDIR_HOME_MAILDIR_LOCATION
 .else
 directory = $home/Maildir
 .endif
 .ifdef MAILDIR_HOME_CREATE_DIRECTORY
 create_directory
 .endif
 .ifdef MAILDIR_HOME_CREATE_FILE

我的問題是,

  • CAPS 變數在哪裡定義
  • 我怎樣才能改變它們
  • 為什麼這些配置文件中有這麼多 if 語句?

這是 Debian/Ubuntu 管理 Exim4 的方式。您需要限制自己使用該dpkg-reconfigure exim4-config實用程序和它的配置文件update-exim4.conf.conf來管理它,或者,把它全部吹走並自己管理它。退房:

http://pkg-exim4.alioth.debian.org/README/README.Debian.html#completely-different-configuration

這是了解 Debian 的 exim 配置的簡單指南:

  1. conf.d有配置片段,由配置區域分隔。caps 中的變數通常在第一部分定義(如果我沒記錯的話,稱為 base)。
  2. exim4.conf.template通過在安裝時連接所有片段生成的,因此基本配置是相同的。
  3. 守護程序使用的配置文件是根據上述模板之一在不同的目錄中創建的。
  4. 每次使用update-exim4.conf它時,都會根據您在包配置詢問拆分配置時的回答生成一個新的配置文件。

如果使用拆分配置,則必須使用文件 atconf.d來管理 exim,否則使用exim4.conf.template.

我建議你使用該conf.d方案,在你習慣它之後,它更容易管理和添加/刪除東西。讀取所有目錄中的所有文件並將其與正在執行的配置文件進行比較(/var/lib/exim4/config.autogenerated但註釋是條帶化的,因此請重新執行update-exim4.conf --keepcomments,或者您也可以使用它exim -bP來查看正在執行的配置),您將變得非常容易。

大多數時候您不需要任何特殊配置,因此只需使用dpkg-reconfigureexim4-config` 並回答問題。

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