Linux(CentOS7)にて、日次で作成されるログファイルを深夜に自動的に削除するようにしたいです。
■定期的に削除したいファイル
/var/lib/mysql/mysql-bin.00xxxx
(xxxxは連番、1日1ファイル出来るので、前日分を消したい。)
例)
2021/10/25 01:00 mysql-bin.001001(権限は、「-rw-rw----」)
2021/10/26 01:00 mysql-bin.001002(権限は、「-rw-rw----」)
2021/10/27 01:00 mysql-bin.001003(権限は、「-rw-rw----」)
2021/10/28 01:00 mysql-bin.001004(権限は、「-rw-rw----」)
10/28時点だと、このようになっています。このうち、上の3つを削除したいです。
■ログ削除用のshell
/root/bin/db_log_delete.sh(権限は、「-rwxr-xr-x」)
■中身
#!/bin/sh
# ログファイルのある場所へ移動
cd /var/lib/mysql/
# 削除の前に権限付与
find ./ -name ‘mysql-bin.*’ -mtime +0 -exec chmod 777 {} ;
# 最終更新が24時間前よりも過去で、ファイル名が’mysql-bin.’のログファイルを削除
find ./ -name ‘mysql-bin.’ -mtime +0 -exec rm -f {} ;
■crontab -e で設定
0 2 * * * /root/bin/db_log_delete.sh
毎日2時に、ログ削除用のshellを起動させる。
このようにしたのですが、
mysql-bin.001001 ~ mysql-bin.001003は消えていませんでした。
色々試してみたのですが上手くいかず、どこかにミスがあるのか分からない為、ご質問させて頂きました。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。