古いバックアップデータを使わないのにいつまでも大事にしているとディスク容量を圧迫するしSSDにもよくありません(たぶん)
必要以上にたまったバックアップデータを自動で削除します
短い記事になりますが、今回は悪魔のコマンドも含みますのでタイプミス等ないように慎重に進みます;
バックアップを保存しているサーバをサーバBとします
サーバB~$ vi ~/commands/wp_cleanup_backups.sh
#!/bin/bash
# バックアップの格納ディレクトリ(userはあなたのユーザー名)
BACKUP_DIR=/home/user/backup/wordpress
# 何日以上前のバックアップを削除するか指定
DAYS_OLD=15
# DAYS_OLDで指定した以上前のバックアップを削除
find "$BACKUP_DIR" -maxdepth 1 -type d -mtime +$DAYS_OLD -exec rm -rf {} +
バックアップ格納ディレクトリ内($BACKUP_DIR)で15日以上前の(-mtime +$DAYS_OLD)ディレクトリを(-type d)一階層だけ(-maxdepth 1)検索して 悪魔のコマンド(rm -rf{} +)にまとめて放り込んで削除します
シェルスクリプトを実行可能にします
サーバB~$ chmod +x ~/commands/wp_cleanup_backups.sh
cronに登録して自動化します
サーバB~$ vi ~/cron/cron.txt
0 3 * * * /home/user/commands/wp_cleanup_backups.sh
# userはあなたのユーザー名
サーバB~$ crontab ~/cron/cron.txt
これで毎日午前3時にバックアップ格納ディレクトリを掃除します
前の記事と併用するとバックアップデータを2週間で4つ保持することになります
悪魔のコマンドが怖ければ、ls を使ってテストしてもいいかもですね
find "$BACKUP_DIR" -maxdepth 1 -type d -mtime +$DAYS_OLD -exec ls {} +
これだと、削除対象のディレクトリの中を表示させるだけになります
次回は MariaDB にある書き溜めた記事をバックアップします
次へ
コメント