まず、CentOSを使用しています
[root@a etc]# cat system-release
CentOS release 6.5 (Final)
[root@a cron.daily]# ps -ef | grep cron
root 982 1 0 Jun14 ? 00:01:15 crond
root 5692 5441 0 00:49 pts/0 00:00:00 grep cron
[root@a cron.daily]#
リソースが不足しているので、古いログファイルを削除したいと思います。この場合、サイズがほぼ100MBを超える古い安全なログを削除したいので、root
に以下のcrontabエントリを指定しましたユーザー。
[root@a etc]# crontab -l
0 1 * * * find /var/log -name "secure-*" -mtime +5 -exec rm {} \;
[root@a etc]#
非常に数日後、私はこのcrontabエントリが機能しないことを知りましたが、それでも古いファイルが表示されます。
[root@a log]# find /var/log -name "secure-*"
/var/log/secure-20141214
/var/log/secure-20141107
/var/log/secure-20141130
/var/log/secure-20141221
[root@a log]#
後で私は/etc/crontab.dailyディレクトリの下のcrontabログを検索しようとしましたが、関連する結果は見つかりませんでした。 crontabログの場所とcrontabが正常に実行されているかどうかを確認する方法は?
CentOS 6のCronログは、デフォルトで/var/log/cron
にあります。これは、結果や終了ステータスではなく、コマンドの実行のみをログに記録します。実行されたコマンドの出力は、デフォルトでユーザーのメール(この場合はrootのメール)に送られます。 crontab内のMAILTO変数で代替メールを指定できます。
/ var/log/secureログの削除をすでに処理しているカスタムlogrotate
ではなく、_cron
ルールの調整を検討する必要があります。