华为云用户手册

  • 参数说明 参数 约束 描述 srcbucket 必选 源桶名。 dstbucket 必选 目标桶名。 dest 可选 复制对象时的目标对象名,或批量复制时目标对象名前缀。 key 复制对象时必选 批量复制时可选 复制对象时的源对象名,或批量复制时源对象名前缀。 规则如下: 复制对象时,该值不能为空;如果dest为空,则将源对象复制到目标桶的根目录;如果dest以“/”结尾,则目标对象名为dest+源对象名;否则,目标对象名为dest; 批量复制时,如果该值为空,则复制源桶中的所有对象;否则,复制源桶中以该值为对象名前缀的所有对象。目标对象名的确认规则为: 如果dest以“/”结尾,目标对象名为dest+源对象名; 如果dest不以“/”结尾,目标对象名为dest+/+源对象名。 说明: 批量复制且该值不为空时,如果未设置flat选项,则复制时源对象名会包含上一级父对象名前缀;如果设置了flat选项,则复制时源对象名不包含上一级父对象名前缀。 请参考复制示例理解该参数的使用方式。 fr 附加参数,复制对象时可选 复制对象时生成结果清单文件。 flat 附加参数,批量复制时可选 批量复制时,不包含上一级父对象名前缀。 dryRun 附加参数,可选 测试模式运行,不执行实际的复制操作。 crr 附加参数,可选 复制时使用客户端跨区域复制模式,以通过数据流的方式从源桶直接复制数据到目标桶,且两个桶可以是任意两个OBS服务的桶。 说明: 如果设置了该参数,必须确保更新了配置文件中客户端跨区域复制的相关配置信息,具体可参考更新配置文件。 复制时源桶对应的配置信息为配置文件中的:akCrr/skCrr/tokenCrr/endpointCrr,目标桶对应的配置信息为配置文件中的:ak/sk/token/endpoint。 须知: 开启跨区域复制后,因为会占用执行命令主机上传和下载的双向带宽、CPU和内存等资源,可能会影响执行命令主机的性能。 vlength 附加参数,可选 复制完成后,验证目标桶对象大小是否与源桶中对象的大小一致。 说明: 必须与crr参数配合使用。 vmd5 附加参数,可选 复制完成后,验证目标桶的MD5值是否与源桶中对象的MD5值一致。 说明: 必须与crr参数配合使用。 源桶中对象必须包含元数据x-obs-meta-md5chksum,否则会忽略MD5值校验。 MD5值校验通过后,会将该值设置为目标对象元数据x-obs-meta-md5chksum,用于下载或复制时校验MD5。 注意: 如果您的业务涉及加密场景,请勿使用该参数。 u 附加参数,可选 增量复制操作,设置该参数后,复制每个源对象时会对比目标桶中对应路径的目标对象,仅在目标对象不存在,或者目标对象大小与源对象大小不一致,或者目标对象的最后修改时间早于源对象的最后修改时间时进行复制。 p 附加参数,可选 每个分段复制任务的最大并发数,默认为配置文件中的defaultParallels。 threshold 附加参数,可选 开启分段复制任务的阈值,单位:字节,默认为配置文件中的defaultBigfileThreshold。 说明: 如果待复制的源对象小于该阈值,则使用直接复制模式;否则使用分段复制模式。 直接复制模式不会产生断点记录文件,不支持断点续传。 支持带容量单位配置,例如,配置1MB代表1048576字节。 versionId 附加参数,复制对象时可选 复制单个对象时可指定的源对象版本号。 acl 附加参数,可选 复制对象时可指定的目标对象的预定义访问策略。支持的值: private public-read public-read-write bucket-owner-full-control 说明: 以上四个值分别对应:私有读写、公共读、公共读写、桶拥有者完全控制,四种预定义访问策略。 sc 附加参数,可选 复制对象时可指定的目标对象的存储类型。支持的值: standard:标准存储,访问时延低、吞吐量高,适用于有大量热点文件(平均一个月多次)或小文件(小于1MB)。 warm:低频访问存储,可用性略低于standard,适用于不频繁访问(平均一年少于12次)但在需要时也要求快速访问数据的业务场景。 cold:归档存储,安全、持久且成本极低,适用于很少访问(平均一年访问一次)数据的业务场景。 meta 附加参数,可选 复制对象时可指定的目标对象的标准和自定义元数据。格式为:key1:value1#key2:value2#key3:value3。 说明: 以上值表示复制对象完成后,桶内目标对象包含三组自定义元数据,分别为:key1:value1、key2:value2、key3:value3。 标准元数据头包括:Content-Type、Content-Encoding、Cache-Control、Content-Disposition、Content-Language、Expires。 fs 附加参数,可选 是否使用并行文件系统的列举方式,如果桶是并行文件系统,推荐加上该参数。 注意: 该列举方式会因为目录结构,耗时会差别很大。 该参数开启后,会忽略marker和limit值,统计桶或者并行文件系统或者指定目录的大小。 Util 5.5.12版本及以上支持该参数。 ps 附加参数,可选 每个分段复制任务的段大小,单位:字节,取值范围是100KB~5GB,默认为配置文件中的defaultPartSize。 说明: 支持带容量单位配置,例如,配置1MB代表1048576字节。 支持配置为auto,此时obsutil会根据源对象大小自动设置每个分段任务的段大小。 cpd 附加参数,可选 生成断点记录文件的文件夹,默认为运行obsutil命令的用户目录的子文件夹.obsutil_checkpoint。 说明: 每个分段复制任务会产生唯一对应的断点记录文件并保存至该文件夹的copy子文件夹下,分段任务执行成功后,对应的断点记录文件会被自动删除;分段任务执行失败或被中断后,下次执行该分段任务时会尝试通过对应的断点记录文件恢复任务。 r 附加参数,批量复制时必选 按指定源桶的对象名前缀批量复制对象。 f 附加参数,批量复制时可选 强制操作,不进行询问提示。 j 附加参数,批量复制时可选 批量复制时的最大并发数,默认为配置文件中的defaultJobs。 说明: 工具会保证该值至少为1。 exclude 附加参数,批量复制时可选 不包含源对象的匹配模式,如:*.txt。 说明: 支持“*”匹配多个任意字符和“?”匹配单个任意字符,例如abc*.txt代表匹配以abc开头以.txt结尾的任意文件。 您可以使用“\*”代表匹配“*”字符本身,使用“\?”代表匹配“?”字符本身。 如果待复制的对象名匹配该参数,则跳过该对象的复制。 须知: 建议使用引号传递该匹配模式( macOS/Linux操作系统使用单引号,Windows操作系统使用双引号)防止特殊符号被操作系统转义,导致不可预期的结果。 该匹配模式作用于对象全路径(含从根路径开始的对象前缀和对象名,例如,桶内对象路径为obs://bucket/src1/src2/test.txt,则对象的全路径为src1/src2/test.txt)。 该匹配模式仅适用于对象名非“/”结尾的对象。 支持指定多个exclude参数,如 -exclude=*.xxx -exclude=*.xxx。 include 附加参数,批量复制时可选 包含源对象的匹配模式,如:*.jpg。 说明: 支持“*”匹配多个任意字符和“?”匹配单个任意字符。 您可以使用“\*”代表匹配“*”字符本身,使用“\?”代表匹配“?”字符本身。 首先执行exclude的匹配规则,如果待复制的对象名不匹配exclude,则判断待复制的对象名是否匹配该参数,如果匹配则复制该对象,否则跳过该文件的复制。 须知: 建议使用引号传递该匹配模式(macOS/Linux操作系统使用单引号,Windows操作系统使用双引号)防止特殊符号被操作系统转义,导致不可预期的结果。 该匹配模式作用于对象全路径(含从根路径开始的对象前缀和对象名,例如,桶内对象路径为obs://bucket/src1/src2/test.txt,则对象的全路径为src1/src2/test.txt)。 该匹配模式仅适用于对象名非“/”结尾的对象。 支持指定多个include参数,如-include=*.xxx -include=*.xxx。 timeRange 附加参数,批量复制时可选 复制对象时的时间段匹配模式,仅复制最后修改时间在该时间段内的对象。 该匹配模式优先级低于对象名匹配模式:exclude和include,优先执行对象名匹配模式后才会执行该匹配模式。 说明: 使用“time1-time2”,代表匹配的时间段,其中time1必须小于等于time2,格式为yyyyMMddHHmmss。 时间格式支持自动补全,例如yyyyMMdd等价于yyyyMMdd000000,yyyyMM等价于yyyyMM01000000。 使用“*-time2”,代表匹配最后修改时间在time2之前的所有文件,使用“time1-*”,代表匹配最后修改时间time1之后的所有文件。 须知: 该匹配模式表示的时间是UTC时间。 该匹配模式仅适用于对象名非“/”结尾的对象。 mf 附加参数,可选 设置名称匹配模式(include、exclude)和时间匹配模式(timeRange)对对象名以“/”结尾的对象也生效。 o 附加参数,可选 生成结果清单文件的文件夹,命令执行完成后,会在该文件夹下生成结果清单文件(可能包含成功结果、失败结果和警告结果三个文件),默认为运行obsutil命令的用户目录的子文件夹.obsutil_output。 说明: 结果清单文件命名规则:cp_{succeed | failed | warning}_report_时间_TaskId.txt。 单个结果清单文件默认情况下最大为30MB且最大可保留的文件个数为1024,可在配置文件中通过recordMaxLogSize和recordBackups分别配置。 当涉及多文件/文件夹时,如需确认失败任务的具体错误信息,可参考结果清单文件夹下的失败结果清单文件"cp_failed_report_时间_TaskId.txt"及日志路径下的日志文件。 config 附加参数,可选 运行当前命令时的自定义配置文件,可支持的配置参数请参考配置参数说明。 e 附加参数,可选 指定终端节点。 i 附加参数,可选 指定用户的AK。 k 附加参数,可选 指定用户的SK。 t 附加参数,可选 指定用户的securitytoken。
  • 功能说明 复制对象或按对象名前缀批量复制对象。 复制对象或批量复制时,请确保OBS桶中的源对象不发生变化,否则可能产生复制失败或者数据不一致的问题。 如果被复制对象的存储类型为cold,必须首先恢复被复制对象,否则无法复制成功。 复制时需要有被复制对象的读权限和目标桶的写权限。 如果没有开启客户端跨区域复制模式,复制的源桶和目标桶必须在同一个区域(Region)。 如果源桶是并行文件系统(POSIX),则目标桶不能是非并行文件系统。
  • 命令结构 Windows操作系统 复制单个对象 obsutil cp obs://srcbucket/key obs://dstbucket/[dest] [-dryRun][-u] [-crr] [-vlength] [-vmd5] [-p=1] [-threshold=52428800] [-versionId=xxx] [-acl=xxx] [-sc=xxx] [-meta=aaa:bbb#ccc:ddd] [-ps=auto] [-cpd=xxx] [-fr] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] 批量复制对象 obsutil cp obs://srcbucket[/key] obs://dstbucket[/dest] -r [-dryRun][-f] [-flat] [-u] [-crr] [-vlength] [-vmd5] [-j=1] [-p=1] [-threshold=52428800] [-acl=xxx] [-sc=xxx] [-meta=aaa:bbb#ccc:ddd] [-ps=auto] [-include=*.xxx] [-exclude=*.xxx] [-timeRange=time1-time2] [-mf] [-o=xxx] [-cpd=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] macOS/Linux操作系统 复制单个对象 ./obsutil cp obs://srcbucket/key obs://dstbucket/[dest] [-dryRun] [-u] [-crr] [-vlength] [-vmd5] [-p=1] [-threshold=52428800] [-versionId=xxx] [-acl=xxx] [-sc=xxx] [-meta=aaa:bbb#ccc:ddd] [-ps=auto] [-cpd=xxx] [-fr] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] 批量复制对象 ./obsutil cp obs://srcbucket[/key] obs://dstbucket[/dest] -r [-dryRun] [-f] [-flat] [-u] [-crr] [-vlength] [-vmd5] [-j=1] [-p=1] [-threshold=52428800] [-acl=xxx] [-sc=xxx] [-meta=aaa:bbb#ccc:ddd] [-ps=auto] [-include=*.xxx] [-exclude=*.xxx] [-timeRange=time1-time2] [-mf] [-o=xxx] [-cpd=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
  • 运行示例 以Windows操作系统为例,运行obsutil help mb,查看创建桶命令的帮助文档。 obsutil help mb Summary: create a bucket with the specified parameters Syntax: obsutil mb obs://bucket [-acl=xxx] [-location=xxx] [-fs] [-az=xxx] [-sc=xxx] [-config=xxx] [-i=xxx] [-k=xxx] [-t=xxx] [-e=xxx] Options: -fs create a bucket that supports POSIX -az=xxx the AZ of the bucket, possible values are [multi-az] -sc=xxx the default storage class of the bucket, possible values are [standard|warm|cold|deep-archive] -acl=xxx the ACL of the bucket, possible values are [private|public-read|public-read-write] -location=xxx the region where the bucket is located -epid=xxx the enterprise project id of the bucket -kms=xxx the encryption id of the bucket -config=xxx the path to the custom config file when running this command -e=xxx endpoint -i=xxx access key ID -k=xxx security key ID -t=xxx security token 摘要: 按照用户指定的桶名和参数创建一个新桶 语法: obsutil mb obs://bucket [-fs] [-az=xxx] [-acl=xxx] [-sc=xxx] [-location=xxx] [-config=xxx] 选项: -fs 创建支持文件接口(POSIX)的桶 -az=xxx 创桶时可指定的可用区。支持的值:[multi-az] -acl=xxx 创桶时可指定的预定义访问策略。支持的值:[private|public-read|public-read-write] -sc=xxx 创桶时可指定的桶的默认存储类型。支持的值:[standard|warm|cold] -location=xxx 桶所在的区域 -config=xxx 运行当前命令时的自定义配置文件
  • 参数说明 参数 约束 描述 command 可选 查看某个具体命令的帮助文档,当前支持的命令如下: abort,删除分段上传任务 chattri,设置对象属性 cp,上传对象、复制对象、下载对象 ls,列举桶、列举对象、列举分段上传任务 mb,创建桶 mkdir,创建文件夹 mv,移动对象 restore,恢复归档存储对象 rm,删除桶、删除对象 sign,生成对象的下载链接 stat,查询桶属性、查询对象属性 sync,增量同步上传对象、增量同步复制对象、增量同步下载对象 archive,归档日志文件 clear,删除断点记录文件 config,更新配置文件 help,查看命令帮助 version,查看版本号
  • 运行示例 以Windows操作系统为例,运行obsutil rm obs://bucket-test,删除bucket-test桶。 obsutil rm obs://bucket-test Start at 2024-09-30 07:58:33.736622 +0000 UTC Do you want to delete bucket [bucket-test] ? Please input (y/n) to confirm: y Delete bucket [bucket-test] successfully!
  • 参数说明 参数 约束 描述 authorization_code 或 file://authorization_code_file_url 必选 授权码。 说明: 如果以“file://”开头,则表明授权码是从本地文件中获取。 file_or_folder_url 下载对象时必选 本地文件/文件夹路径。 folder_url 批量下载时必选 本地文件夹路径。 key 附加参数,下载对象时必选 批量下载时可选 待下载的对象名,或批量下载的对象名前缀。 下载对象时,该值不能为空,最终保存在本地的位置及命名规则如下: 如果file_or_folder_url不存在,则工具会判断其是否以“/”或“\”结尾,如果是,则会以该路径创建文件夹,将对象下载到该新建的文件夹下; 如果file_or_folder_url不存在,且不以“/”或“\”结尾,则以该值作为文件名,将对象下载到本地; 如果file_or_folder_url为已存在的文件,则以该值作为文件名,将对象覆盖下载到本地; 如果file_or_folder_url为已存在的文件夹,则以对象名为文件名,将对象覆盖下载到file_or_folder_url指定的文件夹下。 批量下载时,最终保存在本地的位置规则如下: 如果该值为空,则表示将授权码中授权路径下的所有对象下载到folder_url指定的文件夹下; 如果该值不为空,则将桶内以该值作为对象名前缀的内容下载到folder_url指定的文件夹下。 说明: 如果该值不为空,其必须是授权码中授权路径的子集; 批量下载且该值不为空时,如果未设置flat选项,则下载的本地文件会包含上一级父对象名前缀;如果设置了flat选项,则下载的本地文件不包含上一级父对象名前缀。 须知: 批量下载时,如果设置了flat选项,且如果创建授权码时的对象名前缀为空或者不以“/”结尾,则可能导致下载的对象列表为空。 ac 附加参数,可选 提取码。 说明: 如果未使用该参数设置提取码,obsutil工具会以交互模式提示输入提取码; 提取码必须为6位。 r 附加参数,批量下载时必选 按指定的对象名前缀批量下载对象。 fr 附加参数,下载对象时可选 下载对象时生成结果清单文件。 flat 附加参数,批量下载时可选 批量下载时,不包含上一级父对象名前缀。 tempFileDir 附加参数,可选 分段下载时保存临时文件的文件夹,默认为配置文件中的defaultTempFileDir。 说明: 如果该值为空,且配置文件中的defaultTempFileDir也为空,则分段下载时生成的临时文件会保存在待下载文件的同目录下并以.obs.temp结尾。 由于分段下载时生成的临时文件会保存在该目录,请确保运行obsutil的用户对该路径有写权限; 该路径的可用空间需要大于待下载对象的大小。 dryRun 附加参数,可选 测试模式运行,不执行实际的下载操作。 u 附加参数,可选 增量下载操作,设置该参数后,下载每个对象时会对比本地对应路径的文件,仅在文件不存在,或者文件大小与对象大小不一致,或者文件的最后修改时间早于对象的最后修改时间时进行下载。 注意: 在比较每个本地文件与桶内对象差异时,会产生一次HEAD请求费用。 vlength 附加参数,可选 下载完成后,验证本地文件大小是否与桶中对象的大小一致。 vmd5 附加参数,可选 下载完成后,验证本地文件的MD5值是否与桶中对象的MD5值一致。 说明: 桶中对象必须包含元数据x-obs-meta-md5chksum,否则会忽略MD5值校验。 注意: 如果您的业务涉及加密场景,请勿使用该参数。 p 附加参数,可选 每个分段下载任务的最大并发数,默认为配置文件中的defaultParallels。 threshold 附加参数,可选 开启分段下载任务的阈值,单位:字节,默认为配置文件中的defaultBigfileThreshold。 说明: 如果待下载的对象小于该阈值,则使用直接下载模式;否则使用分段下载模式; 直接下载模式不会产生断点记录文件,不支持断点续传; 支持带容量单位配置,例如,配置1MB代表1048576字节。 ps 附加参数,可选 每个分段下载任务的段大小,单位:字节,默认为配置文件中的defaultPartSize。 说明: 支持带容量单位配置,例如,配置1MB代表1048576字节; 支持配置为auto,此时obsutil会根据源对象大小自动设置每个分段任务的段大小。 cpd 附加参数,可选 生成断点记录文件的文件夹,默认为运行obsutil命令的用户目录的子文件夹.obsutil_checkpoint。 说明: 每个分段下载任务会产生唯一对应的断点记录文件并保存至该文件夹的down子文件夹下,分段任务执行成功后,对应的断点记录文件会被自动删除;分段任务执行失败或被中断后,下次执行该分段任务时会尝试通过对应的断点记录文件恢复任务。 f 附加参数,批量下载时可选 强制操作,不进行询问提示。 j 附加参数,批量下载时可选 批量下载时的最大并发数,默认为配置文件中的defaultJobs。 说明: 工具会保证该值至少为1。 exclude 附加参数,批量下载时可选 不包含源对象的匹配模式,如:*.txt。 说明: 支持“*”匹配多个任意字符和“?”匹配单个任意字符,例如abc*.txt代表匹配以abc开头以.txt结尾的任意文件; 您可以使用“\*”代表匹配“*”字符本身,使用“\?”代表匹配“?”字符本身; 如果待下载的对象名匹配该参数,则跳过该对象的复制; 须知: 建议使用引号传递该匹配模式(macOS/Linux操作系统使用单引号,Windows操作系统使用双引号)防止特殊符号被操作系统转义,导致不可预期的结果; 该匹配模式作用于对象全路径(含从根路径开始的对象前缀和对象名,例如,桶内对象路径为obs://bucket/src1/src2/test.txt,则对象的全路径为src1/src2/test.txt); 该匹配模式仅适用于对象名非“/”结尾的对象; 支持指定多个exclude参数,如-exclude=*.xxx -exclude=*.xxx include 附加参数,批量下载时可选 包含源对象的匹配模式,如:*.jpg。 说明: 支持“*”匹配多个任意字符和“?”匹配单个任意字符; 您可以使用“\*”代表匹配“*”字符本身,使用“\?”代表匹配“?”字符本身; 首先执行exclude的匹配规则,如果待下载的对象名不匹配exclude,则判断待下载的对象名是否匹配该参数,如果匹配则下载该对象,否则跳过该文件的下载。 须知: 建议使用引号传递该匹配模式(macOS/Linux操作系统使用单引号,Windows操作系统使用双引号)防止特殊符号被操作系统转义,导致不可预期的结果。 该匹配模式作用于对象全路径(含从根路径开始的对象前缀和对象名,例如,桶内对象路径为obs://bucket/src1/src2/test.txt,则对象的全路径为src1/src2/test.txt)。 该匹配模式仅适用于对象名非“/”结尾的对象。 支持指定多个include参数,如-include=*.xxx -include=*.xxx timeRange 附加参数,批量下载时可选 下载对象时的时间段匹配模式,仅下载最后修改时间在该时间段内的对象。 该匹配模式优先级低于对象名匹配模式:exclude和include,优先执行对象名匹配模式后才会执行该匹配模式。 说明: 使用“time1-time2”,代表匹配的时间段,其中time1必须小于等于time2,格式为yyyyMMddHHmmss。 时间格式支持自动补全,例如yyyyMMdd等价于yyyyMMdd000000,yyyyMM等价于yyyyMM01000000。 使用“*-time2”,代表匹配最后修改时间在time2之前的所有文件,使用“time1-*”,代表匹配最后修改时间time1之后的所有文件。 须知: 该匹配模式表示的时间是UTC时间。 该匹配模式仅适用于对象名非“/”结尾的对象。 mf 附加参数,可选 设置名称匹配模式(include、exclude)和时间匹配模式(timeRange)对对象名以“/”结尾的对象也生效。 o 附加参数,可选 生成结果清单文件的文件夹,命令执行完成后,会在该文件夹下生成结果清单文件(可能包含成功结果、失败结果和警告结果三个文件),默认为运行obsutil命令的用户目录的子文件夹.obsutil_output。 说明: 结果清单文件命名规则:share-cp_{succeed | failed | warning}_report_时间_TaskId.txt。 单个结果清单文件默认情况下最大为30MB且最大可保留的文件个数为1024,可在配置文件中通过recordMaxLogSize和recordBackups分别配置。 当涉及多文件/文件夹时,如需确认失败任务的具体错误信息,可参考结果清单文件夹下的失败结果清单文件及日志路径下的日志文件; config 附加参数,可选 运行当前命令时的自定义配置文件,可支持的配置参数请参考配置参数说明。 e 附加参数,可选 指定终端节点。 i 附加参数,可选 指定用户的AK。 k 附加参数,可选 指定用户的SK。 t 附加参数,可选 指定用户的securitytoken。
  • 命令结构 Windows操作系统 直接输入授权码下载单个对象 obsutil share-cp authorization_code file_or_folder_url -key=xxx [-ac=xxx] [-dryRun] [-tempFileDir=xxx] [-u] [-vlength] [-vmd5] [-p=1] [-threshold=52428800] [-ps=auto] [-cpd=xxx][-fr] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] 使用文件路径传入授权码下载单个对象 obsutil share-cp file://authorization_code_file_url file_or_folder_url -key=xxx [-ac=xxx] [-dryRun] [-tempFileDir=xxx] [-u] [-vlength] [-vmd5] [-p=1] [-threshold=52428800] [-ps=auto] [-cpd=xxx][-fr] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] 直接输入授权码批量下载对象 obsutil share-cp authorization_code folder_url -r [-key=xxx] [-ac=xxx] [-dryRun] [-tempFileDir=xxx] [-f] [-u] [-vlength] [-vmd5] [-flat] [-j=1] [-p=1] [-threshold=52428800] [-ps=auto] [-include=*.xxx] [-exclude=*.xxx] [-timeRange=time1-time2] [-mf] [-o=xxx] [-cpd=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] 使用文件路径传入授权码批量下载对象 obsutil share-cp file://authorization_code_file_url folder_url -r [-key=xxx] [-ac=xxx] [-dryRun] [-tempFileDir=xxx] [-f] [-u] [-vlength] [-vmd5] [-flat] [-j=1] [-p=1] [-threshold=52428800] [-ps=auto] [-include=*.xxx] [-exclude=*.xxx] [-timeRange=time1-time2] [-mf] [-o=xxx] [-cpd=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] macOS/Linux操作系统 直接输入授权码下载单个对象 ./obsutil share-cp authorization_code file_or_folder_url -key=xxx [-ac=xxx] [-dryRun] [-tempFileDir=xxx] [-u] [-vlength] [-vmd5] [-p=1] [-threshold=52428800] [-ps=auto] [-cpd=xxx][-fr] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] 使用文件路径传入授权码下载单个对象 ./obsutil share-cp file://authorization_code_file_url file_or_folder_url -key=xxx [-ac=xxx] [-dryRun] [-tempFileDir=xxx] [-u] [-vlength] [-vmd5] [-p=1] [-threshold=52428800] [-ps=auto] [-cpd=xxx][-fr] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] 直接输入授权码批量下载对象 ./obsutil share-cp authorization_code folder_url -r [-key=xxx] [-ac=xxx] [-dryRun] [-tempFileDir=xxx] [-f] [-u] [-vlength] [-vmd5] [-flat] [-j=1] [-p=1] [-threshold=52428800] [-ps=auto] [-include=*.xxx] [-exclude=*.xxx] [-timeRange=time1-time2] [-mf] [-o=xxx] [-cpd=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] 使用文件路径传入授权码批量下载对象 ./obsutil share-cp file://authorization_code_file_url folder_url -r [-key=xxx] [-ac=xxx] [-dryRun] [-tempFileDir=xxx] [-f] [-u] [-vlength] [-vmd5] [-flat] [-j=1] [-p=1] [-threshold=52428800] [-ps=auto] [-include=*.xxx] [-exclude=*.xxx] [-timeRange=time1-time2] [-mf] [-o=xxx] [-cpd=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
  • 命令结构 Windows操作系统 obsutil bucketpolicy obs://bucket -method=delete [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] macOS/Linux操作系统 ./obsutil bucketpolicy obs://bucket -method=delete [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
  • 运行示例 以Windows操作系统为例,运行obsutil bucketpolicy obs://bucket -method=delete,指定删除桶bucket的桶策略。 obsutil bucketpolicy obs://bucket -method=delete Start at 2024-09-30 08:09:29.6396262 +0000 UTC Delete bucketPolicy succeed, requestId is [04050000016836C5DA6FB21F14A2A0C0]
  • i/o timout、EOF错误原因定位及解决 i/o timeout、EOF报错是两种常见的因为网络原因导致请求失败的场景,通常是由于网络波动等原因导致;常见的定位思路包括: 通过ping桶 域名 (bucketName.endpoint)判断本地到指定访问的桶域名之间的网络是否不通;如果不通优先排查本地网络问题。 如果问题出现概率较大,且域名可以ping通的情况下,可以通过修改endpoint为http协议后采用抓包软件进行网络抓包,抓包后可以具体分析实际网络链路中是否存在丢包等问题从而针对性解决。 解决思路: 在网络不通的情况下优先解决本地网络问题;如需配置代理可以参考为obsutil配置HTTP代理。 在偶现该问题的情况下,可以考虑重试命令以规避该问题;针对上传/下载/复制等场景,可以在执行cp时指定-u参数进行增量上传,可以避免重试批量任务中已经成功完成的部分任务。 在网络情况不理想的场景下,针对上传/下载/复制等场景,可以考虑适当减小defaultParallels(-p)和defaultJobs(-j)参数来降低整体的并发任务数量,减少问题出现的概率。 父主题: 常见问题
  • 指定obsutil上传下载时进行限速 obsutil支持通过在配置文件.obsutilconfig中配置rateLimitThreshold参数实现对上传/下载操作进行限速。 参数具体描述可参考配置参数说明,默认不指定即不进行限速,此时具体的上传/下载速度取决于用户侧的实际网络带宽及上传/下载任务的并发配置,具体调优方案可以参考obsutil性能调优最佳实践。 需要注意的是,rateLimitThreshold参数指定的是obsutil任务的全局限速,这意味着当使用cp、sync等命令进行批量文件的上传/下载时,最终的实际上传/下载速度上限仍然为rateLimitThreshold指定的阈值而不是批量任务的并发任务数*rateLimitThreshold。 父主题: 最佳实践
  • 删除桶内全部分段上传任务 本章节案例中的所有命令均以Linux操作系统为例,提供删除桶内全部分段上传操作指导。 假设bucket-test桶内包含如下分段上传任务: obs://bucket-test/task1.txt uploadid1 obs://bucket-test/task1.txt uploadid2 obs://bucket-test/task2.txt uploadid3 obs://bucket-test/task3.txt uploadid4 obs://bucket-test/src1/ obs://bucket-test/src1/task4.txt uploadid5 obs://bucket-test/src2/ obs://bucket-test/src2/task5.txt uploadid6 可以使用如下命令一次性删除桶内全部分段上传任务的碎片: ./obsutil abort obs://bucket-test -r -f 父主题: 常见示例
  • 参数说明 参数 约束 描述 recover 附加参数,必选 待恢复下载任务结果清单文件的任务号。 说明: 任务号(TaskId)可在每次下载任务运行完毕后获取,或者通过结果清单文件名查询(文件名除去后缀.txt后的后36位)。 待恢复的下载任务会从结果清单的文件夹中查找,结果清单文件夹的路径参考附加参数o。 tempFileDir 附加参数,可选 下载时保存临时文件的文件夹,默认为配置文件中的defaultTempFileDir。 说明: 由于分段下载时生成的临时文件会保存在该目录,请确保运行obsutil的用户对该路径有写权限。 该路径的可用空间需要大于待下载对象的大小。 dryRun 附加参数,可选 测试模式运行,不执行实际的上传操作。 u 附加参数,可选 增量下载操作,设置该参数后,下载每个对象时会对比本地对应路径的文件,仅在文件不存在,或者文件大小与对象大小不一致,或者对象的最后修改时间晚于文件的最后修改时间时进行下载。 注意: 在比较每个本地文件与桶内对象差异时,会产生一次HEAD请求费用。 vlength 附加参数,可选 下载完成后,验证本地文件大小是否与桶中对象的大小一致。 vmd5 附加参数,可选 下载完成后,验证本地文件的MD5值是否与桶中对象的MD5值一致。 说明: 桶中对象必须包含元数据x-obs-meta-md5chksum,否则会忽略MD5值校验。 注意: 如果您的业务涉及加密场景,请勿使用该参数。 p 附加参数,可选 每个分段下载任务的最大并发数,默认为配置文件中的defaultParallels。 threshold 附加参数,可选 开启分段下载任务的阈值,单位:字节,默认为配置文件中的defaultBigfileThreshold。 说明: 如果待下载的对象小于该阈值,则使用直接下载模式;否则使用分段下载模式。 直接下载模式不会产生断点记录文件,不支持断点续传。 支持带容量单位配置,例如,配置1MB代表1048576字节。 ps 附加参数,可选 每个分段下载任务的段大小,单位:字节,默认为配置文件中的defaultPartSize。 说明: 支持带容量单位配置,例如,配置1MB代表1048576字节。 支持配置为auto,此时obsutil会根据源对象大小自动设置每个分段任务的段大小。 cpd 附加参数,可选 生成断点记录文件的文件夹,默认为运行obsutil命令的用户目录的子文件夹.obsutil_checkpoint。 说明: 每个分段下载任务会产生唯一对应的断点记录文件并保存至该文件夹的down子文件夹下,分段任务执行成功后,对应的断点记录文件会被自动删除;分段任务执行失败或被中断后,下次执行该分段任务时会尝试通过对应的断点记录文件恢复任务。 f 附加参数,可选 强制操作,不进行询问提示。 j 附加参数,可选 批量下载任务的最大并发数,默认为配置文件中的defaultJobs。 说明: 工具会保证该值至少为1。 exclude 附加参数,可选 不包含源对象的匹配模式,如:*.txt。 说明: 支持“*”匹配多个任意字符和“?”匹配单个任意字符,例如abc*.txt代表匹配以abc开头以.txt结尾的任意文件。 您可以使用“\*”代表匹配“*”字符本身,使用“\?”代表匹配“?”字符本身。 如果待下载的对象名匹配该参数,则跳过该对象的复制。 须知: 建议使用引号传递该匹配模式(macOS/Linux操作系统使用单引号,Windows操作系统使用双引号)防止特殊符号被操作系统转义,导致不可预期的结果。 该匹配模式作用于对象全路径(含从根路径开始的对象前缀和对象名,例如,桶内对象路径为obs://bucket/src1/src2/test.txt,则对象的全路径为src1/src2/test.txt)。 该匹配模式仅适用于对象名非“/”结尾的对象。 支持指定多个exclude参数,如-exclude=*.xxx -exclude=*.xxx include 附加参数,可选 包含源对象的匹配模式,如:*.jpg。 说明: 支持“*”匹配多个任意字符和“?”匹配单个任意字符。 您可以使用“\*”代表匹配“*”字符本身,使用“\?”代表匹配“?”字符本身。 首先执行exclude的匹配规则,如果待下载的对象名不匹配exclude,则判断待下载的对象名是否匹配该参数,如果匹配则下载该对象,否则跳过该文件的下载。 须知: 建议使用引号传递该匹配模式(macOS/Linux操作系统使用单引号,Windows操作系统使用双引号)防止特殊符号被操作系统转义,导致不可预期的结果。 该匹配模式作用于对象全路径(含从根路径开始的对象前缀和对象名,例如,桶内对象路径为obs://bucket/src1/src2/test.txt,则对象的全路径为src1/src2/test.txt)。 该匹配模式仅适用于对象名非“/”结尾的对象。 支持指定多个include参数,如-include=*.xxx -include=*.xxx timeRange 附加参数,可选 下载对象时的时间段匹配模式,仅下载最后修改时间在该时间段内的对象。 该匹配模式优先级低于对象名匹配模式:exclude和include,优先执行对象名匹配模式后才会执行该匹配模式。 说明: 使用“time1-time2”,代表匹配的时间段,其中time1必须小于等于time2,格式为yyyyMMddHHmmss。 时间格式支持自动补全,例如yyyyMMdd等价于yyyyMMdd000000,yyyyMM等价于yyyyMM01000000。 使用“*-time2”,代表匹配最后修改时间在time2之前的所有文件,使用“time1-*”,代表匹配最后修改时间time1之后的所有文件。 须知: 该匹配模式表示的时间是UTC时间。 该匹配模式仅适用于对象名非“/”结尾的对象。 mf 附加参数,可选 设置名称匹配模式(include、exclude)和时间匹配模式(timeRange)对对象名以“/”结尾的对象也生效。 o 附加参数,可选 生成结果清单文件的文件夹,命令执行完成后,会在该文件夹下生成结果清单文件(可能包含成功结果、失败结果和警告结果三个文件),默认为运行obsutil命令的用户目录的子文件夹.obsutil_output。 说明: 结果清单文件命名规则:cp_{succeed | failed | warning}_report_时间_TaskId.txt。 单个结果清单文件默认情况下最大为30MB且最大可保留的文件个数为1024,可在配置文件中通过recordMaxLogSize和recordBackups分别配置。 当涉及多文件/文件夹时,如需确认失败任务的具体错误信息,可参考结果清单文件夹下的失败结果清单文件"cp_failed_report_时间_TaskId.txt"及日志路径下的日志文件; clear 附加参数,可选 设置在恢复下载任务完成后删除已恢复任务对应的失败结果清单文件。 config 附加参数,可选 运行当前命令时的自定义配置文件,可支持的配置参数请参考配置参数说明。 e 附加参数,可选 指定终端节点。 i 附加参数,可选 指定用户的AK。 k 附加参数,可选 指定用户的SK。 t 附加参数,可选 指定用户的securitytoken。
  • 运行示例 以Windows操作系统为例,运行obsutil cp -recover=3066a4b0-4d21-4929-bb84-4829c32cbd0f d:\ -f -r,批量下载对象。 obsutil cp -recover=3066a4b0-4d21-4929-bb84-4829c32cbd0f -f -r Start at 2024-10-08 01:10:07.3809685 +0000 UTC Parallel: 5 Jobs: 5 Threshold: 50.00MB PartSize: auto VerifyLength: false VerifyMd5: false CheckpointDir: xxxx Task id: a628d6da-c562-4a1f-b687-4fa125de0dc3 OutputDir: xxxx TempFileDir: xxxx [========================================================] 100.00% tps:35.71 2.02 KB/s 7.20MB/7.20MB 0s Succeed count: 1 Failed count: 0 Succeed bytes: xxx Metrics [max cost:90 ms, min cost:45 ms, average cost:63.80 ms, average tps:35.71, transfered size:70B] Task id: a628d6da-c562-4a1f-b687-4fa125de0dc3
  • 命令结构 Windows操作系统 obsutil cp -recover=xxx [-dryRun] [-tempFileDir=xxx] [-f] [-u] [-vlength] [-vmd5] [-j=1] [-p=1] [-threshold=52428800] [-ps=auto] [-include=*.xxx] [-exclude=*.xxx] [-timeRange=time1-time2] [-mf] [-o=xxx] [-cpd=xxx] [-clear] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] macOS/Linux操作系统 ./obsutil cp -recover=xxx [-dryRun] [-tempFileDir=xxx] [-f] [-u] [-vlength] [-vmd5] [-j=1] [-p=1] [-threshold=52428800] [-ps=auto] [-include=*.xxx] [-exclude=*.xxx] [-timeRange=time1-time2] [-mf] [-o=xxx] [-cpd=xxx] [-clear] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
  • 运行示例 以Windows操作系统为例,运行obsutil bucketpolicy obs://bucket -method=put -localfile=d:\temp\policy.json,指定基于policy.json文件为桶bucket设置桶策略。 obsutil bucketpolicy obs://bucket -method=put -localfile=d:\temp\policy.json Start at 2024-09-30 07:59:28.8675681 +0000 UTC Put bucketPolicy succeed, requestId is [04050000016836C5DA6FB21F14A2A0C0]
  • 参数说明 参数 约束 描述 bucket 必选 桶名。 method 必选 指定方法,设置桶策略时该值为put。 localfile 必选 待导入的本地策略文件路径。 config 附加参数,可选 运行当前命令时的自定义配置文件,可支持的配置参数请参考配置参数说明。 e 附加参数,可选 指定终端节点。 i 附加参数,可选 指定用户的AK。 k 附加参数,可选 指定用户的SK。 t 附加参数,可选 指定用户的securitytoken。
  • 命令结构 Windows操作系统 obsutil bucketpolicy obs://bucket -method=put -localfile=xxx [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] macOS/Linux操作系统 ./obsutil bucketpolicy obs://bucket -method=put -localfile=xxx [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
  • 命令结构 Windows操作系统 obsutil chattri obs://bucket [-sc=xxx] [-acl=xxx] [-aclXml=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] macOS/Linux操作系统 ./obsutil chattri obs://bucket [-sc=xxx] [-acl=xxx] [-aclXml=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
  • 运行示例 以Windows操作系统为例,运行obsutil chattri obs://bucket-test -acl=private,修改桶的访问策略为私有读写。 obsutil chattri obs://bucket-test -acl=private Start at 2024-09-29 07:58:46.0506904 +0000 UTC Set the acl of bucket [bucket-test] to [private] successfully, request id [04050000016836C5DA6FB21F14A2A0C0]
  • 功能说明 将OBS源桶指定路径下的所有对象同步到本地目标路径,使两边内容保持一致。这里的增量同步有两层含义:1)增量,依次比较源对象和目标文件,只下载存在变化的源对象;2)同步,命令执行完成后,保证OBS指定源桶指定路径是本地目标路径的子集,即OBS源桶指定路径下的所有对象均能在本地目标路径下找到对应文件。 同步下载时,请确保OBS桶中的源对象不发生变化,否则可能产生同步失败或者数据不一致的问题。 如果待下载对象的存储类型为cold,必须首先恢复待下载对象,否则无法下载成功。 同步下载每个对象时会对比本地对应路径的文件,仅在文件不存在,或者文件大小与对象大小不一致,或者文件的最后修改时间早于对象的最后修改时间时进行下载。
  • 命令结构 Windows操作系统 obsutil sync obs://bucket[/key] folder_url [-tempFileDir=xxx] [-dryRun] [-vlength] [-vmd5] [-j=1] [-p=1] [-threshold=52428800] [-ps=auto] [-include=*.xxx] [-exclude=*.xxx] [-timeRange=time1-time2] [-mf] [-o=xxx] [-cpd=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] macOS/Linux操作系统 ./obsutil sync obs://bucket[/key] folder_url [-tempFileDir=xxx] [-dryRun] [-vlength] [-vmd5] [-j=1] [-p=1] [-threshold=52428800] [-ps=auto] [-include=*.xxx] [-exclude=*.xxx] [-timeRange=time1-time2] [-mf] [-o=xxx] [-cpd=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
  • 参数说明 参数 约束 描述 folder_url 必选 本地文件夹路径。 bucket 必选 桶名。 key 可选 待同步下载的对象名前缀。 规则如下: 如果该值为空,则将folder_url指定的文件夹下的所有内容与整个桶的内容保持一致; 如果该值不为空,则将folder_url指定的文件夹下的所有内容与桶内以该值作为对象名前缀的内容保持一致。 说明: 如果该值不为空且不以“/”结尾,则工具会自动为该值末尾加上“/”作为对象名前缀。 请参考同步下载示例理解该参数的使用方式。 tempFileDir 附加参数,可选 同步下载时保存临时文件的文件夹,默认为配置文件中的defaultTempFileDir。 说明: 由于分段下载时生成的临时文件会保存在该目录,请确保运行obsutil的用户对该路径有写权限。 该路径的可用空间需要大于待下载对象的大小。 dryRun 附加参数,可选 测试模式运行,不执行实际的下载操作。 vlength 附加参数,可选 下载完成后,验证本地文件大小是否与桶中对象的大小一致。 vmd5 附加参数,可选 下载完成后,验证本地文件的MD5值是否与桶中对象的MD5值一致。 说明: 桶中对象必须包含元数据x-obs-meta-md5chksum,否则会忽略MD5值校验。 注意: 如果您的业务涉及加密场景,请勿使用该参数。 p 附加参数,可选 每个分段下载任务的最大并发数,默认为配置文件中的defaultParallels。 threshold 附加参数,可选 开启分段下载任务的阈值,单位:字节,默认为配置文件中的defaultBigfileThreshold。 说明: 如果待下载的对象小于该阈值,则使用直接下载模式;否则使用分段下载模式。 直接下载模式不会产生断点记录文件,不支持断点续传。 支持带容量单位配置,例如,配置1MB代表1048576字节。 ps 附加参数,可选 每个分段下载任务的段大小,单位:字节,默认为配置文件中的defaultPartSize。 说明: 支持带容量单位配置,例如,配置1MB代表1048576字节。 支持配置为auto,此时obsutil会根据源对象大小自动设置每个分段任务的段大小。 cpd 附加参数,可选 生成断点记录文件的文件夹,默认为运行obsutil命令的用户目录的子文件夹.obsutil_checkpoint。 说明: 每个分段下载任务会产生唯一对应的断点记录文件并保存至该文件夹的down子文件夹下,分段任务执行成功后,对应的断点记录文件会被自动删除;分段任务执行失败或被中断后,下次执行该分段任务时会尝试通过对应的断点记录文件恢复任务。 j 附加参数,批量下载时可选 同步下载时的最大并发数,默认为配置文件中的defaultJobs。 说明: 工具会保证该值至少为1。 exclude 附加参数,批量下载时可选 不包含源对象的匹配模式,如:*.txt。 说明: 支持“*”匹配多个任意字符和“?”匹配单个任意字符,例如abc*.txt代表匹配以abc开头以.txt结尾的任意文件。 您可以使用“\*”代表匹配“*”字符本身,使用“\?”代表匹配“?”字符本身。 如果待下载的对象名匹配该参数,则跳过该对象的复制。 须知: 建议使用引号传递该匹配模式(macOS/Linux操作系统使用单引号,Windows操作系统使用双引号)防止特殊符号被操作系统转义,导致不可预期的结果。 该匹配模式作用于对象全路径(含从根路径开始的对象前缀和对象名,例如,桶内对象路径为obs://bucket/src1/src2/test.txt,则对象的全路径为src1/src2/test.txt)。 该匹配模式仅适用于对象名非“/”结尾的对象。 支持指定多个exclude参数,如-exclude=*.xxx -exclude=*.xxx include 附加参数,批量下载时可选 包含源对象的匹配模式,如:*.jpg。 说明: 支持“*”匹配多个任意字符和“?”匹配单个任意字符。 您可以使用“\*”代表匹配“*”字符本身,使用“\?”代表匹配“?”字符本身。 首先执行exclude的匹配规则,如果待下载的对象名不匹配exclude,则判断待下载的对象名是否匹配该参数,如果匹配则下载该对象,否则跳过该文件的下载。 须知: 建议使用引号传递该匹配模式(macOS/Linux操作系统使用单引号,Windows操作系统使用双引号)防止特殊符号被操作系统转义,导致不可预期的结果。 该匹配模式作用于对象全路径(含从根路径开始的对象前缀和对象名,例如,桶内对象路径为obs://bucket/src1/src2/test.txt,则对象的全路径为src1/src2/test.txt)。 该匹配模式仅适用于对象名非“/”结尾的对象。 支持指定多个include参数,如-include=*.xxx -include=*.xxx timeRange 附加参数,可选 同步下载对象时的时间段匹配模式,仅下载最后修改时间在该时间段内的对象。 该匹配模式优先级低于对象名匹配模式:exclude和include,优先执行对象名匹配模式后才会执行该匹配模式。 说明: 使用“time1-time2”,代表匹配的时间段,其中time1必须小于等于time2,格式为yyyyMMddHHmmss。 时间格式支持自动补全,例如yyyyMMdd等价于yyyyMMdd000000,yyyyMM等价于yyyyMM01000000。 使用“*-time2”,代表匹配最后修改时间在time2之前的所有文件,使用“time1-*”,代表匹配最后修改时间time1之后的所有文件。 须知: 该匹配模式表示的时间是UTC时间。 该匹配模式仅适用于对象名非“/”结尾的对象。 mf 附加参数,可选 设置名称匹配模式(include、exclude)和时间匹配模式(timeRange)对对象名以“/”结尾的对象也生效。 o 附加参数,可选 生成结果清单文件的文件夹,命令执行完成后,会在该文件夹下生成结果清单文件(可能包含成功结果、失败结果和警告结果三个文件),默认为运行obsutil命令的用户目录的子文件夹.obsutil_output。 说明: 结果清单文件命名规则:sync_{succeed | failed | warning}_report_时间_TaskId.txt。 单个结果清单文件默认情况下最大为30MB且最大可保留的文件个数为1024,可在配置文件中通过recordMaxLogSize和recordBackups分别配置。 当涉及多文件/文件夹时,如需确认失败任务的具体错误信息,可参考结果清单文件夹下的失败结果清单文件"sync_failed_report_时间_TaskId.txt"及日志路径下的日志文件; config 附加参数,可选 运行当前命令时的自定义配置文件,可支持的配置参数请参考配置参数说明。 e 附加参数,可选 指定终端节点。 i 附加参数,可选 指定用户的AK。 k 附加参数,可选 指定用户的SK。 t 附加参数,可选 指定用户的securitytoken。
  • 运行示例 以Windows操作系统为例,运行obsutil sync obs://bucket-test/temp d:\ temp,同步下载对象。 obsutil sync obs://bucket-test/temp d:\temp Start at 2024-09-30 08:53:22.327072 +0000 UTC Parallel: 5 Jobs: 5 Threshold: 50.00MB PartSize: auto VerifyLength: false VerifyMd5: false CheckpointDir: xxxx Task id: 3066a4b0-4d21-4929-bb84-4829c32cbd0f OutputDir: xxxx TempFileDir: xxxx [======================================================] 100.00% tps:17.86 155.59 KB/s 7.20MB/7.20MB 0s Succeed count: 6 Failed count: 0 Succeed bytes: xxxx Metrics [max cost:153 ms, min cost:129 ms, average cost:92.00 ms, average tps:17.86, transfered size: 7.20MB] Task id: 3066a4b0-4d21-4929-bb84-4829c32cbd0f 更多运行示例,请参见同步下载示例。
  • 检查连通性 配置完成后,您可以通过如下方式检查连通性,确认配置是否无误。 Windows操作系统 obsutil ls -s macOS/Linux操作系统 ./obsutil ls -s 根据命令回显结果,检查配置结果: 如果返回结果中包含“Bucket number :”,表明配置正确。 如果返回结果中包含“Http status [403]”,表明访问密钥配置有误。 如果返回结果中包含“A connection attempt failed”,表明无法连接OBS服务,请检查网络环境是否正常。 如果返回结果中包含“Error: cloud_url [url] is not in well format”,表明访问域名有误,请检查配置文件域名。 如果返回结果中包含“Http status [403]”,也可能是没有获取桶列表的权限,需要视具体场景进一步确认根因。
  • 命令结构 Windows操作系统 删除单个对象 obsutil rm obs://bucket/key [-f] [-versionId=xxx] [-fr] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] 批量删除对象 obsutil rm obs://bucket/[key] -r [-j=1] [-f] [-v] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] macOS/Linux操作系统 删除单个对象 ./obsutil rm obs://bucket/key [-f] [-versionId=xxx] [-fr] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] 批量删除对象 ./obsutil rm obs://bucket/[key] -r [-j=1] [-f] [-v] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
  • 运行示例 以Windows操作系统为例,运行obsutil rm obs://bucket-test/key -f,删除bucket-test桶中名为key的单个对象。 obsutil rm obs://bucket-test/key -f Start at 2024-09-25 04:48:10.1147483 +0000 UTC Delete object [key] in the bucket [bucket-test] successfully, cost [152], request id [0000016979E1D2B2860BB5181229C72C] 以Windows操作系统为例,运行obsutil rm obs://bucket-test -r -f,删除bucket-test桶中所有对象。 obsutil rm obs://bucket-test -r -f Start at 2024-09-30 08:46:55.5335644 +0000 UTC [===============================================] 100.00% 21s Succeed count: 1313 Failed count: 0 Task id: 95936984-f81a-441a-bba0-1fd8254d9241
  • 参数说明 参数 约束 描述 bucket 必选 桶名。 key 删除单个对象时必选 批量删除对象时可选 待删除的对象名,或批量删除的对象名前缀。 说明: 批量删除对象时,如果该参数为空,则表示删除桶中所有的对象。 fr 附加参数,删除单个对象时可选 删除单个对象时生成结果清单文件。 f 附加参数,可选 强制操作,不进行询问提示。 versionId 附加参数,删除单个对象时可选 待删除对象的版本号。 r 附加参数,批量删除对象时必选 按指定的对象名前缀批量删除对象。 注意: 批量删除对象时,会将与前缀匹配的所有对象删除,请谨慎使用。 j 附加参数,批量删除对象时可选 批量删除对象时的最大并发数,默认为配置文件中的defaultJobs。 说明: 工具会保证该值至少为1。 v 附加参数,批量删除对象时可选 按指定的对象名前缀批量删除多版本对象和多版本删除标记。 o 附加参数,可选 生成结果清单文件的文件夹,命令执行完成后,会在该文件夹下生成结果清单文件(可能包含成功结果和失败结果两个文件),默认为运行obsutil命令的用户目录的子文件夹.obsutil_output。 说明: 结果清单文件命名规则:rm_{succeed | failed}_report_时间_TaskId.txt。 单个结果清单文件默认情况下最大为30MB且最大可保留的文件个数为1024,可在配置文件中通过recordMaxLogSize和recordBackups分别配置。 当涉及多文件/文件夹时,如需确认失败任务的具体错误信息,可参考结果清单文件夹下的失败结果清单文件"rm_failed_report_时间_TaskId.txt"及日志路径下的日志文件; config 附加参数,可选 运行当前命令时的自定义配置文件,可支持的配置参数请参考配置参数说明。 e 附加参数,可选 指定终端节点。 i 附加参数,可选 指定用户的AK。 k 附加参数,可选 指定用户的SK。 t 附加参数,可选 指定用户的securitytoken。
  • 功能说明 将源桶指定路径下的所有对象同步到目标桶指定路径,使两边内容保持一致。这里的增量同步有两层含义:1)增量,依次比较源对象和目标对象,只复制存在变化的源对象;2)同步,命令执行完成后,保证源桶指定路径是目标桶指定路径的子集,即源桶指定路径下的所有对象均能在目标桶中找到对应对象。 同步复制对象时,请确保OBS桶中的源对象不发生变化,否则可能产生同步失败或者数据不一致的问题。 如果被复制对象的存储类型为cold,必须首先恢复被复制对象,否则无法复制成功。 复制时需要有被复制对象的读权限和目标桶的写权限。 如果没有开启客户端跨区域复制模式,同步复制的源桶和目标桶必须在同一个区域(Region)。 同步复制每个源对象时会对比目标桶中对应路径的目标对象,仅在目标对象不存在,或者目标对象大小与源对象大小不一致,或者目标对象的最后修改时间早于源对象的最后修改时间时进行复制。 如果源桶是并行文件系统(POSIX),则目标桶不能是对象存储桶。
共100000条