シェルスクリプトで、1週間分のファイルをバックアップする
定期的に特定のファイルをバックアップする方法を紹介します。日時でcronで実行して7世代(1週間分)、特定のファイルを保存するシェルスクリプトです。動作確認はCentOSでおこなっています
流れとしては、バックアップするファイルに日付を付与したファイル名に保存します。
シェルスクリプトの最後に7日より古いファイルを削除するようにしているので、7世代分(1週間)は特定のファイルはバックアップされます
#!/bin/bash DATE=`date "+%Y%m%d"` BAKDIR=/var/tmp/DB_Backup # バックアップするDBの情報 DB_USER=wp-admin DB_PASS=31sde8sQL83c DB_NAME=wordpress # mysqldumpコマンドでDBをバックアップ mysqldump -u ${DB_USER} -p${DB_PASS} ${DB_NAME} > ${BAKDIR}/${DB_NAME}_${DATE}.db # 7日より古いファイルを削除 find ${BAKDIR} -type f -name "${DB_NAME}_*.db" -mtime +7 -exec rm -f {} \;
上記のスクリプトをCronで登録すれば、、7世代分(1週間)は特定のファイルはバックアップする事ができます
$ crontab -e 0 4 * * * /home/admin/script/db_backup.sh > /dev/null 2>&1
ディスカッション
コメント一覧
まだ、コメントがありません