Cron-Jobs funktionieren nicht mehr

Cron-Jobs funktionieren nicht mehr

Cron-Jobs funktionierten in der Vergangenheit monatelang, aber vor kurzem hatte ich eine hohe Serverlast und jetzt führen Cron-Jobs meine PHP-Dateien nicht mehr aus (dieselben, die vorher funktionierten). Wenn ich das Cron-Protokoll überprüfe, sehe ich Folgendes, was meiner Meinung nach etwas mit dem Problem zu tun hat:

(CRON) EXEC FAILED (/usr/sbin/sendmail): Resource temporarily unavailable

Was muss ich tun, um dieses Problem zu beheben? Ich verwende CentOS 7.

BEARBEITEN:Ich habe dies als beantwortet markiert, da ich dachte, dass ein hängender Prozess dieses Problem verursacht. Heute bin ich aufgewacht und das gleiche Problem ist aufgetreten. Ich frage mich, was die Ursache dafür sein könnte.

Im Cron-Protokoll sehe ich:

Oct 11 05:01:01 run-parts(/etc/cron.hourly)[25431]: starting 0anacron
Oct 11 05:01:01 run-parts(/etc/cron.hourly)[25444]: finished 0anacron
Oct 11 05:01:01 run-parts(/etc/cron.hourly)[25431]: starting 0yum-hourly.cron
Oct 11 05:01:01 run-parts(/etc/cron.hourly)[25450]: finished 0yum-hourly.cron
Oct 11 05:01:01 CROND[25434]: (CRON) EXEC FAILED (/usr/sbin/sendmail): Resource temporarily unavailable
Oct 11 05:01:01 CROND[25429]: (apache) MAIL (mailed 71 bytes of output but got status 0x0001

AKTUALISIEREN:

Mir sind zwei Dinge aufgefallen, die in meinem E-Mail-Protokoll seltsam aussehen.

Oct  8 14:01:39 postfix/local[12886]: 5180C2D098A5: to=<[email protected]>, orig_to=<N>, relay=local, delay=1.1, delays=0.07/0.01/0/1, dsn=5.1.1, status=bounced (unknown user: "n")
Oct  9 04:19:10 postfix/local[12452]: C8F762D012D6: to=<[email protected]>, orig_to=<apache>, relay=local, delay=0.22, delays=0.13/0.02/0/0.07, dsn=5.2.0, status=bounced (cannot update mailbox /var/mail/root for user root. cannot open file: Is a directory)

Antwort1

(CRON) EXEC FAILED (/usr/sbin/sendmail): Ressource vorübergehend nicht verfügbar

Dies ist kein Cron-Problem. von exec(3):

 The execl(), execle(), execlp(), execvp() and execvP() functions may fail
 and set errno for any of the errors specified for the library functions
 execve(2) and malloc(3).

Aus execve(2):

 [ENOMEM]           The new process requires more virtual memory than is
                    allowed by the imposed maximum (getrlimit(2)).

Von malloc(3):

   ENOMEM
       Memory allocation error.

Auf den meisten UNIX-Systemen kann jeder außer Kontrolle geratene Prozess so viele Ressourcen verbrauchen, dass auch die normale Zuweisung des virtuellen Speichers durch nicht außer Kontrolle geratene Prozesse fehlschlägt.

Dies ist kein Cron-Problem, sondern ein Problem der Systemressourcen, der Systemauslastung oder der Systemoptimierung.

verwandte Informationen