以下是一个用于Debian系统的自动备份脚本及恢复测试的详细方案,包含脚本说明和操作指南:
一、自动备份脚本 backup_script.sh
1 |
|
二、恢复脚本 restore_script.sh
1 |
|
三、部署与使用说明
1. 安装脚本
1 | # 创建脚本文件 |
2. 配置定时任务(每日凌晨2点执行)
1 | sudo crontab -e |
3. 测试备份
1 | sudo /usr/local/bin/backup_script.sh |
4. 恢复测试
1 | # 1. 创建测试文件 |
四、关键功能说明
备份策略
- 使用
tar进行压缩打包 - 自动清理旧备份(默认保留7天)
- 详细日志记录在
/var/log/backup.log
- 使用
恢复机制
- 交互式选择备份文件
- 恢复前二次确认
- 直接覆盖原始路径设计
安全建议
- 建议将
DEST_DIR设置为独立分区 - 如需远程备份,可挂载NFS或使用rsync
- 敏感数据建议加密备份(可添加
-j选项使用bzip2压缩)
- 建议将
错误排查
- 检查
/var/log/backup.log错误信息 - 确认脚本有执行权限
- 确保存储目录有足够空间
- 检查
五、扩展建议
邮件通知
可在脚本中添加mail命令,在失败时发送报警邮件远程备份
添加以下命令到备份脚本末尾:1
rsync -avz $DEST_DIR/backup-*.tar.gz user@remote:/remote/backup/
完整性检查
在恢复前添加验证步骤:1
tar -tzf $SELECTED_FILE > /dev/null && echo "备份文件有效"
这个方案提供了从备份到验证的完整闭环,建议首次部署后通过模拟故障恢复进行全流程测试。