什么方法最好备份apache2,mysql,cvs和webmin配置文件
我正在运行Ubuntu 9.10云服务器 。 我将使用服务器管理gui工具’webmin’来备份apache配置文件,mysql,cvs,目录/ var / www和整个webmin配置文件等资源。 有时这些都没有备份,我会检查它们的修改日期。
有没有最好的方法来备份所有上述资源,没有任何其他工具或命令行的任何缺陷?
我在这里为backupninja投票。
我认为这应该可以满足您的所有需求。
这个应用程序是“一个无声的花开花死亡罢工丢失的数据” ,并基于rdiff-backup 。
像任何好忍者一样,在后台静静地奔跑。 有一个非常有用且简单的安装守护进程叫做ninjahelper 。
从“描述”页面:
Backupninja允许您通过将一些简单的配置文件放入/etc/backup.d/来协调系统备份。 您可能用于进行备份的大多数程序没有自己的配置文件格式。 Backupninja提供了一种集中的方式来配置和协调许多不同的备份实用程序。
特征:
- 易于阅读ini风格的配置文件。
- 您可以删除脚本来处理新类型的备份。
- 可以安排备份操作。
- 您可以选择何时将状态报告电子邮件邮寄给您(始终,警告,出错时,永远不会)。
- 基于控制台的向导(ninjahelper)可以轻松创建备份操作配置文件。
- 密码永远不会通过命令行发送给帮助程序。
- 为了备份db或sql数据库,您不能简单地复制数据库文件。 backupninja可帮助您安全地将数据导出为可备份的格式。
- 适用于Linux-Vservers。
备份类型包括:
- 安全,远程,增量filesytem备份(通过rdiff-backup)。 增量数据被压缩。 即使没有特权的备份用户,也会保留权限。
- 基本系统和硬件信息。
- 加密的远程备份(通过双重性)。
- MySQL,PostgreSQL,OpenLDAP和subversion数据库的安全备份。
- 刻录CD / DVD或创建ISO。
…我认为这比从头开始编写自定义脚本要容易得多,尽管你可能需要一些工作来获取MySQL数据库。
(另外,来吧,这是一个多么棒的名字?)
“ninjahelper”配置屏幕的屏幕截图:
有一个叫做etckeeper的软件包可以透明地将你的/etc
配置文件保存在版本控制中,这样你就可以轻松备份它们,回滚等等。
然后,您可以使用任何版本控制系统对其进行编写脚本,以便在任何位置备份它,这样您不仅可以备份文件,还可以记录每次更改的历史记录。
你可以使用rsnapshot。 我按照本指南使用rsnapshot自动执行生产服务器的远程备份。
我倾向于编写一个cron作业,它创建一个带日期戳的文件夹,我编写一个SQL转储,然后rsync所有配置文件或我想要备份的任何其他东西。
然后每个星期,我有另一个cron任务scp这是另一台机器,所以我有一个离线副本只是硬盘驱动器失败。
我还有另一个cron任务,用于删除超过3个月的备份。
您可以将stdout写入/ var / log中的日志文件,或者使用sendmail通知本地帐户(如果失败)。 这样,当您登录时,您将收到通知。 (你也可以使用twitter / IM bot脚本来提供通知..我使用Prosody和我编写的IM机器人[大约150行python]来通知一个客户的系统)。
希望有所帮助!