我已經從原始碼編譯了 EXIM,並試圖讓它作為 Centos 7 上的服務運行exim.service
。 EXIM 進程在我運行時啟動systemctl start exim
,但 systemd 認為它超時了。它確實正確寫入了 PID 檔案。每個人都具有 PID 檔案的讀取權限。
謝謝!
這是 exim.service 檔案:
[Unit]
Description=Exim
[Service]
Type=forking
PIDFile=/apps/exim/spool/exim-daemon.pid
ExecStart=/apps/exim/exim -bd -q15m
[Install]
WantedBy=multi-user.target
這是輸出systemctl status exim
:
Jan 08 10:54:49 smtp2 systemd[1]: exim.service operation timed out. Terminating.
Jan 08 10:54:49 smtp2 systemd[1]: Failed to start Exim.
答案1
也許 exim 沒有守護程式?如果是這樣的話,那就需要Type=simple
。檢查一下。
答案2
exim.service
這可能有幫助,也可能沒有幫助,但這是從儲存庫安裝 Exim 時 CentOS 7 的標準檔案;
[Unit]
Description=Exim Mail Transport Agent
After=network.target
Conflicts=sendmail.service postfix.service
[Service]
PrivateTmp=true
Environment=QUEUE=1h
EnvironmentFile=-/etc/sysconfig/exim
ExecStartPre=-/usr/libexec/exim-gen-cert
ExecStart=/usr/sbin/exim -bd -q${QUEUE}
[Install]
WantedBy=multi-user.target
這對我來說很好,正如我所說,只是從存儲庫安裝。它看起來已經和你的幾乎一樣了,但我可以建議複製它並嘗試用它來啟動 exim 看看是否有效。如果沒有,那麼可能是您安裝的 exim 沒有如預期運作?