So entfernen Sie eine Cron-Aufgabe, die PHP-Sitzungen löscht

So entfernen Sie eine Cron-Aufgabe, die PHP-Sitzungen löscht

Es scheint, dass Linux Mint 19.3 Tricia Cinnamon jede halbe Stunde PHP-Sitzungsdateien löschen möchte.

Wie mache ich:

  • Entfernen Sie diese Aufgabe aus dem Bewusstsein des Planers und
  • Hierzu ist kein Neustart des Computers erforderlich.

Ich habe die Crontab-Datei unter gefunden /etc/cron.d/php.

Ich habe die Datei bearbeitet, indem ich die entsprechende Zeile zu einem Kommentar gemacht habe. Ich hatte erwartet, dass jetzt, da es in dieser Crontab-Datei keine Informationen gibt, die festlegen, wann die Aufgabe ausgelöst werden soll, nicht einmal der Scheduler(?) davon Kenntnis nehmen würde.

# 09,39 *     * * *     root   [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi

Der Cron-Prozess(?) hat den neuen Dateizeitstempel bemerkt und die Datei neu geladen (wie im Syslog angezeigt).

Der Scheduler loggt sich aber weiterhin ins Syslog ein.

Mar  6 01:09:07 BrownBunny systemd[1]: Starting Clean php session files...
Mar  6 01:09:08 BrownBunny systemd[1]: Started Clean php session files.

(ich weiß nicht, wo ich nach diesen Sätzen suchen soll).

Ich habe den Befehl ausprobiert:

sudo service cron reload

Die PHP-Sessiondateien wurden dennoch bereinigt.

Ich kann die PHP-Crontab-Datei aus verschieben cron.d. Würde das angesichts der oben genannten Punkte überhaupt funktionieren?

Hinweise: Ich poste diese Frageaus den LinuxMint-Foren:

Hinweis: Diese Frage wurde von Ask Ubuntu übernommen, da sie dort der Ansicht ist, dass sie nicht wirklich auf Ubuntu zutrifft.

Antwort1

Die phpsessioncleanvon Upstream-Debian bereitgestellten Skripte verwenden entweder cron, wenn es nicht systemdvorhanden ist, oder sie werden für die Planung verwendet, systemdwenn es verfügbar ist.

Dies wird im Cronjob-Test deutlich if [ ! -d /run/systemd/system ], der prüft, ob systemdauf diesem System initialisiert wurde.

Wenn systemdverfügbar, verfügt es zusätzlich zu einer Timer-Einheit phpsessionclean() über eine Service-Einheit ( ). Durch Anhalten und Deaktivieren beider sollte die Ausführung der geplanten Aufgabe innerhalb von gestoppt werden :phpsessionclean.servicephpsessionclean.timersystemd

systemctl stop phpsessionclean.service
systemctl disable phpsessionclean.service
systemctl stop phpsessionclean.timer
systemctl disable phpsessionclean.timer

verwandte Informationen