web-dev-qa-db-ja.com

PHPセッションを削除するcronタスクを削除する方法

Linux Mint 19.3 Tricia Cinnamonは30分ごとにPHPセッションファイルを消去したいと考えています。

方法:

  • スケジューラーの認識からこのタスクを削除し、そして
  • そうするためにコンピュータを再起動する必要はありません。

Crontabファイルは/etc/cron.d/phpにあります。

関連する行をコメントにしてファイルを編集しました。このcrontabファイルには、いつタスクをトリガーする必要があるかを確定する情報がなく、スケジューラー(?)さえもそれを認識し続けることがないはずです。

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

Cronプロセス(?)は、新しいファイルのタイムスタンプに気付き、ファイルをリロードしました(syslogに表示)。

しかし、スケジューラはまだsyslogにログインしています。

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.

(これらのフレーズを探す場所がわかりません)。

私はコマンドを試しました:

Sudo service cron reload

PHPセッションファイルは引き続きクリーンアップされました。

PHPのcrontabファイルをcron.dから移動できます。上記を考慮すると、これでうまくいくでしょうか?

注:私はこの質問をクロスポストしています LinuxMintフォーラムから

注:この質問は、Ubuntuには実際には適用されないと考えているため、Ask Ubuntuからコピーされています。

2
bsmither

上流のDebianが提供するphpsessioncleanスクリプトは、systemdが存在しない場合はcronを使用するか、使用可能な場合はsystemdを使用してスケジューリングします。

これはcronjobテストで明らかですif [ ! -d /run/systemd/system ]は、このシステムでsystemdが初期化されているかどうかを確認します。

systemdが使用可能な場合、phpsessioncleanにはサービスユニット(phpsessionclean.service)タイマーユニット(phpsessionclean.timer)。これらの両方を停止して無効にすると、スケジュールされたタスクがsystemd内で実行されなくなります。

systemctl stop phpsessionclean.service
systemctl disable phpsessionclean.service
systemctl stop phpsessionclean.timer
systemctl disable phpsessionclean.timer
2
GracefulRestart