Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> Linux系統教程 >> 關於Linux >> Linux通過shell腳本備份系統的方法

Linux通過shell腳本備份系統的方法

日期:2017/1/25 10:40:33      編輯:關於Linux

  在Linux中,備份系統的方法有很多,除了使用備份工具外,還能通過shell備份Linux系統,下面小編就給大家分享下備份Linux系統的shell腳本。

 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腳本備份系統的方法介紹了,通過上面的腳本就能自動備份系統,但腳本可能還存在不足的地方,可自行改良優化。

Copyright © Windows教程網 All Rights Reserved