매주 일요일 아침에 Apache가 실행을 중지하는 이유를 확인하십시오.


0

우분투 16.04.4 LTS에 Apache를 설치했습니다.

어떤 이유로, 매주 일요일 아침 거의 같은 시간에 Apache가 실행을 중지합니다.

그것이 멈 추면, 나는 달려 가서 systemctl status apache2본다 :

Mar 04 06:25:24 xxxxxx apache2[11178]:  * Stopping Apache httpd web server apache2

그래서 어떻게 든 Apache가 중지되었습니다. 중지되면에 아무것도 없습니다 /var/log/apache2/error.log. Apache를 다시 시작하면 다음이 표시됩니다.

[Sun Mar 04 09:44:10.875444 2018] [core:warn] [pid 22442:tid 140355746498432] AH00098: pid file /var/run/apache2/apache2.pid overwritten -- Unclean shutdown of previous Apache run?

에서 /var/log/syslog아파치는 (또한 ProFTPD를) 다시로드 한 후에 중지 된 것 같다 06:25:24:

Mar  4 06:25:11 xxxxxx systemd[1]: Reloading LSB: Apache2 web server.
Mar  4 06:25:11 xxxxxx apache2[11014]:  * Reloading Apache httpd web server apache2
Mar  4 06:25:11 xxxxxx apache2[11014]:  *
Mar  4 06:25:11 xxxxxx systemd[1]: Reloaded LSB: Apache2 web server.
Mar  4 06:25:18 xxxxxx systemd[1]: Stopping LSB: Starts ProFTPD daemon...
Mar  4 06:25:18 xxxxxx proftpd[11083]:  * Stopping ftp server proftpd
Mar  4 06:25:18 xxxxxx proftpd[11083]:    ...done.
Mar  4 06:25:18 xxxxxx systemd[1]: Stopped LSB: Starts ProFTPD daemon.
Mar  4 06:25:18 xxxxxx systemd[1]: Starting LSB: Starts ProFTPD daemon...
Mar  4 06:25:18 xxxxxx proftpd[11094]:  * Starting ftp server proftpd
Mar  4 06:25:18 xxxxxx proftpd[11094]: 2018-03-04 06:25:18,666 xxxxxx proftpd[11104]: mod_dso/0.5: module 'mod_tls.c' already loaded
Mar  4 06:25:18 xxxxxx proftpd[11094]: 2018-03-04 06:25:18,667 xxxxxx proftpd[11104]: mod_dso/0.5: module 'mod_sftp.c' already loaded
Mar  4 06:25:19 xxxxxx proftpd[11094]:    ...done.
Mar  4 06:25:19 xxxxxx systemd[1]: Started LSB: Starts ProFTPD daemon.
Mar  4 06:25:24 xxxxxx apache2[11178]:  * Stopping Apache httpd web server apache2
Mar  4 06:25:24 xxxxxx apache2[11178]:  *

Apache가 중지되는 이유 또는 Apache를 중지하는 프로세스 (어떤 이유로 인해)가 다시 발생하지 않도록하려면 어떻게해야합니까?


일요일 아침에 실행되는 것이 있습니까 (Crontab? DB 테이블 정리?)? 일반적으로 사용 가능한 메모리가 얼마나됩니까?
xenoid

일반적으로 약 4GB의 메모리가 없습니다. 일요일을 위해 특별히 구성된 크론 작업이 없습니다.
Werner

/ var / log / syslog에 이상한 것이 있습니까?
pim

/var/log/syslog항목 을 추가하여 질문을 편집하고 있습니다 .
Werner

그 동안 스크립트가 실행 중인지 확인하고 이메일을 보내지 않은 경우 서비스를 시작하는 스크립트를 작성하십시오. 같은 것을 실행하고 for user in $(cut -f1 -d: /etc/passwd); do crontab -u $user -l; done거기에서 무엇을 볼 수 있습니다. 또한 살펴보기systemctl list-timers --all
Pimp Juice IT

답변:


1

이 문제는 logrotate로테이션을 돌릴 때 Apache를 중지시키는 로 인해 발생했습니다 .

편집하여 /etc/logrotate.d/apache2로 변경 reload하여 문제를 해결했습니다 graceful.

기발한:

postrotate
            if /etc/init.d/apache2 status > /dev/null ; then \
                /etc/init.d/apache2 reload > /dev/null; \
            fi;
endscript

편집 :

postrotate
            if /etc/init.d/apache2 status > /dev/null ; then \
                /etc/init.d/apache2 graceful > /dev/null; \
            fi;
endscript
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.