├── a_ares_0000 └── a_abak_0000 /a_ares_0000: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | #note: for now, snappy restores only to the volume the backup originated from. 3 | 4 | ME=${0##*/} 5 | echo;echo; echo "=== $ME === start:$(date)" 6 | #- - - - 7 | 8 | if [[ -z "${USR_HOST}" ]]; then 9 | echo "exit script.. USR_HOST var is not set" ; exit 1 10 | else 11 | USR_HOST="${USR_HOST}" 12 | fi 13 | if [[ -z "${RC_FILE}" ]]; then 14 | echo "exit script.. RC_FILE var is not set" ; exit 1 15 | else 16 | RC_FILE="${RC_FILE}" 17 | fi 18 | 19 | 20 | USAGE="Usage: ./$ME " 21 | if [ "$#" -lt 3 ]; then 22 | echo -e $USAGE 23 | exit 1 24 | fi 25 | 26 | VM_ID=$1 27 | VOL_ID=$2 28 | JOB_ID=$3 29 | MOUNTDIR=$4 30 | 31 | if [[ -z "$MOUNTDIR" ]] 32 | then 33 | MOUNTDIR="/mnt/xxx" 34 | fi 35 | 36 | 37 | echo "$VM_ID $VOL_ID $JOBID $MOUNTDIR" 38 | read -t 5 -p "- - - - " 39 | 40 | 41 | ./a_vol_unmount_rmdir_detach $VM_ID $VOL_ID $MOUNTDIR 42 | ./a_vol_attach_fmt_detach $VM_ID $VOL_ID 43 | 44 | read -t 5 -p "begin vol restore in 5 sec.. (^c to abort).." 45 | ./a_vol_restore $VM_ID $JOBID y 46 | read -t 5 -p "vol Restored. Will attach in 5sec.. (^c to abort).." 47 | 48 | ./a_vol_attach_mnt $VM_ID $VOL_ID $MOUNTDIR 49 | echo "- -restored. getting MD5 hash..(date=$(date)" 50 | md5deep -rl $MOUNTDIR 2>/dev/null | awk '{print $1}' | sort -n | md5sum 51 | read -t 10 -p "MD5 hash done - date=$(date). CleanUp/detach in 10sec.. (^c to abort).." 52 | 53 | #clean up/detach.. 54 | ./a_vol_unmount_rmdir_detach $VM_ID $VOL_ID $MOUNTDIR 55 | ./a_vol_attach_fmt_detach $VM_ID $VOL_ID 56 | 57 | echo "=== $ME === done:$(date)" 58 | 59 | -------------------------------------------------------------------------------- /a_abak_0000: -------------------------------------------------------------------------------- 1 | 2 | #!/bin/bash 3 | 4 | ME=${0##*/} 5 | echo "=== $ME === start:$(date)" 6 | #- - - - 7 | 8 | if [[ -z "${USR_HOST}" ]]; then 9 | echo "exit script.. USR_HOST var is not set" ; exit 1 10 | else 11 | USR_HOST="${USR_HOST}" 12 | fi 13 | if [[ -z "${RC_FILE}" ]]; then 14 | echo "exit script.. RC_FILE var is not set" ; exit 1 15 | else 16 | RC_FILE="${RC_FILE}" 17 | fi 18 | if [[ -z "${VOLUME_CREATE_CMD}" ]]; then 19 | echo "exit script.. VOLUME_CREATE_CMD var is not set" ; exit 1 20 | fi 21 | 22 | 23 | USAGE="Usage: ./$ME " 24 | if [ "$#" -lt 4 ]; then 25 | echo -e $USAGE 26 | exit 1 27 | fi 28 | 29 | VM_ID=$1 30 | VOL_SIZE=$2 31 | FILLDATA_MB=$3 32 | FILLTYPE=$4 33 | VOL_ID=$5 34 | MOUNTDIR=$6 35 | MOUNT_DEFAULTDIR="/mnt/xxx" 36 | 37 | if [ "$FILLTYPE" != "compressible" ] && [ "$FILLTYPE" != "incompressible" ] && [ "$FILLTYPE" != "mixed" ] 38 | then 39 | echo "filltype must be either: compressible|incompressible|mixed" 40 | exit 1 41 | fi 42 | 43 | if [[ -z "$MOUNTDIR" ]] 44 | then 45 | MOUNTDIR=$MOUNT_DEFAULTDIR 46 | fi 47 | if [ ! -d "$MOUNTDIR" ]; then 48 | mkdir $MOUNTDIR 49 | if [ ! -d "$MOUNTDIR" ]; then 50 | echo "err: cannot create mount dir: $MOUNTDIR. bye." 51 | exit 1 52 | fi 53 | fi 54 | 55 | #create a test vol if vol-id was not specified 56 | if [[ -z "$VOL_ID" ]] 57 | then 58 | VOL_NAME=$(echo "tempvol_"$(date +%s) ) 59 | echo $VOL_NAME 60 | sleep 2 61 | VOL_ID=$( ssh $USR_HOST "source $RC_FILE; $VOLUME_CREATE_CMD $VOL_NAME $VOL_SIZE" |grep -w id| cut -d'|' -f3) 62 | sleep 5 63 | fi 64 | 65 | echo " vmid:$VM_ID volsizGB:$VOL_SIZE fillsizMB:$FILLDATA_MB volid:$VOL_ID mountdir:$MOUNTDIR" 66 | read -t 5 -p "--- vol to be used: $VOL_ID. Proceed in 5s---" 67 | 68 | ./a_vol_unmount_rmdir_detach $VM_ID $VOL_ID $MOUNTDIR 69 | ./a_vol_attach_fmt_detach $VM_ID $VOL_ID 70 | ./a_vol_attach_mnt $VM_ID $VOL_ID $MOUNTDIR 71 | echo "date:$(date)" 72 | ./a_vol_filldata $MOUNTDIR $FILLDATA_MB $VOL_ID $FILLTYPE 73 | echo "date:$(date)" 74 | du -h $MOUNTDIR 75 | read -t 5 -p "Detach vol and do backup in 5 sec" ; echo 76 | ./a_vol_unmount_detach $VM_ID $VOL_ID $MOUNTDIR 77 | 78 | echo "backing up.." ; read -t 3 -p " " 79 | #source the backup script to get the var:Z_JOBID_BACKUP passed back.. 80 | . ./a_vol_backup $VOL_ID Y 81 | echo 82 | ./db_get_job_info $Z_JOBID_BACKUP 83 | echo 84 | 85 | --------------------------------------------------------------------------------