クローンを実行する方法

クローンを実行する方法

cron私はこのコマンドを実行するように設定しようとしていますmysqlauditgrep(MySQL 5.6ユーティリティパッケージです)。このmysqlauditgrepコマンドはbashにあります。

私が実行したいコマンドは次のとおりです。

mysqlauditgrep --format=GRID /var/lib/mysql/audit.log

このコマンドを使用すると、mysqlによって生成された監査ログをグリッド形式で表示できます。 mysqlシェルでは実行されません。

そのため、Cronをインストールし、次のように設定してcrontabを設定しました。

00 11 * * fri root usr/bin/mysqlauditgrep mysqlauditgrep --format=GRID /var/lib/mysql/audit.log

crontabファイルに入った後、/sbin/service crond startを実行しました。

しかし、その行動が起こったかどうかはわかりません。

答え1

crontab 行は次のようになります。

00 11 * * fri /usr/bin/mysqlauditgrep --format=GRID /var/lib/mysql/audit.log

man 5 crontabcrontabファイルの構文を確認するには、入力してください。

答え2

cronエントリに含まれる行は減りますが、呼び出すとroot現在のユーザーとして編集が開始さcrontab -eれるため、必要ありません。すべてのcronエントリは下にあるので、エントリを確認できます。また、cronジョブに関する特定のメッセージを含むcronログを確認できます。したがって、cron が操作を実行したことを確認できます。もちろん、スクリプトが問題ない場合は、cron エントリを記録する最善の方法は、MTA の実行中に一部のスパムを避けるためにエントリをリダイレクトすることです。最後の項目は、スクリプト自体にロギングを追加することです。これにより、すべてが正常に動作していると100%確信できます。cronroot/var/spool/cron/<user>/var/log/cron>/dev/null

デフォルトでは、cronはbashからstderrとstdoutをリダイレクトするショートカットとしては使用されませんが、sh解決策はcrontabにenv varibaleを追加するか、crontab行のスクリプトの前にenv varibaleを追加することです。 crontabは現在1つのシェルを呼び出します。リクエストを同時に表示できないため、可能であればメールプロキシが1つの解決策になる可能性があります。bashcron &>shSHELL=/bin/bashbash -c

関連情報