前言: 写这篇文章前,思考了XX久,原因很简单,这篇东西没人看,这个东西除了我也没人用,所以使用说明书就免了。 于是可以写点别的,QQ for Linux今早发布,可以写点评论,NO! n多人会写; 没事,还有个叫 中文版如何做爱 的Very恶搞 and 极度幽默的开源项目,But! 时间不对。…… 其实还有还多,比如《全名黑客》发誓要将小黑精神进行到底!

前言的小结: 总结了莫须有的,回顾了后天会美好的憧憬,我决定==》开写!

正文开始: backup_py_20080731.tar.bz2是python写的文件备份脚本,配合cron可以备份指定的文件,mysql数据库,删除过期的日志。这个脚本最早是在学python时动笔的,其间修修补补的估计有一年了,成了现在这个样子。从程序的角度,十分丑陋,从实用的角度也就马马虎虎过得去这样。可是我还是不断的修改,写这篇文文,无它,好几次系统崩溃都是考它备份出来的东西还原的,也算是功臣了。所以写给自己看则个。

唠唠叨叨一大堆,OK。handbook begin 首先,它分成两个文件:
backedit.py 通过它可以查看修改备份文件列表;
backup.py 主角,执行它才能完成备份(你得授予可执行权限)
其实很简单,backedit.py负责设定那些东西要备份,cron调用backup.py给那些文件打包,O了^_^ 。 那么先来解释一下backedit.py

一、 backedit.py一共可用的参数是5个:
backedit.py default 恢复默认设置
backedit.py show 查看备份列表
backedit.py help 显示此页面
backedit.py add [parameter] [...] 添加备份路径
backedit.py del [number] [...] 通过编号删除多余路径
文件backedit.py中的第18行设定备份文件最终安放的地点(变量backup_path),需要和backup.py中的一致。56行是默认的备份文件列表,一般linux系统上都有。 举个例子,我要添加 /etc/httpd 和 /home/user/.bashrc 这两个备份路径可以

python backedit.py add /etc/httpd /home/user/.bashrc

然后删除 /etc/fonts 和 /etc/inittab 这两个路径(backedit.py show可以看到路径的ID)

python backedit.py del 3 1

数据库文件是地址backup_path下的backup.list 。

接下来加入root用户的cron任务计划表中(其他用户也可),执行 sudo crontab -e 后,如下编辑,表示每个星期五、日的20、22点进行备份。

# minute hour day month dow command
01 20,22 * * 5,0 /opt/script/backup.py

可以参考: Linux 技巧: 用cron 和at 调度作业,好了只剩mysql数据库备份和删logs了,痛!

(PS~_~1:小脚趾刚刚被削掉了层皮,shit!该死的木门,十几年都没事,今天才向我发威; 还好没去献血,不然极有可能流血过量 :cry:

(PS~_~2:QQ for Linux的rpm包中的license竟是GPL,狂汗)

Pages: 1 2


文章标识
如果你是第一次来这儿,欢迎 订阅 这个博客。 第一时间看到更多精彩内容,谢谢你的访问!
本文固定链接: http://mifunny.info/python-backup-script-for-files-and-mysql-74.html
转载请注明出处及链接,非常感谢!
LD on 07月 31st, 2008 | File Under Python | -