特にWEB上に公開するようなつもりは無くて、ローカルPCにApacheを入れてLANからのみ見れるようにしました。
1ヶ月間くらい使ってみて、問題がたまってきたので、バックアップを取りたいなと思いました。で、手軽にできるものが無いかなと考えていたところ、Dropboxを使うと簡単にできそうなのでやってみました。
やりたいこと
- ローカルPCが壊れても、復旧できるようにしたい。
- バックアップ対象は、DBのデータとPHPのソース。
- バックアップの頻度は、3日に1回程度。
やったこと
まず、Dropboxをインストール。すると、HOMEディレクトリにDropboxというディレクトリができる。
ここにファイルを入れるとDropboxのサーバーに自動で保存されるので、バックアップ完了という流れ。
あとは、自動でDBのdumpと、ソースコードをまとめてtar化するようなスクリプトを書けばいいだけ。
#!/bin/sh
data_backup_file="/home/kenjih/Dropbox/backup/procom/data/dump.sql"
src_backup_file="/home/kenjih/Dropbox/backup/procom/src/app.tar"
src_dir="/home/kenjih/dev/procom/src/app"
log="/home/kenjih/Dropbox/backup/procom/backup.log"
today=`date '+%s'`
updated_date=`stat -c '%y' ${data_backup_file}`
expire_date=`date -d "${updated_date} 3 days" '+%s'`
if [ $today -gt $expire_date ]; then
mysqldump -u usr -ppasswd procom >${data_backup_file}
tar -cf ${src_backup_file} ${src_dir} 2>/dev/null
echo "backup files saved at `date '+%Y/%m/%d %T'`." >>${log}
fi
で、cronを設定。
# m h dom mon dow command 0 23 * * * /home/kenjih/dev/procom/src/app/Console/backup.sh
0 件のコメント:
コメントを投稿