阿里云ossutil安装与使用

概述

ossutil支持通过Windows、Linux和macOS系统以命令行方式管理OSS数据。

下载并安装ossutil

安装包下载:Linux x86 64bit
1.安装ossutil。

sudo -v ; curl https://gosspublic.alicdn.com/ossutil/install.sh | sudo bash

安装完成后,ossutil会安装到/usr/bin/目录下。
说明
安装过程中,需要使用解压工具(unzip、7z)解压软件包,请提前安装其中的一个解压工具

2.配置ossutil。
2.1输入配置命令。

ossutil config

2.2根据提示设置配置文件路径。

请输入配置文件名,文件名可以带路径(默认为:/home/user/.ossutilconfig,回车将使用默认路径。
如果用户设置为其它路径,在使用命令时需要将–config-file选项设置为该路径)

ossutil默认使用/home/user/.ossutilconfig作为配置文件,若您设置了配置文件的路径,则每次使用命令时需增加-c选项指定配置文件。例如配置文件保存为/home/config,使用ls时,命令格式如下:

ossutil ls oss://examplebucket -c /home/config

2.3根据提示设置工具的语言。请输入语言CH或EN。工具使用的语言默认与操作系统保持一致。该配置项将在此次config命令设置成功后生效。

2.4根据提示分别设置Endpoint、AccessKey ID、AccessKey Secret和STSToken参数。关于参数的更多信息如下:

参数参数说明
endpoint填写Bucket所在地域的Endpoint
accessKeyID填写账号的AccessKey
accessKeySecret填写账号的AccessKey
stsToken用STS临时授权账号访问OSS时需要配置该项,否则置空即可

命令行选项
除了通过命令配置文件外,还可以使用命令行参数设置相关的配置。命令行选项的优先级要高于命令配置文件。常用命令行选项如下:

选项和说明示例代码
–loglevel日志级别,默认为空,表示不输出日志文件。取值:info:输出提示信息日志。debug:输出详细信息日志(包括HTTP请求和响应信息)ossutil64 commandname options --loglevel debug
–connect-timeout表示客户端连接超时的时间,单位为秒,默认值为120。ossutil64 commandname options --connect-timeout 60
–read-timeout表示客户端读超时的时间,单位为秒,默认值为1200。ossutil64 commandname options --read-timeout 60
–retry-times当错误发生时的重试次数,默认值为10
-e, --endpoint 请求的域名。ossutil64 commandname options -e oss-cn-hangzhou.aliyuncs.com

常用命令
ossutil命令的用法:

名称描述说明
access-monitor配置存储空间(Bucket)的访问跟踪状态
appendfromfile用于在已上传的追加类型文件(Appendable Object)末尾直接追加内容
bucket-cname查看Bucket的CNAME配置
bucket-encryption添加、修改、查询、删除Bucket的加密配置
bucket-policy添加、修改、查询、删除Bucket的Bucket policy配置。
bucket-tagging添加、修改、查询、删除Bucket的标签配置。
bucket-versioning添加或查询Bucket的版本控制配置。
cat将文件内容输出到ossutil。
config创建配置文件来存储OSS访问信息。
cors添加、修改、查询、删除Bucket的CORS配置。
cors-options用于测试Bucket是否允许指定的跨域访问请求。
cp简介用于上传、下载、拷贝文件。
create-symlink创建符号链接(软链接)。
du用于获取指定Bucket、指定Object或文件目录所占的存储空间大小。
getallpartsize获取Bucket内所有未完成上传的Multipart任务的每个分片大小以及分片总大小。
hash用于计算本地文件的CRC64或MD5。
help获取命令的帮助信息。当您不清楚某个命令的用法时,建议您使用help命令获取该命令的帮助信息。
inventory命令用于添加、查询、列举、删除Bucket的清单规则。
lifecycle命令用于添加、修改、查询、删除生命周期规则配置。
listpart列出没有完成分片上传的Object的分片信息。
logging添加、修改、查询、删除Bucket的日志管理配置。
lrb列举单个或多个地域(Region)下Bucket的基本信息。
ls列举Bucket、Object和Part。
mb创建Bucket。
mkdir在Bucket内创建文件目录。
object-tagging添加、修改、查询或删除Object的标签配置。
probe针对OSS访问的检测命令,可用于排查上传、下载过程中因网络故障或基本参数设置错误导致的问题。
read-symlink读取符号链接(软链接)文件的描述信息。
referer添加、修改、查询、删除Bucket的防盗链配置。
replication管理Bucket的跨区域复制规则配置。
request-payment设置或查询Bucket的请求者付费模式配置。
restore恢复冷冻状态的Object为可读状态。
revert-versioning将已删除的Object恢复至最近的版本。
rm(删除)删除Bucket、Object和Part。
set-acl设置Bucket或Object的访问权限(ACL)。
set-meta设置已上传Object的元信息。
sign用于生成经过签名的文件URL,并将签名URL分享给第三方供其下载或预览。
stat获取指定Bucket或Object的描述信息。
sync简介用于同步本地文件到OSS、同步OSS文件到本地、在OSS之间同步文件。
update用于更新ossutil版本。
website用于添加、修改、查询、删除Bucket的静态网站托管配置、重定向配置、镜像回源配置。
worm管理Bucket的合规保留策略。

错误码全解析

203错误

CallbackFailed
Get image info failed
错误原因:OSS未能成功获取到图片信息,该图片可能上传失败或已被删除。
解决方案:
图片上传失败,请调用PutObject接口重新上传。
检查请求的图片是否触发了生命周期配置的删除规则,或者确认其他具有合法权限的用户是否删除了请求的图片。

Too many callback requests
错误原因:OSS正在处理的Callback请求过多。
解决方案:请稍后重试。

Cost too long time
错误原因:回调服务器处理时间超过5秒,OSS将其判断为超时行为。
解决方案:建议回调服务器的处理逻辑修改为异步,保证在5秒内处理完毕并将结果返回OSS。

Response body is not valid json format
错误原因:回调服务器返回给OSS的Body不为JSON格式。
解决方案:请参见上传回调中的常见错误及分析处理进行排查。

Error Status : 400.User server return too long content-length value
错误原因:应用服务器返回OSS的响应中没有携带Content-Length的Header,Body大小超过1 MB。
解决方案:
应用服务器返回OSS的响应中必须携带Content-Length的Header,且Body大小不允许超过1 MB。

例如,如下返回示例中携带了Content-Length的Header,且Body为{“a”:“b”},大小不超过1 MB。

HTTP/1.0 200 OK
Server: BaseHTTP/0.3 Python/2.7.6
Date: Mon, 14 Sep 2015 12:37:27 GMT
Content-Type: application/json
Content-Length: 9
{"a":"b"}

Error Status : -1.OSS can not connect to your callbackUrl, please check it
错误原因:OSS无法访问用户的应用服务器。
解决方案:请检查用户的应用服务器是否能正常运行,且与OSS之间的网络通讯是否正常。

Error Status : 400.User server missing content-length
错误原因:应用服务器返回OSS的响应中没有携带Content-Length的Header。
解决方案:应用服务器返回OSS的响应中必须携带Content-Length的Header。

Error Status : 400.User server return invalid content-length value
错误原因:应用服务器返回OSS的响应中没有携带Content-Length的Header,或者Content-Length的值不为正整数。
解决方案:
应用服务器返回OSS的响应中必须携带Content-Length的Header,且Content-Length的值必须为正整数。

例如,如下返回示例中携带了Content-Length的Header,且Content-Length的值为正整数9。

HTTP/1.1 200 OK
Date: Mon, 14 Sep 2015 12:37:27 GMT
Content-Type: application/json
Content-Length: 9
Connection: keep-alive
ETag: "D8E8FCA2DC0F896FD7CB4CB0031B****"
Server: AliyunOSS
x-oss-bucket-version: 1442231779
x-oss-request-id: 55F6BF87207FB30F2640****
{"a":"b"}

更多HTTP错误码请点击这~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

haixiangwang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值