Linux/Unix数据自动备份工具


primabackup.sh 说明文档

  版本:2.0.1

  工具下载地址:http://swsoft.com.cn/downloads/Prima/Tools/primabackup-2.0.2.tar.gz

  0. 版本更新

  * 2006-11-23 SWsoft.com.cn v2.0.2

  - [fix] 修复resin路径

  * 2005-03-28 ValueOf.com v2.0.1

  - [fix] 备份resin和tomcat的配置

  - [fix] 修复配置备份子目录的位置

  1. 概述

  primabackup.sh脚本可用来备份数据。

  2. 安装

  解压:

  tar zxf primabackup.tar.gz

  3. 配置

  要求的设定

  3.1 备份到那个目录

  BACKUP_BASE_DIR="/backup" 备份文件所在的根目录

  3.2 备份哪些数据

  WEB=1 备份web

  EMAIL=1 备份email

  DNS=1 备份dns

  MYSQL=1 备份mysql

  CONTROL=1 备份主控界面目录

  如果不需要备份某个功能,则将其改成0

  3.3 保留多少份旧的备份?

  即除了当前最新的这个备份之外,还保留几个备份,最少为0个,默认为1

  如果设为0,则只保留一个备份,每次备份的时候都会把以前的备份删除

  max_old_backup=1

  4. 备份的过程

  首先根据设置,决定要备份的数据和配置,然后创建

  备份根目录下的以日期时间为名字的目录,在这个目录的data子目录下备份数据的tar包

  在conf子目录下备份配置文件和目录。

  5. 数据位置

  web数据的位置,默认/www/users,程序会自动到prima.conf里面找home_base配置,如果找到则用更改之后的配置

  mail数据的位置,默认/var/vmail,程序会自动到prima.conf里面找mail_space_base配置,如果找到则用更改之后的配置

  dns数据的位置,默认/var/named,程序会自动到prima.conf里面找zonefile_base配置,如果找到则用更改之后的配置

  mysql数据的位置,linux默认/var/lib/mysql,FreeBSD默认/var/db/mysql

  如果prima.conf中打开了网站生成、计数器应用,则会备份相应的数据目录。

  程序根据prima.conf中use_mod_caucho/use_mod_jk来判断是否备份相应的resin和tomcat配置

  named.conf默认/etc/named.conf,程序会自动到prima.conf里面找named_conf配置,如果找到则用更改之后的配置

  如果是主控服务器,请务必打开MYSQL备份。

  6. 关于测试模式

  如果将

  #testmode=1

  改成

  testmode=1

  则,只打印要做的事情,不做实际备份。

  7. 备份文件的命名方法

  对于目录的备份。备份文件是目录名.tar.gz,如

  /www/users -> /backup/20040903-140101/data/users.tar.gz

  对于文件的备份,则直接是文件名,如

  /etc/named.conf -> /backup/20040903-140101/conf/named.conf

  完整列表如下:

  /www/prima -> data/prima.tar.gz

  /www/users -> data/users.tar.gz

  /var/vmail -> data/vmail.tar.gz

  /var/named -> data/named.tar.gz

  /var/lib/mysql -> data/mysql.tar.gz

  /www/prima/htdocs/apps/GenComSite/sitepage -> data/sitepage

  /www/prima/htdocs/apps/GenComSite/upload -> data/upload.tar.gz

  /var/Counter -> Counter.tar.gz

  /usr/prima/etc -> conf/etc.tar.gz

  /usr/prima/postfix/conf -> conf/conf.tar.gz

  /etc/named.conf -> conf/named.conf

  /usr/local/resin/conf/host.conf -> conf/host.conf

  /var/tomcat4/conf/server.xml -> conf/server.xml

  /www/prima/htdocs/apps/phpMyAdmin/config.inc.php -> conf/config.inc.php

  8. 注意事项

  8.1

  注意:此备份为完整备份,备份目录应有足够空间容纳。

  虽然在备份过程,经过压缩,空间会减小,但建议备份目录至少和数据全部大小相同。

  这样才能保证容纳至少一个完整备份,一般情况下,可以容纳两个完整备份。

  8.2

  在进行备份的时候,对cpu和磁盘的负担是比较重的,建议加上nice以降低程序执行优先级,而且最好在凌晨运行。

  如:

  # nice ./primabackup.sh

  9. 通过cronjob自动周期性备份

  通过修改/etc/crontab,可以将备份设为周期性自动的。

  /etc/crontab中每一条都是一个定期任务,#号开头的除外。

  格式如下:

  分钟 小时 月中的某一天 月 星期几 执行者 命令行

  例如:

  0 2 * * * root /bin/cmd

  即在每天的凌晨2点以root身份执行/bin/cmd命令

  假如要配置备份任务每天2点执行,将输出的消息写到日志文件里,则在/etc/crontab中加入:

  0 2 * * * root nice /root/primabackup/primabackup.sh >> /var/log/primabackup.log

  上面假设备份脚本的位置在/root/primabackup/primabackup.sh

  日志放在/var/log/primabackup.log

  加了nice降低执行优先级。

  如果要每周六2点执行,则:

  0 2 * * 6 root nice /root/primabackup/primabackup.sh >> /var/log/primabackup.log

  (6代表星期六,0 或 7 代表星期天)

  修改/etc/crontab不用重起任何服务


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3