在日常使用 Ubuntu 系统时,数据安全至关重要。无论是个人文档、项目代码还是服务器配置,定期备份都能有效防止意外丢失。本文将带你从零开始,编写一个简单但功能完整的 Ubuntu自动备份脚本,实现定时、压缩、保留历史版本等实用功能。即使你是 Linux 新手,也能轻松上手!

手动备份不仅繁琐,还容易遗忘。而通过 shell脚本备份教程 中的方法,我们可以利用 cron 定时任务 + 压缩归档技术,让系统每天凌晨自动完成备份,省时又安心。
确保你的 Ubuntu 系统已安装以下工具(通常默认已安装):
tar:用于打包和压缩文件cron:用于设置定时任务我们将在 /home/yourname/scripts/ 目录下创建一个名为 backup.sh 的脚本。
首先,创建脚本目录并赋予执行权限:
mkdir -p ~/scriptstouch ~/scripts/backup.shchmod +x ~/scripts/backup.sh然后,用你喜欢的编辑器(如 nano 或 vim)打开 backup.sh,写入以下内容:
#!/bin/bash# ==============================# Ubuntu自动备份脚本# 功能:备份指定目录,压缩为tar.gz,并保留最近7天的备份# ==============================# 配置变量SOURCE_DIR="/home/yourname/Documents" # 要备份的源目录BACKUP_DIR="/home/yourname/backups" # 备份存放目录DATE=$(date +%Y%m%d_%H%M) # 当前时间戳BACKUP_FILE="$BACKUP_DIR/backup_$DATE.tar.gz"# 创建备份目录(如果不存在)mkdir -p "$BACKUP_DIR"# 执行备份echo "[INFO] 开始备份 $SOURCE_DIR 到 $BACKUP_FILE"tar -czf "$BACKUP_FILE" -C / "$SOURCE_DIR"if [ $? -eq 0 ]; then echo "[SUCCESS] 备份成功:$BACKUP_FILE"else echo "[ERROR] 备份失败!" exit 1fi# 删除7天前的旧备份(保留最近7份)find "$BACKUP_DIR" -name "backup_*.tar.gz" -mtime +7 -deleteecho "[INFO] 清理完成,仅保留最近7天的备份。"提示:请将
/home/yourname/Documents替换为你实际要备份的目录路径,例如/var/www(网站文件)或/etc(系统配置)。
为了让脚本每天自动运行,我们需要将其加入 cron 定时任务。
在终端输入:
crontab -e在打开的编辑器中,添加一行(例如每天凌晨2点执行):
0 2 * * * /home/yourname/scripts/backup.sh >> /home/yourname/backups/backup.log 2>&1这行命令表示:每天 02:00 执行脚本,并将输出日志追加到 backup.log 文件中,方便日后排查问题。
你可以手动运行一次脚本来测试是否正常工作:
~/scripts/backup.sh然后检查 /home/yourname/backups/ 目录下是否生成了以当前时间命名的 .tar.gz 文件。
rsync 或 rclone)gpg 工具)通过这个简单的 Ubuntu数据备份自动化 脚本,你可以轻松实现本地数据的定期保护。掌握这项技能,不仅能提升你的 Linux系统备份 能力,还能为未来运维工作打下坚实基础。
赶快动手试试吧!如有疑问,欢迎在评论区留言交流。
本文由主机测评网于2025-12-18发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://vpshk.cn/2025129731.html