以shell脚本备份Linux系统的方法

    作者:课课家教育更新于: 2016-02-26 10:09:42

      备份一个Linux系统的方式不下百个,除使用备份工具外,其实还能通过shell备份linux系统,下面课课家就给大家分享下备份Linux系统的shell脚本

    以shell脚本备份Linux系统的方法_Linux备份_Linux系统_Linux__shell脚本_课课家

      脚本如下:

      #!/bin/sh

      #Automatic Backup Linux System Files

      #Author wugk 2013-11-22

      #Define Variable

      SOURCE_DIR=(

      $*

      )

      TARGET_DIR=/data/backup/

      YEAR=`date +%Y`

      MONTH=`date +%m`

      DAY=`date +%d`

      WEEK=`date +%u`

      FILES=system_backup.tgz

      CODE=$?

      if

      [ -z “$*” ];then

      echo -e “Please Enter Your Backup Files or Directories\\n--------------------------------------------\\nExample $0 /boot /etc 。。。。。。”

      exit

      fi

      #Determine Whether the Target Directory Exists

      if

      [ ! -d $TARGET_DIR/$YEAR/$MONTH/$DAY ];then

      mkdir -p $TARGET_DIR/$YEAR/$MONTH/$DAY

      echo “This $TARGET_DIR is Created Successfully !”

      fi

      #EXEC Full_Backup Function Command

      Full_Backup()

      {

      if

      [ “$WEEK” -eq “7” ];then

      rm -rf $TARGET_DIR/snapshot

      cd $TARGET_DIR/$YEAR/$MONTH/$DAY ;tar -g $TARGET_DIR/snapshot -czvf $FILES `echo ${SOURCE_DIR[@]}`

      [ “$CODE” == “0” ]&&echo -e “--------------------------------------------\\nThese Full_Backup System Files Backup Successfully !”

      fi

      }

      #Perform incremental BACKUP Function Command

      Add_Backup()

      {

      cd $TARGET_DIR/$YEAR/$MONTH/$DAY ;

      if

      [ -f $TARGET_DIR/$YEAR/$MONTH/$DAY/$FILES ];then

      read -p “These $FILES Already Exists, overwrite confirmation yes or no ? : ” SURE

      if [ $SURE == “no” -o $SURE == “n” ];then

      sleep 1 ;exit 0

      fi

      #Add_Backup Files System

      if

      [ $WEEK -ne “7” ];then

      cd $TARGET_DIR/$YEAR/$MONTH/$DAY ;tar -g $TARGET_DIR/snapshot -czvf $$_$FILES `echo ${SOURCE_DIR[@]}`

      [ “$CODE” == “0” ]&&echo -e “-----------------------------------------\\nThese Add_Backup System Files Backup Successfully !”

      fi

      else

      if

      [ $WEEK -ne “7” ];then

      cd $TARGET_DIR/$YEAR/$MONTH/$DAY ;tar -g $TARGET_DIR/snapshot -czvf $FILES `echo ${SOURCE_DIR[@]}`

      [ “$CODE” == “0” ]&&echo -e “-------------------------------------------\\nThese Add_Backup System Files Backup Successfully !”

      fi

      fi

      }

      Full_Backup;Add_Backup

      上面就是Linux使用shell脚本备份系统的方法介绍了,通过上面的脚本就能自动备份系统,但脚本可能还存在不足的地方,可自行改良优化。

课课家教育

未登录