2

今日、ターミナルを使用して電子メールを送信するためにssmtpをインストールした後、私は30分ごとにこの電子メールを受け取りました。

from:    root <myuser>@gmail.com
to:  root
date:    Wed, Sep 12, 2012 at 2:09 PM
subject:     Cron <root@127> [ -x /usr/lib/php5/maxlifetime ] && [ -d /var/lib/php5 ] && find /var/lib/php5/ -depth -mindepth 1 -maxdepth 1 -type f -cmin +$(/usr/lib/php5/maxlifetime) ! -execdir fuser -s {} 2>/dev/null \; -delete
mailed-by:   gmail.com

content: PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php5/20090626/memcached.so' - /usr/lib/php5/20090626/memcached.so: cannot open shared object file: No such file or directory in Unknown on line 0

これらは、cronジョブが設定されているかのように、自分のコンピューターから送信されています。

しかし、計画されているcronジョブが見つかりません。

crontab -eルートアカウントと通常のアカウントでcrontabをチェックしましたが、両方とも空です(cronの使用法を説明するデフォルトのコメントを除く)。

このcronジョブが実行されている場所を確認する他の方法はありますか?

4

2 に答える 2

3

私のLinuxボックスでは、次のディレクトリすべてに、実行されるcronスクリプトを含めることができます。

/etc/cron.d/
/etc/cron.daily/
/etc/cron.hourly/  
/etc/cron.monthly/ 
/etc/cron.weekly/

具体的には、phpをインストールしたのと同じcronphpスクリプトをLinuxボックスにも見つけました。ここで見つけてください。

cat /etc/cron.d/php5

# /etc/cron.d/php5: crontab fragment for php5
#  This purges session files older than X, where X is defined in seconds
#  as the largest value of session.gc_maxlifetime from all your php.ini
#  files, or 24 minutes if not defined.  See /usr/lib/php5/maxlifetime

# Look for and purge old sessions every 30 minutes
09,39 *     * * *     root   [ -x /usr/lib/php5/maxlifetime ] && [ -d /var/lib/php5 ] && find /var/lib/php5/ -type f -cmin +$(/usr/lib/php5/maxlifetime) -print0 | xargs -n 200 -r -0 rm

phpスクリプトは電子メールを送信していません。そのphpスクリプトを実行するcronデーモンが電子メールを送信します。これは、スクリプトがエラーを出力し、cronがそのことを通知するためにrootに電子メールを送信するためです。ssmtpをインストールしているため、rootに送信されたメールが届きます。

cronがそのphpスクリプトに関する電子メールを送信しないようにする>/dev/null 2>&1には、phpスクリプト行の最後に追加します。

次に、cronを再起動します/etc/init.d/crond restart

これにより、cronが再びスパムを送信するのを防ぐことができます:-)。

于 2012-09-12T14:47:07.420 に答える
2

must linuxディストリビューションには、cronジョブが設定されている各ユーザーのファイルまたはディレクトリを含む/ var / spool/cronディレクトリがあります。私はそこから幻のcronジョブを探すことから始めます。

于 2012-09-12T14:41:33.597 に答える