在 Linux 中尋找正在關閉或終止程式或服務的進程

在 Linux 中尋找正在關閉或終止程式或服務的進程

在我的情況下,Postfix 神秘地自行關閉: postfix/postfix-script 停止 Postfix 郵件系統

在新的 Ubuntu 18.04 上,當我運行時

service postfix start

它啟動了,但幾分鐘後就關閉了。

May 22 09:10:15 coenraad-Latitude-E5550 postfix/postfix-script[12849]: starting the Postfix mail system
May 22 09:10:15 coenraad-Latitude-E5550 postfix/master[12851]: daemon started -- version 3.3.0, configuration /etc/postfix
May 22 09:11:41 coenraad-Latitude-E5550 postfix/postfix-script[12960]: stopping the Postfix mail system
May 22 09:11:41 coenraad-Latitude-E5550 postfix/master[12851]: terminating on signal 15
May 22 09:11:53 coenraad-Latitude-E5550 postfix/postfix-script[13167]: starting the Postfix mail system
May 22 09:11:53 coenraad-Latitude-E5550 postfix/master[13169]: daemon started -- version 3.3.0, configuration /etc/postfix
May 22 09:14:12 coenraad-Latitude-E5550 postfix/postfix-script[14044]: stopping the Postfix mail system
May 22 09:14:12 coenraad-Latitude-E5550 postfix/master[13169]: terminating on signal 15

我已啟用該服務:

sudo update-rc.d postfix enable

有足夠的可用內存,並且任何日誌中似乎都沒有其他相關內容。

答案1

起初我以為我以某種方式設法安裝了 postfix 而沒有配置它。問題似乎可以透過以下方式解決:

dpkg-reconfigure postfix

我用命令解決了這個問題:

lastcomm --debug

每次關閉後,我發現:

CURRENT REC: systemd.postins |v3|     0.00|     0.00|    21.00|     0|     0|  4628.00|     0.00|   13513|   13305|     |       0|pts/11  |Wed May 22 09:13:02 2019
systemd.postins        root     pts/11     0.00 secs Wed May 22 09:13
---------------------------------------------------------------------------
CURRENT REC: systemctl       |v3|     1.00|     0.00|    21.00|     0|     0| 73472.00|     0.00|   13514|   13513|S    |       0|pts/11  |Wed May 22 09:13:02 2019
systemctl        S     root     pts/11     0.01 secs Wed May 22 09:13
---------------------------------------------------------------------------
CURRENT REC: (sd-executor)   |v3|     0.00|     0.00|     1.00|     0|     0|226496.00|     0.00|   13516|       1|SF   |       0|__      |Wed May 22 09:13:02 2019
(sd-executor)    SF    root     __         0.00 secs Wed May 22 09:13
---------------------------------------------------------------------------
CURRENT REC: systemd-sysv-ge |v3|     0.00|     0.00|     1.00|     0|     0| 61832.00|     0.00|   13532|   13516|S    |       0|__      |Wed May 22 09:13:02 2019
systemd-sysv-ge  S     root     __         0.00 secs Wed May 22 09:13
---------------------------------------------------------------------------
CURRENT REC: postfix-instanc |v3|     0.00|     0.00|     1.00|     0|     0|  4628.00|     0.00|   13519|   13516|S    |       0|__      |Wed May 22 09:13:02 2019
postfix-instanc  S     root     __         0.00 secs Wed May 22 09:13
---------------------------------------------------------------------------
CURRENT REC: postconf        |v3|     0.00|     0.00|     0.00|     0|     0| 76928.00|     0.00|   13535|   13519|     |       0|__      |Wed May 22 09:13:02 2019
postconf               root     __         0.00 secs Wed May 22 09:13
---------------------------------------------------------------------------
CURRENT REC: systemd-rc-loca |v3|     0.00|     0.00|     1.00|     0|     0| 61816.00|     0.00|   13529|   13516|S    |       0|__      |Wed May 22 09:13:02 2019
systemd-rc-loca  S     root     __         0.00 secs Wed May 22 09:13

這使得它看起來像是試圖在後台進行一些互動式配置 - 如果它不在互動式會話中,它可能被編程為中止。手動配置似乎打開了必要的開關。

故事還在繼續……我檢查了不同用戶的 cron、auditd 日誌、OOM 殺手的系統日誌,我只是找不到罪魁禍首。

最終讓我免於瘋狂的是 Ciro Santilli 的回答:https://superuser.com/questions/222912/how-can-i-log-all-process-launches-in-linux- 我監視它直到它停止,它記錄了以下內容:

20119   2102 /etc/init.d/postfix stop

進而

$ ps auxf|grep 2102
root      2102  0.0  0.0  40820  3940 ?        S    May28   2:58 /usr/bin/monit -c /etc/monit/monitrc

我們就有了。罪魁禍首就是莫尼特。

相關內容