腾讯云 CVM + COS 实现自动备份脚本:从零到自动化
如果你也想长期用 COS 存储,建议提前规划节点和存储类型(标准存储、低频访问、归档等),结合自身访问频率选择,能省下不少费用。,延迟和上传速率明显改善,这也是我用 NiceCloud 拿账号的原因——可以直接选海外节点,不受国内网络波动影响。用腾讯云 CVM + COS 做自动备份并不复杂,关键是前期脚本配置好,后面就能全自动运行。搭配一段 Shell 脚本,实现自动备份,并且全程可落地,脚本直
很多朋友用腾讯云 CVM 跑业务,数据一旦出问题就很难找回,所以定期备份是必须的。但手动打包、上传、清理不仅麻烦,还容易忘。今天我就带你用 腾讯云 COS(对象存储) 搭配一段 Shell 脚本,实现自动备份,并且全程可落地,脚本直接能跑。
我自己用的是通过 NiceCloud 拿到的腾讯云国际账号,费用比官网低不少,这样我能长期开启 COS 存储而不心疼。
一、备份方案设计思路
核心目标很简单:
-
打包 — 把指定目录或数据库备份成压缩包;
-
上传 — 用 COS CLI 或 API 上传到云端;
-
清理 — 删除本地过期备份文件,避免磁盘爆满;
-
定时 — 用
crontab定期执行脚本,实现无人值守。
这样,哪怕 CVM 挂了,COS 上的备份依然完好,随时能恢复。
二、环境准备
1. 安装 COS CLI 工具
# 下载 COS CLI
wget https://cos5.cloud.tencent.com/coscli/coscli-linux
chmod +x coscli-linux
sudo mv coscli-linux /usr/local/bin/coscli
2. 配置 COS 访问密钥
先在腾讯云控制台创建一个 API 密钥(SecretId / SecretKey),然后配置:
coscli config
# 按提示输入 SecretId、SecretKey
# 设置默认 bucket 和地域,例如 ap-hongkong
三、自动备份脚本
假设我们要备份 /var/www 目录,脚本如下:
#!/bin/bash
# 配置变量
BACKUP_SRC="/var/www"
BACKUP_NAME="backup_$(date +%Y%m%d_%H%M%S).tar.gz"
BACKUP_DIR="/tmp"
COS_BUCKET="cos://my-bucket"
RETENTION_DAYS=7
# 创建压缩包
tar -czf ${BACKUP_DIR}/${BACKUP_NAME} ${BACKUP_SRC}
# 上传到 COS
coscli cp ${BACKUP_DIR}/${BACKUP_NAME} ${COS_BUCKET}/
# 删除本地临时文件
rm -f ${BACKUP_DIR}/${BACKUP_NAME}
# 删除 COS 上的过期备份
EXPIRE_DATE=$(date -d "-${RETENTION_DAYS} days" +%Y%m%d)
coscli ls ${COS_BUCKET}/ | grep backup_ | while read line
do
FILE_DATE=$(echo $line | grep -oP 'backup_\K\d{8}')
if [[ $FILE_DATE -lt $EXPIRE_DATE ]]; then
FILE_NAME=$(echo $line | awk '{print $NF}')
coscli rm ${COS_BUCKET}/${FILE_NAME}
fi
done
echo "[$(date)] 备份完成"
保存为 /opt/cvm_backup.sh,并赋予执行权限:
chmod +x /opt/cvm_backup.sh
四、定时任务配置
用 crontab -e 添加任务,比如每天凌晨 2 点执行:
0 2 * * * /opt/cvm_backup.sh >> /var/log/cvm_backup.log 2>&1
这样就实现了 每天自动备份 + 云端存储 + 自动清理 的全流程。
五、实际体验与建议
我在部署时,遇到过 COS 上传速度不稳定 的问题,尤其是跨境访问时。后来我换成 香港节点的 COS,延迟和上传速率明显改善,这也是我用 NiceCloud 拿账号的原因——可以直接选海外节点,不受国内网络波动影响。
另外,建议 不要只备份一个地方,最好配合本地硬盘 + COS 双备份,这样能更稳。
总结
用腾讯云 CVM + COS 做自动备份并不复杂,关键是前期脚本配置好,后面就能全自动运行。
这个方案适合 网站数据、数据库、日志文件 等日常业务场景,而且成本可控。如果你也想长期用 COS 存储,建议提前规划节点和存储类型(标准存储、低频访问、归档等),结合自身访问频率选择,能省下不少费用。
更多推荐
所有评论(0)