#!/bin/sh # # Redmine DB backup script # FILE_DIR=/app/redmine/files/ DMP_DIR=/var/tmp/ MNT_DIR=/mnt/rm/ BAK_DIR="//10.0.0.0/windows/Backup/dir/rm" PERIOD=5 DB_USER=dbuser DB_PASS=xxxxxx USER_NAME=username PASSWD=xxxxxxx EXIT_STATUS=0 FILE_NAME=`date +%y%m%d` RM_FILE_NAME=`date --date "$PERIOD days ago" +%y%m%d` DMP_FILE=$DMP_DIR/Redmine_DB_$FILE_NAME.sql.gz ARC_FILE=$DMP_DIR/Redmine_FILE_$FILE_NAME.tar.gz RM_DMP_FILE=$MNT_DIR/Redmine_DB_$RM_FILE_NAME.sql.gz RM_ARC_FILE=$MNT_DIR/Redmine_FILE_$RM_FILE_NAME.tar.gz # ファイルサーバへマウント mount -t cifs -o username=$USER_NAME,password=$PASSWD $BAK_DIR $MNT_DIR # データのダンプ mysqldump --opt --single-transaction --default-character-set=binary -u $DB_USER --password=$DB_PASS --all-databases | gzip > $DMP_FILE echo "Redmine DB Backup OK" # 添付ファイルのアーカイブ tar cfvz $ARC_FILE $FILE_DIR echo "Redmine Files Backup OK" # ファイルの移動 mv $DMP_FILE $MNT_DIR mv $ARC_FILE $MNT_DIR echo "Redmine Files Move to Server OK" # ファイルの削除 rm $RM_DMP_FILE rm $RM_ARC_FILE echo "Redmine Files Cleanup OK" umount -l $MNT_DIR exit $EXIT_STATUS
Archive for: 月 2016’
Redmineバックアップスクリプト
SVNバックアップスクリプト
#!/bin/sh # # SVN Repo backup script # REPO_DIR=/var/www/svn/repos/ MNT_DIR=/mnt/svn/ BAK_DIR="//10.0.0.0/windows/Backup/dir/svn" HOT_BACKUP=/usr/share/doc/subversion-1.4.2/tools/backup/hot-backup.py USER_NAME=username PASSWD=xxxxxx EXIT_STATUS=0 # 保存世代数(NOT WORKING) # 実際のスクリプトに記載すること export SVN_HOTBACKUP_BACKUPS_NUMBER=7 mount -t cifs -o username=$USER_NAME,password=$PASSWD $BAK_DIR $MNT_DIR for REPO in `find $REPO_DIR -maxdepth 1 -mindepth 1 -type d` do $HOT_BACKUP --archive-type=gz $REPO $MNT_DIR if [ $? = 0 ]; then logger "SVN Backup done. repository:$REPO, $BKFILE" echo "SVN Backup OK $BKFILE" else logger "SVN Backup NG $BKFILE" echo "SVN Backup NG $BKFILE" EXIT_STATUS=1 fi done umount -l $MNT_DIR exit $EXIT_STATUS