华为云用户手册

  • 命令结构 Windows操作系统 obsutil cp -recover=xxx [-dryRun] [-f] [-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] [-clear] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] macOS/Linux操作系统 ./obsutil cp -recover=xxx [-dryRun] [-f] [-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] [-clear] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
  • 运行示例 以Windows操作系统为例,运行obsutil cp -recover=0476929d-9d23-4dc5-b2f8-0a0493f027c5 -f,批量复制对象。 obsutil cp -recover=0476929d-9d23-4dc5-b2f8-0a0493f027c5 -f 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
  • 参数说明 参数 约束 描述 recover 附加参数,必选 待恢复复制任务结果清单文件的任务号。 说明: 任务号(TaskId)可在每次复制任务运行完毕后获取,或者通过结果清单文件名查询(文件名除去后缀.txt后的后36位)。 待恢复的复制任务会从结果清单的文件夹中查找,结果清单文件夹的路径参考附加参数o。 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 附加参数,可选 增量复制操作,设置该参数后,复制每个源对象时会对比目标桶中对应路径的目标对象,仅在目标对象不存在,或者目标对象大小与源对象大小不一致,或者源对象的最后修改时间晚于目标对象的最后修改时间时进行复制。 注意: 在比较每个本地文件与桶内对象差异时,会产生一次HEAD请求费用。 p 附加参数,可选 每个分段复制任务的最大并发数,默认为配置文件中的defaultParallels。 threshold 附加参数,可选 开启分段复制任务的阈值,单位:字节,默认为配置文件中的defaultBigfileThreshold。 说明: 如果待复制的源对象小于该阈值,则使用直接复制模式;否则使用分段复制模式。 直接复制模式不会产生断点记录文件,不支持断点续传。 支持带容量单位配置,例如,配置1MB代表1048576字节。 acl 附加参数,可选 复制对象时可指定的目标对象的预定义访问策略。支持的值: private public-read public-read-write 说明: 以上三个值分别对应:私有读写、公共读、公共读写,三种预定义访问策略。 sc 附加参数,可选 复制对象时可指定的目标对象的存储类型。支持的值: standard:标准存储,访问时延低、吞吐量高,适用于有大量热点文件(平均一个月多次)或小文件(小于1MB)。 warm:低频访问存储,可用性略低于standard,适用于不频繁访问(平均一年少于12次)但在需要时也要求快速访问数据的业务场景。 cold:归档存储,安全、持久且成本极低,适用于很少访问(平均一年访问一次)数据的业务场景。 meta 附加参数,可选 复制对象时可指定的目标对象的自定义元数据。格式为:key1:value1#key2:value2#key3:value3。 说明: 以上值表示复制对象完成后,桶内目标对象包含三组自定义元数据,分别为:key1:value1、key2:value2、key3:value3。 ps 附加参数,可选 每个分段复制任务的段大小,单位:字节,取值范围是100KB~5GB,默认为配置文件中的defaultPartSize。 说明: 支持带容量单位配置,例如,配置1MB代表1048576字节; 支持配置为auto,此时obsutil会根据源对象大小自动设置每个分段任务的段大小。 cpd 附加参数,可选 生成断点记录文件的文件夹,默认为运行obsutil命令的用户目录的子文件夹.obsutil_checkpoint。 说明: 每个分段复制任务会产生唯一对应的断点记录文件并保存至该文件夹的copy子文件夹下,分段任务执行成功后,对应的断点记录文件会被自动删除;分段任务执行失败或被中断后,下次执行该分段任务时会尝试通过对应的断点记录文件恢复任务。 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。
  • 功能概述 obsutil提供的功能如表2所示。 表2 obsutil功能概述 功能 说明 桶基本操作 指定区域创建不同存储类型的桶、删除桶以及获取桶列表、桶配置信息等。 对象基本操作 管理对象,包括上传、下载、删除和列举对象等。 支持上传单个或批量上传多个文件或文件夹。 支持分段上传大文件。 支持增量同步上传、下载和复制对象。 支持复制单个对象或按对象名前缀批量复制多个对象。 支持移动单个对象或按对象名前缀批量移动多个对象。 支持对失败的上传、下载、复制等任务进行恢复。 日志记录 支持在客户端配置日志记录,记录对桶和对象的操作日志,方便统计与分析。 obsutil目前暂不支持高级的桶管理和对象管理操作,相关功能会在后续版本中开发,如需配置,建议使用 对象存储服务 控制台。相关文档请参考《对象存储服务用户指南》。
  • 运行示例 以Windows操作系统为例,运行obsutil stat obs://bucket-test,查询bucket-test桶的基本属性。 obsutil stat obs://bucket-test Start at 2024-09-29 07:58:46.0506904 +0000 UTC Bucket: obs://bucket-test StorageClass: standard Location: cn-north-4 ObsVersion: 3.0 AvailableZone: multi-az BucketType: OBJECTObjectNumber: 8005 Size: 320076506 Quota: 0
  • 响应结果 字段名 描述 Bucket 桶名。 StorageClass 桶的默认存储类型。 Location 桶的区域位置。 ObsVersion 桶的版本。 AvailableZone 桶的可用区。 BucketType 桶的类型,OBJECT代表对象桶;POSIX代表并行文件系统。 ObjectNumber 桶内对象个数。 Size 桶的存储用量,单位:字节。 Quota 桶的配额值,0代表配额没有上限。 Acl 桶的访问策略。
  • 命令结构 Windows操作系统 obsutil stat obs://bucket [-acl] [-bf=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] macOS/Linux操作系统 ./obsutil stat obs://bucket [-acl] [-bf=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
  • 参数说明 参数 约束 描述 bucket 必选 桶名。 acl 可选 同时查询桶的访问策略。 bf 附加参数,可选 桶的存储用量字节数的显示格式。支持的值: human-readable raw 说明: 如果未设置该参数,则桶的存储用量字节数的显示格式由配置文件中的humanReadableFormat参数决定。 config 附加参数,可选 运行当前命令时的自定义配置文件,可支持的配置参数请参考配置参数说明。 e 附加参数,可选 指定终端节点。 i 附加参数,可选 指定用户的AK。 k 附加参数,可选 指定用户的SK。 t 附加参数,可选 指定用户的securitytoken。
  • 使用obsutil实现客户端跨区域复制 obsutil支持使用客户端跨区域复制模式进行复制,即通过数据流的方式从源桶直接复制数据到目标桶,且两个桶可以是任意两个OBS服务的桶;借助客户端跨区域复制模式即可实现相同账户下不同区域桶或不同账户间桶内对象的复制;跨账号复制对象具体步骤如下: 使用obsutil config命令配置源桶对应账号的AK、SK及endpoint信息: Windows操作系统 obsutil config -i=src_ak -k=src_sk -e=src_endpoint -crr Linux操作系统 ./obsutil config -i=src_ak -k=src_sk -e=src_endpoint -crr 使用obsutil config命令配置目标桶对应账号的AK、SK及endpoint信息: Windows操作系统 obsutil config -i=dst_ak -k=dst_sk -e=dst_endpoint Linux操作系统 ./obsutil config -i=dst_ak -k=dst_sk -e=dst_endpoint 调用cp命令,指定采用跨区域复制模式将源桶对象复制到目标桶: Windows操作系统 obsutil cp obs://src-bucket obs://dst-bucket -f -r -crr Linux操作系统 ./obsutil cp obs://src-bucket obs://dst-bucket -f -r -crr 要使用跨区域复制模式,必须指定-crr参数;如果设置了该参数,必须确保更新了配置文件中客户端跨区域复制的相关配置信息,具体可参考更新配置文件。 复制时源桶对应的配置信息为配置文件中的:akCrr/skCrr/tokenCrr/endpointCrr,目标桶对应的配置信息为配置文件中的:ak/sk/token/endpoint; 对于同一账号下不同区域的桶,也可以按照上述步骤实现同一账号下跨区域复制对象的功能;同时也需要按照步骤一、二设置源桶及目标桶的账号信息。 使用-crr参数时,不会复制源对象的标准元数据信息,包括Cache-Control、Expires、Content-Encoding、Content-Disposition、Content-Type、Content-Language6个标准头域。 使用-crr参数进行跨区域复制时,不会复制源对象的ACL。可使用[-acl=xxx]指定目标对象的ACL,若不指定,则默认继承桶ACL权限。 父主题: 最佳实践
  • 运行示例 以Windows操作系统为例,运行obsutil share-ls xxx -ac=123456 -limit=1,使用授权码查询桶内对象。 obsutil share-ls xxx -ac=123456 -limit=1 The authorized prefix is [test/test.tar.gz] Listing objects . Object list: key LastModified Size StorageClass ETag obs://bucket-test/test/test.tar.gz 2019-07-11T14:50:59Z 48.92KB standard "1dd27294ad2f152b43cd111e9fe3990f" Total size of prefix [test/]: 48.92KB Folder number: 0 File number: 1 The authorized prefix is [test/] 以Windows操作系统为例,运行obsutil share-ls xxx -ac=123456 -limit=1,使用授权码查询桶内目录。 obsutil share-ls xxx -ac=123456 -limit=1 The authorized prefix is [test] Listing objects . Folder list: obs://bucket-test/test/ Object list: key LastModified Size StorageClass ETag obs://bucket-test/test/test.tar.gz 2019-07-11T14:50:59Z 48.92KB standard "1dd27294ad2f152b43cd111e9fe3990f" Total size of prefix [test/]: 48.92KB Folder number: 1 File number: 1 The authorized prefix is [test/]
  • 参数说明 参数 约束 描述 authorization_code 或 file://authorization_code_file_url 必选 授权码。 说明: 如果以“file://”开头,则表明授权码是从本地文件中获取。 ac 附加参数,可选 提取码。 说明: 如果未使用该参数设置提取码,obsutil工具会以交互模式提示输入提取码; 提取码必须为6位。 prefix 附加参数,可选 使用授权码列举对象时的对象名前缀。 说明: 如果该值不为空,其必须是授权码中授权路径的子集。 如果该值为空,则表示列举授权码中授权路径下的所有对象。 s 附加参数,可选 以精简格式显示查询结果。 说明: 在精简格式下,返回结果只包含对象名。 d 附加参数,可选 仅列举当前目录下的对象和子目录,而非递归列举所有对象和子目录。 说明: OBS中约定以“/”作为目录分隔符。 marker 附加参数,可选 使用授权码列举桶内对象时的起始位置,返回结果是对象名按照字典序排序后该参数以后的所有对象。 bf 附加参数,可选 列举结果中字节数的显示格式。支持的值: human-readable raw 说明: 如果未设置该参数,则列举结果中字节数的显示格式由配置文件中的humanReadableFormat参数决定。 limit 附加参数,可选 列举结果的最大个数,小于等于0表示列举所有结果,不设置时的默认值为1000。 说明: 如果桶内对象较多,建议设置该值限制每次列举的对象个数,列举结束后,如果仍有对象,会在结果中返回下次请求的marker,用于继续列举剩余的对象。 format 附加参数,可选 指定以自定义格式打印列举结果。当前仅支持值[default],指定列举结果在一行显示。 config 附加参数,可选 运行当前命令时的自定义配置文件,可支持的配置参数请参考配置参数说明。 e 附加参数,可选 指定终端节点。 i 附加参数,可选 指定用户的AK。 k 附加参数,可选 指定用户的SK。 t 附加参数,可选 指定用户的securitytoken。
  • 命令结构 Windows操作系统 直接输入授权码 obsutil share-ls authorization_code [-ac=xxx] [-prefix=xxx] [-s] [-d] [-marker=xxx] [-bf=xxx] [-limit=1] [-format=default] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] 使用文件路径传入授权码 obsutil share-ls file://authorization_code_file_url [-ac=xxx] [-prefix=xxx] [-s] [-d] [-marker=xxx] [-bf=xxx] [-limit=1] [-format=default] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] macOS/Linux操作系统 直接输入授权码 ./obsutil share-ls authorization_code [-ac=xxx] [-prefix=xxx] [-s] [-d] [-marker=xxx] [-bf=xxx] [-limit=1] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] 使用文件路径传入授权码 ./obsutil share-ls file://authorization_code_file_url [-ac=xxx] [-prefix=xxx] [-s] [-d] [-marker=xxx] [-bf=xxx] [-limit=1] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
  • 参数说明 参数 约束 描述 checkpoint_dir 可选 断点记录文件的文件夹,默认为obsutil命令同级子文件夹.obsutil_checkpoint。 u 附加参数,可选 删除所有分段上传任务的断点记录文件。 说明: 同时会尝试删除每个断点记录文件中记录的分段上传任务。 d 附加参数,可选 删除所有分段下载任务的断点记录文件。 说明: 同时会尝试删除每个断点记录文件中记录的临时文件。 c 附加参数,可选 删除所有分段复制任务的断点记录文件。 说明: 同时会尝试删除每个断点记录文件中记录的分段复制任务。 config 附加参数,可选 运行当前命令时的自定义配置文件,可支持的配置参数请参考配置参数说明。 e 附加参数,可选 指定终端节点。 i 附加参数,可选 指定用户的AK。 k 附加参数,可选 指定用户的SK。 t 附加参数,可选 指定用户的securitytoken。 u,d,c三个参数必须至少指定一个。
  • 命令结构 Windows操作系统 obsutil clear [checkpoint_dir] [-u] [-d] [-c] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] macOS/Linux操作系统 ./obsutil clear [checkpoint_dir] [-u] [-d] [-c] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
  • 运行示例 以Windows操作系统为例,运行obsutil clear -u,删除默认文件夹下分段上传任务的断点记录文件。 obsutil clear -u Clear checkpoint files for uploading in folder [xxxxx] Start at 2024-10-08 01:49:37.6541204 +0000 UTC [==================================================================] 100.00% 0s Succeed files is: 1 Failed files is: 0
  • 运行示例 以Windows操作系统为例,运行obsutil mb obs://bucket-test,创建新桶成功。 obsutil mb obs://bucket-test Start at 2024-09-29 07:52:11.3769487 +0000 UTC Create bucket [bucket-test] successfully, request id [000001923CC401864018BA75753D2D5F] 以Windows操作系统为例,运行obsutil mb obs://bucket001,创建其他账户下已存在的桶失败。 obsutil mb obs://bucket001 Start at 2024-09-30 07:03:50.1378331 +0000 UTC Create bucket [bucket001] failed, status [409], error code [BucketAlreadyExists], error message [The requested bucket name is not available. The bucket namespace is shared by all users of the system. Please select a different name and try again.], request id [0000019241BE18DB4019EDD66E135C56]
  • 参数说明 参数 约束 描述 bucket 必选 桶名。 说明: 桶命名规则如下: 3~63个字符,数字或字母开头,支持小写字母、数字、“-”、“.”。 禁止使用类IP地址。 禁止以“-”或“.”开头及结尾。 禁止两个“.”相邻(如:“my..bucket”)。 禁止“.”和“-”相邻(如:“my-.bucket”和“my.-bucket”)。 fs 附加参数,可选 创建并行文件系统。 az 附加参数,可选 指定桶的数据冗余存储策略。支持的值: multi-az 说明: multi-az代表创建数据冗余存储策略为多AZ存储的桶;不携带此参数代表创建数据冗余存储策略为单AZ存储的桶。 acl 附加参数,可选 创桶时可指定的预定义访问策略。支持的值: private public-read public-read-write 说明: 以上三个值分别对应:私有读写、公共读、公共读写。 sc 附加参数,可选 创桶时可指定的桶的默认存储类型。支持的值: standard:标准存储,访问时延低、吞吐量高,适用于有大量热点文件(平均一个月多次)或小文件(小于1MB)。 warm:低频访问存储,可用性略低于standard,适用于不频繁访问(平均一年少于12次)但在需要时也要求快速访问数据的业务场景。 cold:归档存储,安全、持久且成本极低,适用于很少访问(平均一年访问一次)数据的业务场景。 location 附加参数,如果请求的OBS服务地址所在区域为默认区域,则可为空,否则为必选 桶所在的区域。 说明: 该参数定义了桶将会被创建在哪个区域,如果使用的终端节点归属于默认区域华北-北京一(cn-north-1),可以不携带此参数;如果使用的终端节点归属于其他区域,则必须携带此参数。当前有效的区 域名 称可从这里查询。 config 附加参数,可选 运行当前命令时的自定义配置文件,可支持的配置参数请参考配置参数说明。 e 附加参数,可选 指定终端节点。 i 附加参数,可选 指定用户的AK。 k 附加参数,可选 指定用户的SK。 t 附加参数,可选 指定用户的securitytoken。
  • 命令结构 Windows操作系统 obsutil mb obs://bucket [-fs] [-az=xxx] [-acl=xxx] [-sc=xxx] [-location=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] macOS/Linux操作系统 ./obsutil mb obs://bucket [-fs] [-az=xxx] [-acl=xxx] [-sc=xxx] [-location=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
  • 命令结构 Windows操作系统 设置单个对象属性 obsutil chattri obs://bucket/key [-meta=aaa:bbb#ccc:ddd] [-sc=xxx] [-acl=xxx] [-aclXml=xxx] [-versionId=xxx] [-fr] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] 批量设置对象属性 obsutil chattri obs://bucket[/key] -r [-f] [-v] [-meta=aaa:bbb#ccc:ddd] [-sc=xxx] [-acl=xxx] [-aclXml=xxx] [-o=xxx] [-j=1] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] macOS/Linux操作系统 设置单个对象属性 ./obsutil chattri obs://bucket/key [-meta=aaa:bbb#ccc:ddd] [-sc=xxx] [-acl=xxx] [-aclXml=xxx] [-versionId=xxx] [-fr] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] 批量设置对象属性 ./obsutil chattri obs://bucket[/key] -r [-f] [-v] [-meta=aaa:bbb#ccc:ddd] [-sc=xxx] [-acl=xxx] [-aclXml=xxx] [-o=xxx] [-j=1] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
  • 运行示例 以Windows操作系统为例,运行obsutil chattri obs://bucket-test/key -acl=public-read,设置对象的访问策略为公共读。 obsutil chattri obs://bucket-test/key -acl=public-read Start at 2024-09-30 08:17:15.5572914 +0000 UTC Set the acl of object [key] in the bucket [bucket-test] to [public-read] successfully, request id [04050000016836DDFA73B2B5320E2651] 以Windows操作系统为例,运行obsutil chattri obs://bucket-test -r -f -acl=public-read,批量设置桶内所有对象的访问策略为公共读。 obsutil chattri obs://bucket-test -r -f -acl=public-read Start at 2024-09-30 08:18:03.105373 +0000 UTC [------------------------------------------------] 100.00% tps:155.15 5/5 233ms Succeed count: 5 Failed count: 0 Metrics [max cost:177 ms, min cost:53 ms, average cost:102.40 ms, average tps:20.41] Task id: 9d7f73ff-f747-4fdd-9b2a-815ba2dc3b07
  • 运行示例 以Windows操作系统为例,运行obsutil restore obs://bucket-test/key,恢复单个存储类型为cold的对象。 obsutil restore obs://bucket-test/key Start at 2024-09-30 08:56:17.9537365 +0000 UTC Start to restore object [key] in the bucket [bucket-test] successfully, cost [252] ms, request id [0000019242250F754015F23EE0B7876E] 以Windows操作系统为例,运行obsutil restore obs://bucket-test -r -f,批量恢复桶中所有的存储类型为cold的对象。 obsutil restore obs://bucket-test -r -f Start at 2024-09-30 08:57:11.3565648 +0000 UTC [================================================] 100.00% 3s Succeed count: 12 Failed count: 0 Metrics [max cost:264 ms, min cost:54 ms, average cost:119.33 ms, average tps:19.70] Task id: 96f104ee-d0bf-40ff-95dd-31dec0d8f4f4
  • 命令结构 Windows操作系统 恢复对象 obsutil restore obs://bucket/key [-d=1] [-t=xxx] [-versionId=xxx] [-fr] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-token=xxx] 批量恢复对象 obsutil restore obs://bucket[/key] -r [-f] [-v] [-d=1] [-t=xxx] [-o=xxx] [-j=1] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-token=xxx] 批量恢复指定目录下的所有对象 obsutil restore obs://bucket/folder/ -r [-f] [-v] [-d=1] [-t=xxx] [-o=xxx] [-j=1] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-token=xxx] macOS/Linux操作系统 恢复对象 ./obsutil restore obs://bucket/key [-d=1] [-t=xxx] [-versionId=xxx] [-fr] [-o=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-token=xxx] 批量恢复对象 ./obsutil restore obs://bucket[/key] -r [-f] [-v] [-d=1] [-t=xxx] [-o=xxx] [-j=1] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-token=xxx] 批量恢复指定目录下的所有对象 ./obsutil restore obs://bucket/folder/ -r [-f] [-v] [-d=1] [-t=xxx] [-o=xxx] [-j=1] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-token=xxx]
  • 参数说明 参数 约束 描述 bucket 必选 桶名。 key 恢复单个存储类型为cold的对象时必选 批量恢复存储类型为cold的对象时可选 待恢复的对象名,或批量恢复的对象名前缀。 说明: 批量恢复时,如果该值为空,则表示恢复桶内所有存储类型为cold的对象。 d 附加参数,可选 存储类型为cold的对象恢复后的保存时间,单位:天,取值范围是1~30。默认为1。 t 附加参数,可选 恢复选项。支持的值: standard expedited 说明: expedited表示快速恢复对象,归档存储恢复耗时1~5 min。 standard表示标准恢复对象,归档存储恢复耗时3~5 h。 不设置该选项时,默认使用expedited模式。 versionId 附加参数,恢复单个cold存储对象时可选 待恢复cold存储对象的版本号。 fs 附加参数,可选 是否使用并行文件系统的列举方式,如果桶是并行文件系统,推荐加上该参数。 注意: 该列举方式会因为目录结构,耗时会差别很大。 该参数开启后,会忽略marker和limit值,统计桶或者并行文件系统或者指定目录的大小。 Util 5.5.12版本及以上支持该参数。 encoding-type 附加参数,可选 对象名有特殊字符时,取值为url。 说明: Util 5.5.12版本及以上支持该参数。 fr 附加参数,恢复单个cold存储对象时可选 恢复单个cold存储对象时生成结果清单文件。 f 附加参数,批量恢复cold存储对象时可选 强制操作,不进行询问提示。 r 附加参数,批量恢复cold存储对象时必选 按指定的对象名前缀批量恢复cold存储对象。 v 附加参数,批量恢复cold存储对象时可选 按指定的对象名前缀批量恢复多版本cold存储对象。 o 附加参数,可选 生成结果清单文件的文件夹,命令执行完成后,会在该文件夹下生成结果清单文件(可能包含成功结果和失败结果两个文件),默认为运行obsutil命令的用户目录的子文件夹.obsutil_output。 说明: 结果清单文件命名规则:restore_{succeed | failed}_report_时间_TaskId.txt。 单个结果清单文件默认情况下最大为30MB且最大可保留的文件个数为1024,可在配置文件中通过recordMaxLogSize和recordBackups分别配置。 j 附加参数,批量恢复cold存储对象时可选 批量恢复cold存储对象的最大并发数,默认为配置文件中的defaultJobs。 说明: 工具会保证该值至少为1。 config 附加参数,可选 运行当前命令时的自定义配置文件,可支持的配置参数请参考配置参数说明。 e 附加参数,可选 指定终端节点。 i 附加参数,可选 指定用户的AK。 k 附加参数,可选 指定用户的SK。 token 附加参数,可选 指定用户的securitytoken。
  • 命令结构 Windows操作系统 obsutil ls [-s] [-fs] [-sc] [-du] [-fs] [-j=1] [-limit=1] [-format=default] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx] macOS/Linux操作系统 ./obsutil ls [-s] [-fs] [-sc] [-du] [-fs] [-j=1] [-limit=1] [-format=default] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
  • 运行示例 以Windows操作系统为例,运行obsutil ls -limit=5,查询桶列表。 obsutil ls -limit=5 Start at 2024-09-29 07:58:46.0506904 +0000 UTC Bucket CreationDate Location BucketType obs://bucket001 2018-09-03T01:53:02Z example OBJECT obs://bucket002 2018-11-01T01:40:01Z example OBJECT obs://bucket003 2018-10-25T11:45:45Z example OBJECT obs://bucket004 2018-10-26T02:33:09Z example OBJECT obs://bucket005 2018-10-26T02:34:50Z example OBJECT Bucket number : 5
  • 参数说明 参数 约束 描述 s 附加参数,可选 以精简格式显示查询结果。 说明: 在精简格式下,返回结果只包含桶名。 sc 附加参数,可选 查询桶列表时同时查询桶的存储类型。 j 附加参数,可选,必须与sc参数搭配使用才有意义 查询桶存储类型时的最大并发数,默认为配置文件中的defaultJobs。 说明: 工具会保证该值至少为1。 du 附加参数,可选 快速返回所列举对象的总大小,不显示具体的对象信息,可与其他参数配合使用。 说明: 此参数在列举桶时无效,仅在列举对象时生效。 fs 附加参数,可选 是否使用并行文件系统的列举方式,如果桶是并行文件系统,推荐加上该参数。 注意: 该列举方式会因为目录结构,耗时会差别很大。 该参数开启后,会忽略marker和limit值,统计桶或者并行文件系统或者指定目录的大小。 Util 5.5.12版本及以上支持该参数。 limit 附加参数,可选 查询桶的最大个数,小于0表示列举所有结果,不设置时的默认值为1000。 format 附加参数,可选 指定以自定义格式打印列举结果。当前仅支持值[default],指定列举结果在一行显示。 config 附加参数,可选 运行当前命令时的自定义配置文件,可支持的配置参数请参考 配置参数说明。 e 附加参数,可选 指定终端节点。 i 附加参数,可选 指定用户的AK。 k 附加参数,可选 指定用户的SK。 t 附加参数,可选 指定用户的securitytoken。
  • 批量任务执行失败如何确认错误信息 用户执行批量上传/下载/复制等批量操作时,最终输出结果中会显示批量任务执行成功的个数及失败的任务个数。为确认失败任务的具体错误原因,可以通过查看对应任务的失败结果清单文件及obsutil的日志文件进行确认。 批量任务执行完成后会输出taskID信息,根据taskID信息即可在.obsutil_output目录下查询到对应失败任务清单文件,失败结果清单文件命名规则如:cp_{failed}_report_时间_TaskId.txt,该文件中有各失败任务的详细错误信息。 同时还可以参考util工具的日志信息查看工具执行过程中记录的错误信息,为定位问题建议指定日志级别为DEBUG级别,具体设置方式及日志路径设置方式可参考日志文件。 父主题: 常见问题
  • 功能说明 复制对象或按对象名前缀批量复制对象。 复制对象或批量复制时,请确保OBS桶中的源对象不发生变化,否则可能产生复制失败或者数据不一致的问题。 如果被复制对象的存储类型为cold,必须首先恢复被复制对象,否则无法复制成功。 复制时需要有被复制对象的读权限和目标桶的写权限。 如果没有开启客户端跨区域复制模式,复制的源桶和目标桶必须在同一个区域(Region)。 如果源桶是并行文件系统(POSIX),则目标桶不能是非并行文件系统。
  • 参数说明 参数 约束 描述 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。
  • 命令结构 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]
共100000条