Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3011983
  • 博文数量: 272
  • 博客积分: 5544
  • 博客等级: 大校
  • 技术积分: 5496
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-08 00:48
个人简介

  每个人都要有一个骨灰级的爱好,不为金钱,而纯粹是为了在这个领域享受追寻真理的快乐。

文章分类

全部博文(272)

文章存档

2015年(2)

2014年(5)

2013年(25)

2012年(58)

2011年(182)

分类: LINUX

2011-05-14 13:28:51

$ crontab -l
20 20 * * * /root/autobak.sh etc &> /dev/null
25 20 * * * /root/autobak.sh boot &> /dev/null
#每天20点20分和25分开始运行备份etc和boot目录
0 */2 * * * tar zcf /test/shells.tgz /test/shells &> /dev/null
#每两个小时运行备份/test/shells目录
 
$ cat autobak.sh
  1. #!/bin/sh
  2. #autobak.sh
  3. #首先切换到根目录,为了tar备份非当前目录文件时报错
  4. cd /
  5. #设置备份文件的存放目录
  6. X=/backup/
  7. #提取当前日期为年月日格式
  8. DATE=`/bin/date +%Y%m%d`
  9. #改backup目录为可写
  10. /bin/mount -o remount,rw ${X}
  11. /bin/tar -cf ${X}$1_$DATE.tar $1 > /dev/null 2>> ${X}$1_bak.log
  12. /bin/gzip -f ${X}$1_$DATE.tar
  13. #判断上个命令执行是否成功,不成功为非0值
  14. if [ $? -eq 0 ];then
  15. #若成功删除10天前并且名字为$1开头的备份文件,避免备份文件体积过大
  16. /usr/bin/find ${X} -mtime +10 -a -name $1_* -exec \rm {} \;
  17. else
  18. echo -e "ERROR: failure $1 $DATE backup!\n" >> ${X}$1_bak.log
  19. fi
  20. #改回为只读,避免错误操作导致备份损坏。
  21. /bin/mount -o remount,ro ${X}
阅读(2455) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~