/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
ossutil工具一款官方命令行管理工具,支持Windows, Linux, Mac平台,不依赖于任何第三方组件,下载后即用不需要安装。ossutil工具旨在为用户提供一个方便的,以命令行方式管理OSS数据的途径。
Windows系统(以64位系统为例)
下载工具。
将工具解压到指定的文件夹,并双击运行ossutil.bat文件。
生成配置文件,配置参数参考Linux系统的配置参数。
D:\ossutil>ossutil64.exe config
根据您的操作系统选择相应的binary或者压缩包下载后,运行相应的binary(如果binary为不可执行文件,请给binary增加可执行权限:chmod 755 ossutil),即:
linux系统下:
./ossutil
windows系统下有两种方法(以64位系统为例):
1) 解压压缩包,双击运行其中的bat文件,再键入:ossutil64.exe
2)解压压缩包,cmd进入压缩包中binary所在的目录,键入:ossutil64.exe
通过ossutil,您可以进行如下操作:
管理Bucket,如:创建、列举或删除Bucket等。
管理Object,如:上传、下载、列举、拷贝和删除Object等。
管理碎片(part),如:列举和删除part等。
设置ossutil的语言
在使用ossutil的命令时,可以使用-L选项设置语言,可选范围为CH/EN,即:中文或英文。大小写不敏感。默认语言为CH(中文),如果设置成CH(中文),需要确保您的系统为utf-8编码,否则可能会显示乱码。
如:
./ossutil help ls显示ls默认语言的帮助
./ossutil help ls -L ch 显示ls的中文帮助
./ossutil help ls -L en 显示ls的英文帮助
./ossutil config -L ch 运行ossutil config的交互式配置命令,其中的提示语言为中文。
./ossutil config -L en 运行ossutil config的交互式配置命令,其中的提示语言为英文。
注意:ossutil输出的错误默认都为英文,不会受上述选项影响。
本文介绍在使用ossutil时可能出现的问题及处理方法。
使用-u参数上传文件时出现skip提示
问题分析:使用-u参数上传文件的时候,ossutil会将上传文件和存储空间(Bucket)内已有文件进行一次比对。若发现上传的文件与目标Bucket内已有文件同名,且该文件的最后修改时间早于或等于Bucket内已有文件,上传时会跳过该文件;若该文件的最后修改时间晚于Bucket内已有文件,则重新上传该文件。所以使用-u参数上传文件时出现skip提示是正常现象。
解决方案:确认Bucket内文件上传无问题后忽略该提示。
文件解冻时出现403报错
问题分析:操作解冻文件的过程中出现403,有以下两种可能性。
若您是使用子账号操作文件,可能是子账号权限不足,无目标文件的操作权限。
您文件内容违禁OSS被封禁了。
解决方案:
子账号权限不足:增加子账号权限。
文件内容违禁:删除或忽略该文件。
使用ls命令查看Bucket无文件,删除Bucket时报错
问题分析:使用ls命令列举Bucket内的文件且未携带任何选项时,无法列举碎片、历史版本文件(仅存在于开启过版本控制的Bucket)。若Bucket为非空(即Bucket中存在碎片、历史版本文件),仅使用rm命令无法删除该Bucket。
解决方案:
先删除碎片和历史版本文件(未开启过版本控制请忽略),再删除Bucket。
删除碎片和历史版本文件。
列举并删除碎片:
./ossutil ls oss://bucket1 -m
./ossutil rm -m oss://bucket1 -r
列举并删除历史版本文件:
./ossutil ls oss://bucket1 --all-versions
./ossutil rm oss://bucket1 --all-versions -r
删除Bucket。
./ossutil rm oss://bucket1 -b
强制删除Bucket。
若存储空间未开启版本控制,使用如下命令强制删除Bucket:
./ossutil rm oss://bucketname -abrf
若存储空间已开启版本控制,使用如下命令强制删除Bucket:
./ossutil rm oss://bucketname -abrf --all-versions
警告 Bucket及文件被删除后,无法恢复,请谨慎使用该命令。
文件上传、下载进度超过100%
问题分析:ossutil在上传、下载文件时,会自动生成一个名为.ossutil_checkpoint文件夹。当目标文件超过100 MB时,ossutil默认使用断点续传上传或下载目标文件,并将过程中生成的断点信息文件保存在.ossutil_checkpoint文件夹中。上传、下载任务完成后,会自动删除这个文件夹。若单机运行超过一个ossutil实例,且都在进行上传或下载任务,当其中一个ossutil的任务完成后,会自动删除.ossutil_checkpoint文件夹,导致其它需要使用断点续传的ossutil任务进度超过100%且无法完成。
解决方案:
将当前任务结束,重新开始上传、下载任务。
在cp命令中加上--checkpoint-dir参数,并手动指定一个与默认checkpoint文件夹不同名的文件夹。例如:
./ossutil cp oss://bucket1/myphoto.jpg /dir --checkpoint-dir checkpoint