增量备份恢复脚本

Posted on Posted in command
Tips: 本文创建于2013年12月20日,已超过 2 年,内容或图片可能已经失效!

脚本说明:

备份脚本只备份1天之内修改的文件

恢复脚本只恢复文件,如恢复,会覆盖这一天的文件

详细请看里面的readme.txt

获得脚本:右点击图片,另存到你的电脑(要存放大后的图片)。把图片后缀名改为 .rar,解压后即可!

bak

incremental-bak备份脚本源码

  1. #!/bin/bash  
  2.   
  3. # Author: liuhonghe  
  4. # Version: 0.1  
  5.   
  6. PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin  
  7. export PATH  
  8.   
  9. # check root  
  10. if [ $(id -u) != "0" ]; then  
  11.     echo "Error: Must be root to run this script!"  
  12.     exit 1  
  13. fi  
  14.   
  15. # check varialbe  
  16. cur_dir=$(pwd)  
  17. if [ $# -eq 2 ];then  
  18. echo "你运行的脚本是$0,你要备份的目录是$1,你要备份到$2"  
  19. else  
  20. echo "You can run the script like this: $0 /backupdir /tobackup"  
  21. exit 1  
  22. fi  
  23.   
  24. # run script  
  25. find $1 -mtime -1 ! -type d > /tmp/zengliang.txt  
  26. backup=$2  
  27. DATE=`date +%d`  
  28. if [ -d $backup ];then  
  29. while read line  
  30. do  
  31.     cp -rf $line $backup/backup/file  
  32.     cp /tmp/zengliang.txt $backup/backup  
  33. done < /tmp/zengliang.txt  
  34. cd $backup  
  35. tar zcf backup-$DATE.tgz backup  
  36. exit 1  
  37. else  
  38. clear  
  39. echo "$backup目录不存在,创建目录中..."  
  40. mkdir -pv $backup/backup/file  
  41. echo "创建目录结束。"  
  42. echo "重新执行脚本..."  
  43. $cur_dir/$0 $1 $2  
  44. fi  
  45. restore恢复脚本源码  
  46.   
  47. #!/bin/bash  
  48.   
  49. # Author: liuhonghe  
  50. # Version: 0.1  
  51.   
  52. PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin  
  53. export PATH  
  54.   
  55. # check root  
  56. if [ $(id -u) != "0" ]; then  
  57.     echo "Error: Must be root to run this script!"  
  58.     exit 1  
  59. fi  
  60.   
  61. # check varialbe  
  62. if [ $# -eq 1 ];then  
  63. echo "你运行的脚本是$0,你的压缩包在目录$1"  
  64. else  
  65. echo "You can run the script like this: $0 filename.tgz"  
  66. exit 1  
  67. fi  
  68.   
  69. # run script  
  70. tardir=`dirname $1`  
  71. tar zxf $1 -C $tardir  
  72. cd $tardir/backup/file  
  73.   
  74. while read&nb
    sp;line  
  75. do  
  76. filename=`basename $line`  
  77. dirname=`dirname $line`  
  78.   
  79. if [ -d $dirname ];then  
  80. cp -rf $filename $dirname  
  81. else  
  82. echo "目录$dirname不存在"  
  83. mkdir -pv $dirname  
  84. echo "创建$dirname成功"  
  85. echo  
  86. cp -rf $filename $dirname  
  87. fi  
  88. done < $tardir/backup/zengliang.txt  
» 转载请注明来源:若我若鱼 » 增量备份恢复脚本

Leave a Reply

Your email address will not be published. Required fields are marked *

one × 2 =