在运维工作中,CentOS备份脚本是保障数据安全的重要工具。无论是网站文件、数据库还是系统配置,定期备份都能在意外发生时快速恢复业务。本文将为你详细讲解如何编写一个简单但功能完整的自动化备份脚本,并通过 cron 定时任务实现定时备份教程级别的自动化。

在开始之前,请确保你已经:
我们将在 /root/backup.sh 创建一个备份脚本,用于备份指定目录(例如 /var/www/html)和 MySQL 数据库。
使用以下命令创建脚本文件:
sudo nano /root/backup.sh将以下内容粘贴进去(请根据你的实际情况修改路径和数据库信息):
#!/bin/bash# 备份脚本配置BACKUP_DIR="/backup"DATE=$(date +%Y%m%d_%H%M%S)WEB_DIR="/var/www/html"DB_NAME="your_database_name"DB_USER="your_db_user"DB_PASS="your_db_password"# 创建备份目录(如果不存在)mkdir -p $BACKUP_DIR# 1. 备份网站文件tar -czf $BACKUP_DIR/web_backup_$DATE.tar.gz -C / var/www/html# 2. 备份MySQL数据库mysqldump -u$DB_USER -p$DB_PASS $DB_NAME > $BACKUP_DIR/db_backup_$DATE.sql# 3. 压缩数据库备份gzip $BACKUP_DIR/db_backup_$DATE.sql# 4. 删除7天前的旧备份(可选)find $BACKUP_DIR -type f -mtime +7 -delete# 5. 输出日志echo "[$(date)] 备份完成:web_backup_$DATE.tar.gz 和 db_backup_$DATE.sql.gz" >> /var/log/backup.log注意:为安全起见,建议将数据库密码存储在
.my.cnf文件中,而不是直接写在脚本里。但为了教程简洁,此处采用直接写入方式。生产环境请使用更安全的方法。
保存并退出编辑器后,给脚本添加执行权限:
chmod +x /root/backup.sh使用 crontab 设置每天凌晨 2 点自动执行备份:
crontab -e在打开的编辑器中添加以下行:
0 2 * * * /root/backup.sh >/dev/null 2>&1这表示每天 2:00 AM 执行脚本,并将输出丢弃(避免邮件通知)。
你可以手动运行一次脚本来测试是否正常工作:
/root/backup.sh然后检查 /backup 目录是否有生成的压缩文件,并查看日志:
ls -l /backup/tail -n 5 /var/log/backup.logrsync 实现增量备份通过以上步骤,你已经成功部署了一个适用于 CentOS 系统的Linux系统备份方案。这个简单的脚本不仅能保护你的关键数据,还能大幅减少人工干预,真正实现自动化备份。记住,再完善的系统也抵不过一次未备份的数据丢失——定期验证备份的有效性同样重要!
如果你觉得这篇定时备份教程对你有帮助,欢迎分享给更多需要的朋友!
本文由主机测评网于2025-12-13发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/2025127000.html