在新的 CentOS7 服务器上,我遇到了一个问题,即每天晚上 httpd.service 都会重新加载。有时,大约在同一时间,它会被终止。
systemctl 状态 httpd:
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
Active: active (running) since Sun 2017-04-09 12:54:33 CEST; 2 days ago
Docs: man:httpd(8)
man:apachectl(8)
Main PID: 27968 (/usr/sbin/httpd)
Status: "Total requests: 0; Current requests/sec: 0; Current traffic: 0 B/sec"
CGroup: /system.slice/httpd.service
├─ 897 /usr/sbin/httpd -DFOREGROUND
├─ 898 /usr/sbin/httpd -DFOREGROUND
├─ 900 /usr/sbin/httpd -DFOREGROUND
├─ 901 /usr/sbin/httpd -DFOREGROUND
├─ 907 /usr/sbin/httpd -DFOREGROUND
├─ 992 /usr/sbin/httpd -DFOREGROUND
├─ 1051 /usr/sbin/httpd -DFOREGROUND
├─ 4168 /usr/sbin/httpd -DFOREGROUND
├─ 6680 /usr/sbin/httpd -DFOREGROUND
├─19528 /usr/sbin/httpd -DFOREGROUND
├─23513 /usr/sbin/httpd -DFOREGROUND
├─24482 /usr/sbin/httpd -DFOREGROUND
└─27968 /usr/sbin/httpd -DFOREGROUND
Apr 09 12:54:32 server445 systemd[1]: Starting The Apache HTTP Server...
Apr 09 12:54:33 server445 systemd[1]: Started The Apache HTTP Server.
Apr 10 03:47:49 server445 systemd[1]: Reloaded The Apache HTTP Server.
Apr 11 03:17:44 server445 systemd[1]: Reloaded The Apache HTTP Server.
journalctl _SYSTEMD_UNIT=httpd.service:
-- Logs begin at Thu 2015-05-21 16:37:24 CEST, end at Tue 2017-04-11 15:37:27 CEST. --
Mar 26 03:38:39 server445 kill[27169]: kill: cannot find process ""
Apr 03 03:41:01 server445 kill[28645]: kill: cannot find process ""
Apr 09 03:35:21 server445 kill[23157]: kill: cannot find process ""
是否有可能更深入地研究,
- 是什么导致了重新加载?
- 是什么导致了死亡?
重新加载和终止总是发生在晚上 3:17 到 3:47 之间,所以我猜它们之间有某种联系。也许是某个 cron 作业有时在工作(==重新加载),但有时失败(==终止)?
自从systemctl 状态 httpd和journalctl _SYSTEMD_UNIT=httpd.service不显示任何详细信息,我该怎么办?
答案1
如果您的内核正在杀死它,它会将所有信息转储到 dmesg 中。在您的系统上执行dmesg
以查看是什么在执行此操作。
如果它不在那里,很有可能另一个服务正在重新启动该服务以便您执行某些特定操作。例如编排包、cron 等。