注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

天上人间*bobo之家

有阳光的时段,就有他(她)的博客文章。也许天气并非晴空万里,博主的“博物钟”却是

 
 
 

日志

 
 

Cronjob定时将站点备份发送到邮箱  

2010-02-24 11:38:30|  分类: Linux |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
利用Cronjob定时执行一个脚本,脚本中依次执行压缩指定文件,发送压缩文件到邮箱以及删除压缩文件的操作。很简单,对吧?另外,考虑到文件的 大小以及重要性,本方案将wp自带的文件排除在外,当然,如果你自己hack了部分代码,也可以将hack之后的文件一起备份。

以下操作在cPanel下完成,其他请参照进行。

创建备份工作目录

为了便于操作和管理,在用户主目录下创建一个”Backup”文件夹(也就是”/home/(用户名)”目录)。

创建文件列表

利用自己喜欢的编辑器,创建一个文本文件,名字随意,建议以”.lst”结尾,比如我的是”BackupFiles.lst”,输入要备份的文件以及目录,一条记录一行。路径以”public_html”开始,便于后续操作。

注意:文件夹路径的最后不要以”/”结尾,不要有除路径和文件名之外的其他东西,比如注释。

例如我的:

1
2
3
4
public_html/index.php
public_html/robots.txt
public_html/cgi-bin
public_html/wp-content

创建脚本

另外创建一个文本文件,名字同样随意,建议以”.sh”结尾,比如我的是”SiteBackup.sh”,输入如下内容:

1
2
3
4
5
cd /home/(用户名) #注意将"(用户名)"替换为你的用户名
suffix=$(date +%Y%m%d) #获取当前的日期,格式为20090620,想用两位年的话将大写的Y改成小写的y
tar -zcf backup/SiteBackup_$suffix.tar.gz -T backup/BackupFiles.lst #此句的意思是将backup目录中的BackupFiles.lst内指定的文件项压缩成存放在backup目录下名为SiteBackup_$suffix.tar.gz的gz文件
mutt mail@example.com -a /home/bronco/backup/SiteBackup_$suffix.tar.gz -s "Site Backup" #将mail@example.com换成你自己的邮箱,"Site Backup"指的是邮件主题。
rm -r backup/SiteBackup_$suffix.tar.gz #避免浪费空间,删除本地备份文件。

设置环境

将上述两个文件放到之前创建好的”Backup”文件夹中。进入cPanel,找到Cron Jobs,使用Standard模式。(当然如果你对Linux很熟悉的话使用Advanced模式更方便一点。)在”Command to Run”中填入脚本的绝对路径(比如我的:de>/home/bronco/backup/SiteBackup.shde>)。时间可以按照自己的意愿进行设置,我这里选的是每天凌晨12点。最后点击”Save Crontab”,大功告成!

Tips

  1. Linux对于文件名区分大小写,操作的时候需要格外注意;
  2. 为了测试,你可以将时间选在当前时间之后2分钟,这样保存之后就能马上进行测试。另外在设置Cron Jobs的时候有一个选项是”Please enter an email address where the cron output will be sent”,这里你可以填入自己的邮箱或者使用默认值(用户名),这样当cron产生输出(通常是错误或警告信息)的时候你就能得到邮件,便于调试。如果 输入的是用户名的话,邮件到cPanel的WebMail里去看;
  3. Cron里的时间设置是主机时间,各位筒子需要注意一下时间换算;
  4. 如果你发现需要包含的文件项远多于需要排除的文件项,你也可以建立一个排除列表,这样在使用tar压缩的时候只要指定排除文件就好了。
  评论这张
 
阅读(577)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018