cron デーモンは、独自のシェルで「root」ユーザーによって実行されます。デフォルトでは、cron は、スクリプトを実行しているユーザーに送信されるシステム メールを追加します (これが、システム メールで送信者が「root」と表示される理由です)。「ユーザー」は、crontab を設定するときにログインしたユーザーです。メールには、コンソールとエラー メッセージが含まれます。Ubuntu では、メール ファイルは で表示できます/var/mail/<username>
。
変数が設定されていない場合$TERM
、cron はtput: No value for $TERM and no -T specified
メール ファイルにエラーを出力します。これらのエラーを停止するには、crontab で(またはシステムで使用可能な別の端末 ( など)$TERM
を使用して) 変数を設定します。このコマンドは、現在のシステムの terminfo 定義を表示します。そのコマンドがない場合は、ほとんどの Linux システムで生データを表示できます。TERM=dumb
xterm
toe
/usr/share/terminfo
エラーを停止しても、コンソール メッセージが添付されたシステム メールを受信する場合があります。このファイルは時間の経過とともにログのようにいっぱいになるため、これらのメッセージを停止することをお勧めします。cron システム メールを停止するには、次MAILTO
を使用して変数を設定します。MAILTO=""
したがって、crontab は次のようになります。
MAILTO=""
TERM=xterm
* * * * * sh /path/to/myscript.sh
「crontab -l」を使用して、(サインインしているユーザーの) crontab を表示できます。