diff --git a/varbackup b/varbackup index 5cadc7c..3a6db25 100755 --- a/varbackup +++ b/varbackup @@ -23,27 +23,28 @@ while getopts ":hs" option; do done # main program -currDir="$(pwd)/backup/var/" +BASEDIR=$(dirname "$0")/../../.. +BACKUPDIR=$BASEDIR/backup/var/ -if [ ! -d "$currDir" ]; then - [ -z ${isSilent} ] && echo "creating backup directory ${currDir}" - mkdir -p "${currDir}" +if [ ! -d "$BACKUPDIR" ]; then + [ -z ${isSilent} ] && echo "creating backup directory ${BACKUPDIR}" + mkdir -p "${BACKUPDIR}" fi -if [ ! -f "${currDir}../rotatemap_var.conf" ]; then +if [ ! -f "${BACKUPDIR}../rotatemap_var.conf" ]; then [ -z ${isSilent} ] && echo "creating config file" - printf "${currDir}var.tar.gz {\nrotate 100\n}" > ${currDir}/../rotatemap_var.conf + printf "${BACKUPDIR}var.tar.gz {\nrotate 100\n}" > ${BACKUPDIR}/../rotatemap_var.conf fi [ -z ${isSilent} ] && echo "pack var directory" -tar -cf ${currDir}var.new.tar ./var; +tar -cf ${BACKUPDIR}var.new.tar ./var; -if [ ! -f "${currDir}var.tar" ] || [ "$(cmp ${currDir}var.tar ${currDir}var.new.tar)" ]; then - gzip -c ${currDir}var.tar > ${currDir}var.tar.gz - logrotate -f -s "${currDir}../rotatemap_var.state" "${currDir}../rotatemap_var.conf" - mv ${currDir}var.new.tar ${currDir}var.tar +if [ ! -f "${BACKUPDIR}var.tar" ] || [ "$(cmp ${BACKUPDIR}var.tar ${BACKUPDIR}var.new.tar)" ]; then + gzip -c ${BACKUPDIR}var.tar > ${BACKUPDIR}var.tar.gz + logrotate -f -s ${BACKUPDIR}../rotatemap_var.state ${BACKUPDIR}../rotatemap_var.conf + mv ${BACKUPDIR}var.new.tar ${BACKUPDIR}var.tar else - rm ${currDir}var.new.tar + rm ${BACKUPDIR}var.new.tar fi [ -z ${isSilent} ] && echo "finished"