#!/bin/sh ########################################################################## # Mysql データベースと archives 下の全ファイルを一日一度バックアップする # バックアップしたファイルは gzip で圧縮し、一か月分前まで保存する # 圧縮ファイルを別パーティションへもコピーしておく ########################################################################## ################## # 変数設定 ################## #BASE DIR(ホームディレクトリなど、基準となるディレクトリ) BASEDIR=/home/hogehoge #BLOG のディレクトリ名(フルパス) BLOGDIR=$BASEDIR/public_html/blog # バックアップ対象ファイル($BLOGDIR/ からの相対パス スペース区切り) TRGT="archives/*/*jpg archives/*/*JPG *gif .htaccess" # mysql database の情報 DB=mtdb # DATABASE 名 DBUSR=hoge1 # DATABASE のユーザ名 DBPW=hoge2 # 上のパスワード # バックアップファイルを格納するディレクトリ # BKUPDIR の下に日付のディレクトリができて、その下にファイルを保存 BKUPDIR=$BASEDIR/mtbackup DATE=`date +%d` # データベースのバックアップファイル(dump file) DUMPF=mysql_mt.dmp # archives のバックアップファイル(gzipped tar ball) ARCF=archives.tar.gz ################## # バックアップ ################## # backup 'mt' database echo; echo "バックアップの開始. (`date`)" if [ ! -d $BKUPDIR/$DATE ]; then echo "$BKUPDIR/$DATE ディレクトリを作成します." mkdir -p $BKUPDIR/$DATE fi echo "mysqldump の開始. ($DB)" mysqldump $DB > $BKUPDIR/$DATE/$DUMPF -u $DBUSR --password=$DBPW --opt echo "gzip の開始. ($BKUPDIR/$DATE/$DUMPF)" gzip -f $BKUPDIR/$DATE/$DUMPF # backup archives directory cd $BLOGDIR echo "archives ディレクトリ のバックアップ開始." tar -zcvf $BKUPDIR/$DATE/$ARCF $TRGT echo "バックアップが正常終了しました. (`date`)"