用 OBS 做静态资源备份:从创建桶到用 obsutil 同步本地目录
【摘要】 最近把手头几个静态页面和图片资源的备份流程整理了一遍,改用对象存储 OBS 做统一存放。这里把从建桶到命令行同步的完整过程记录下来,都是控制台和命令行里的常规操作,适合第一次接触对象存储的朋友照着走一遍。
最近把手头几个静态页面和图片资源的备份流程整理了一遍,改用对象存储 OBS 做统一存放。这里把从建桶到命令行同步的完整过程记录下来,都是控制台和命令行里的常规操作,适合第一次接触对象存储的朋友照着走一遍。
一、创建桶
进入对象存储服务控制台,点击「创建桶」,几个关键选项这样选:
- 区域:选离自己业务最近的区域即可,创建后不能改,要想清楚。
- 存储类别:选「标准存储」。备份场景如果更新很少,也可以选低频访问存储,单价更低,但有最低存储时长要求,按需权衡。
- 桶策略:默认「私有」。静态资源如果需要公开访问,建议单独建一个公开读的桶,不要把备份桶直接改成公共读。
- 版本控制:备份用途建议开启。多版本要占额外空间,但误删时能找回旧版本,对备份场景很划算。
创建完成后,在桶列表里能看到桶名和访问域名。
二、准备 obsutil
obsutil 是官方的命令行工具,在桶概览页或帮助中心都能找到下载地址。解压后先做配置:
```
./obsutil config -i=你的AK -k=你的SK -e=桶所在区域的Endpoint
```
Endpoint 在桶概览页里能查到,每个区域不一样,不要照抄别人的。配置完成后跑一下:
```
./obsutil ls
```
能列出账号下的桶,说明配置通了。AK/SK 属于敏感凭据,配置文件要注意权限,不要提交到代码仓库里。
三、同步本地目录
备份的核心命令是 sync,把本地目录同步到桶里:
```
./obsutil sync /data/static obs://my-bucket/static
```
第一次是全量上传,之后再跑会按文件大小和修改时间做增量判断,只传变化的部分。几个常用参数:
- `-dryRun`:先空跑一遍,只打印将要上传/删除的文件列表,不真执行。第一次用 sync 务必先空跑确认范围。
- 默认 sync 不会删除桶里多余的文件;确实要做镜像式同步(本地删了桶里也删)需要显式加删除选项,这类操作先空跑再执行,避免误删。
- 大文件会自动分片上传,中断后重跑可以续传,不用担心从头来。
四、几个容易踩的点
- 时区和时间:增量判断依赖文件修改时间,本机时间不准会导致重复上传或漏传,先确认机器时间同步正常。
- 路径分隔符:Windows 下写本地路径时用正斜杠或双反斜杠,避免转义问题。
- 恢复演练:备份不是传完就完事,建议定期随便挑一个文件下载回来校验一下能不能打开,备份的价值在恢复那一刻才兑现。
五、小结
整个流程就是建桶、配工具、sync 同步三步。配合版本控制和定期空跑检查,静态资源备份基本可以做到一次配置、长期省心。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)