简单的服务器文件备份方案
我用穷鬼套餐购买了 2C2G 和 2C4G 各一台服务器,加起来一年 300 块,用来搭建测试环境和线上环境。线上环境比较怕误操作,需要有文件定时备份的机制,而我不想在这上面多花一分钱,于是做了个免费的方案。
两台服务器分别为 srv-test 和 srv-prod。在 srv-prod 中使用 rsync
定时将文件同步到 srv-test 上,同步的时间点选在每天我最不可能登录服务器操作的凌晨。同步完成后,在 srv-test 中将其中需要保留历史版本的关键文件打包成一个新版本即可。
以下是具体实现,在 srv-prod 中增加两个脚本和一个定时任务:
|
|
45 3 * * * /bin/bash /backup/backup.sh >> /backup/backup.log 2>&1 |
这里为了安全,不允许 srv-test 登录 srv-prod,所以是 srv-prod 单向操作 srv-test。除此之外,备份数据的安全性也需要根据具体情况评估一下,别把秘钥这些敏感数据备份到一个不安全的地方。
这个方案简单有效,其中异地备份提供了可靠性,最新文件同步提供了快速恢复能力,只保留关键文件历史版本节省了存储成本。