在 CentOS release 6.6 上啓動sendmail服務時發現服務啓動過程很是慢,基本上要耗費3分多鐘。有點納悶:什麼緣由致使sendmail啓動這麼慢?搜索了這方面的一些資料,結合本身的理解,把它梳理一遍。權當筆記。 html
[root@MySQL-T01 bin]# service sendmail stop
Shutting down sm-client: [ OK ]
Shutting down sendmail: [ OK ]
[root@MySQL-T01 bin]# date
Wed Aug 5 09:11:00 UTC 2015
[root@MySQL-T01 bin]# service sendmail start
Starting sendmail: [ OK ]
Starting sm-client: [ OK ]
[root@MySQL-T01 bin]# date
Wed Aug 5 09:14:53 UTC 2015
如上所示,sendmail服務的啓動整整須要花費3分多鐘。由於Starting sendmail、Starting sm-client這兩步check須要查詢你設置的主機名的A記錄或反向域名記錄,因爲全球9臺DNS根系統都在美國,這個時候會去查詢本機主機名對應的dns A記錄。查詢可能會很是的慢. linux
一般的域名解析是指A記錄解析,即主機記錄解析,就是指把域名解析到虛擬主機的過程;又稱IP指向,用戶能夠在此設置子域名並指向到本身的目標主機地址上,從而實現經過域名找到服務器。 服務器
解決方法 app
讓sendmial繞過查詢遠程主機,這裏給出一種最簡單的方法,給主機設置一個別名。 dom
/etc/hosts原始配置 spa
[root@MySQL-T01 bin]# more /etc/hosts
10.20.251.45 MySQL-T01 localhost
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
/etc/hosts修改配置 code
[root@MySQL-T01 bin]# vi /etc/hosts
10.20.251.45 MySQL-T01 localhost
127.0.0.1 localhost localhost.localdomain MySQL-T01
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
"/etc/hosts" 3L, 170C written
修改完成後,關閉sendmail服務,啓動sendmail服務很是快,只要一兩秒的樣子。htm
[root@MySQL-T01 bin]# service sendmail stop
Shutting down sm-client: [ OK ]
Shutting down sendmail: [ OK ]
[root@MySQL-T01 bin]# service sendmail start
Starting sendmail: [ OK ]
Starting sm-client: [ OK ]
[root@MySQL-T01 bin]#
參考資料: blog