夜雨聆风学习资料网

ARTICLE · 1300643

让 OpenClaw 用上 OSCA Cloud 对象存储

让 OpenClaw 用上 OSCA Cloud 对象存储
这篇记录了自己尝试部署的过程,也写给已经把 OpenClaw 跑起来、还想让它读写 OSCA Cloud(OCloud)对象存储的人作一个参考。部署完成之后,在对话里说句话就能列桶、传文件、发限时分享链接,使用自然语言,不用碰命令行。另,osca也提供了指导文档如下。
https://docs-ocloud.ihep.ac.cn/docs/osca-oss/client/claw/doc.html

一、为什么要接对象存储

OpenClaw 的文件都躺在你的 NAS 或服务器上。遇到需要发送大文件给别人的时候。就难受了,走 NAS 厂商提供的转发服务往往会受到家庭上行带宽和服务提供商的限速,网盘也是同样,高速传输又要会员。
接上对象存储就顺了。发文件给一条限时链接,对方从云端下载,碰不到你的内网 ,速度相较于没有会员都网盘和家庭上行带宽而言,也快不少。大文件放云端不占本机空间,NAS 的东西顺带多了份云端异地备份。
OSCA Cloud 对科研、教学场景免费,正好拿它当“对外中转站”。

二、准备三样东西

(1)OCloud 的 AK / SK:在 OCloud 控制台的【密钥管理 / 访问密钥】里生成一对 S3 类型密钥。
AK 是 Access Key ID,相当于用户名。SK 是 Secret Access Key,相当于密码。SK 只在生成时显示一次,存好,丢了只能重新生成一对。
在生成 AK/SK的时候,安全起见,请指定访问范围和轮换日期。
(2)ocloud-claw.zip:官方文档站(docs-ocloud.ihep.ac.cn)的 OpenClaw 客户端页有下载,亦可通过如下链接查看并且找到下载链接。
https://docs-ocloud.ihep.ac.cn/docs/osca-oss/client/claw/doc.html
(3)一台 Linux 机器:这个插件目前只支持 Linux,OpenClaw 本身跑在 NAS 或 Docker 里都行。

三、安装:四步

(1)解压放到 skills目录
也可以通过官方指导文档中的下载链接手动下载并移动到.../workspace/skills目录下。
mkdir -p ~/.openclaw/workspace/skillunzip -o ocloud-claw.zipmv ocloud-claw ~/.openclaw/workspace/skill/ocloudcd ~/.openclaw/workspace/skill/ocloud
(2)一键安装
bash install.sh 你的AK 你的SK
脚本会依次完成:安装 AWS CLI(装到 ~/bin)、写入 ~/.aws/credentials 与 ~/.aws/config(endpoint 指向 OSCA Cloud)、测试 aws s3 ls 是否连通、部署本地 MCP 服务并注册到 mcporter、把 skill 说明放到 skills/ocloud。
(3)重启网关
openclaw gateway restart
(4)验证
mcporter call ocloud.s3_list_buckets
能打印出桶名,就OK了。

四、日常怎么用

命令记不住没关系,平时在对话里直接对龙虾说自然语言就可以,它背后调的是这些:
想做什么
指令
看有哪些桶
mcporter call ocloud.s3_list_buckets
看桶里有什么
mcporter call ocloud.s3_list_files bucket=桶名
读一个文本文件
mcporter call ocloud.s3_read_file bucket=桶名 key=路径
上传
mcporter call ocloud.s3_upload_file localPath=本地路径 bucket=桶名 key=云端路径
下载
mcporter call ocloud.s3_download_file bucket=桶名 key=路径 localPath=本地路径
如果要走命令行传大文件,比如把 NAS 上的备份包推上去:
aws s3 cp /volume1/backup.tar.gz s3://你的桶/backup/backup.tar.gz --only-show-errors
【--only-show-errors】 别省。不加的话aws 会把每个分块的进度都打出来,几万行字符可能刷满终端。

五、最实用的功能:限时分享链接

遇到想临时分享的情况,就给一条几天后自动失效的链接:
aws s3 presign s3://你的桶/share/报告.pdf --expires-in 604800
7 天有效,打印出来的链接直接发人。
三个要知道的:
(1)链接里能看到桶名、文件路径、AK 的 ID,但看不到 SK。别人拿不到密钥本身,也反推不出来。
(2)有效期内谁拿到谁能下载,所以只发给你想给的人。或者设置合适的过期日期,在确认对方已下载完成后,立即删除链接等。
(3)到期自动失效。等不及就提前 aws s3 rm 把对象删掉。

六、可能会遇到的问题

(1)spawnSync aws ENOENT
字面意思是「找不到 aws 这个程序」。原因是 MCP 服务以服务方式启动,PATH 里没有 ~/bin。改法:把 server.js 里调用 aws 的地方写成绝对路径,比如 /root/bin/aws。
(2) InvalidAccessKeyId
大概率是 AK/SK 抄错了,或者把文档里的示例占位符原样跑了。重新生成一对密钥再试。
(3)上传的文本打开是乱码
对象存储默认不告诉浏览器编码,浏览器只能自己猜,国内手机浏览器常按 GBK 猜。上传时显式指定:
aws s3 cp 说明.txt s3://你的桶/share/说明.txt --content-type "text/plain; charset=utf-8"
PDF、图片同理,MIME 类型给对。
(4)目录名带了前导斜杠
写成如: /openclaw_backup,那么桶里会多出一层空目录。可以直接用 openclaw_backup/。
(5)官方 install.sh 会改 .bashrc,还会往全局装 npm 包。
在意环境干净的话,就不要一键脚本了,可以考虑照第三节那四步自己拆开做。

七、安全建议

(1)桶永远保持私有,只用 presign 链接分享,不开公共读。
(2)~/.aws/credentials 权限设 600,不要提交进任何仓库。
(3)发文件前过一遍内容:姓名、电话、地址、账号、证件、照片 EXIF,能删就删。
(4)云存储毕竟是第三方,重要数据本地留一份。
(给 AI 授权时说清楚:【没我确认不许上传】。这句话写进它的 memory,记忆深刻才有用。
要守的就三条:桶私有、链接限时、上传要授权。
*本文基于 2026-11-02 的实际部署整理。

回首页,搜索你想要的文档

在首页搜索框输入关键词,快速定位资料

文库首页搜索指引 立即搜索

相关学习资料