需通过宝塔内置备份功能与阿里云ossutil工具协同实现:先安装配置ossutil,再创建含网站/数据库压缩及上传逻辑的Shell脚本,通过宝塔计划任务定时执行;专业版还可直接挂载OSS为远程存储,无需手动写脚本。

如果您在宝塔面板中希望实现服务器数据的周期性自动备份并上传至阿里云OSS,需通过宝塔内置备份功能与OSS命令行工具或API接口协同完成。以下是具体配置步骤:
一、安装阿里云OSS命令行工具ossutil
ossutil是阿里云官方提供的轻量级OSS文件管理工具,支持Linux系统下的上传、下载、同步等操作,为自动备份提供底层支撑。
1、登录服务器,执行以下命令下载最新版ossutil(以64位CentOS/Ubuntu为例):
curl -O http://gosspublic.alicdn.com/ossutil/ossutil64
2、赋予执行权限:
chmod 755 ossutil64
3、移动至系统路径以便全局调用:
sudo mv ossutil64 /usr/local/bin/ossutil
4、配置OSS访问凭证:
ossutil config -e https://oss-cn-hangzhou.aliyuncs.com -i LTAI5tQZzKXyXXXXXX -k xXxXxXxXxXxXxXxXxXxXxXxXxX -L CHN
二、创建本地备份脚本
该脚本负责生成网站及数据库压缩包,并调用ossutil上传至指定OSS Bucket,是自动备份流程的核心执行单元。
1、新建脚本文件:
vi /www/backup/backup_to_oss.sh
2、写入以下内容(请按实际路径和Bucket信息修改):
#!/bin/bash
DATE=$(date +%Y%m%d_%H%M%S)
WEB_DIR="/www/wwwroot"
DB_DIR="/www/backup/db"
OSS_BUCKET="oss://my-backup-bucket"
BACKUP_DIR="/www/backup/local"
mkdir -p $BACKUP_DIR $DB_DIR
tar -zcf $BACKUP_DIR/web_$DATE.tar.gz -C $WEB_DIR .
mysqldump --all-databases -u root -pyour_root_password | gzip > $DB_DIR/all_db_$DATE.sql.gz
ossutil cp $BACKUP_DIR/web_$DATE.tar.gz $OSS_BUCKET/backup/web/
ossutil cp $DB_DIR/all_db_$DATE.sql.gz $OSS_BUCKET/backup/db/
3、赋予脚本可执行权限:
chmod +x /www/backup/backup_to_oss.sh
三、在宝塔计划任务中添加定时执行
宝塔计划任务模块可替代系统crontab,提供可视化界面管理脚本触发时机,确保备份动作按设定周期运行。
1、登录宝塔面板,进入【计划任务】页面
2、点击【添加计划任务】
3、选择任务类型为【Shell脚本】
4、在脚本内容框中填入:
/bin/bash /www/backup/backup_to_oss.sh
5、设置执行周期,例如每日凌晨2点:
0 2 * * *
6、任务名称填写为:每日全站+数据库备份至OSS
四、验证OSS上传结果与权限配置
确保OSS Bucket已开启对应读写权限,且ossutil能正确识别目标路径,避免因403或NoSuchBucket错误导致备份中断。
1、手动执行一次脚本,观察终端输出:
/bin/bash /www/backup/backup_to_oss.sh
2、检查OSS控制台对应Bucket内是否出现backup/web/和backup/db/目录结构
3、确认Bucket所属地域与ossutil config中-e参数一致,例如华东1(杭州)对应https://oss-cn-hangzhou.aliyuncs.com
4、若提示AccessDenied,请登录RAM访问控制台,为该AccessKey绑定AliyunOSSFullAccess策略
五、启用宝塔内置备份并挂载OSS为远程存储
宝塔专业版支持将OSS直接注册为远程备份存储空间,无需编写脚本即可联动面板内建备份机制。
1、进入【宝塔面板】→【插件】→【对象存储】→【安装】(仅专业版可用)
2、点击【添加存储】,选择【阿里云OSS】
3、填写Bucket名称、地域Endpoint、AccessKey ID与Secret
4、测试连接成功后,返回【网站】或【数据库】列表页,勾选目标项,点击【备份】→【备份到远程存储】→选择刚添加的OSS存储
5、在【计划任务】中新增【备份网站】或【备份数据库】任务,并勾选【备份到远程存储】选项,指定OSS存储名称










