• 沒有找到結果。

功能说明

将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]

运行示例

● 以Windows操作系统为例,运行obsutil sync obs://bucket-test/temp d:\

temp,同步下载对象。

obsutil sync obs://bucket-test/temp d:\temp Parallel: 3 Jobs: 3

Threshold: 524288000 PartSize: 5242880 Exclude: Include:

VerifyLength: false VerifyMd5: false CheckpointDir: xxxx

OutputDir: xxxx

[======================================================] 100.00% 155.59 KB/s 0s Succeed count is: 6 Failed count is: 0

Metrics [max cost:153 ms, min cost:129 ms, average cost:92.00 ms, average tps:17.86]

Task id is: 3066a4b0-4d21-4929-bb84-4829c32cbd0f

● 更多运行示例,请参见同步下载示例。

参数说明

参数 约束 描述

folder_url 必选 本地文件夹路径。

bucket 必选 桶名。

参数 约束 描述

key 可选 待同步下载的对象名前缀。

规则如下:

● 如果该值为空,则将folder_url指定的文件夹下 的所有内容与整个桶的内容保持一致;

● 如果该值不为空,则将folder_url指定的文件夹 下的所有内容与桶内以该值作为对象名前缀的内

tempFileDir 附加参数,可 选

dryRun 附加参数,可 选

测试模式运行,不执行实际的下载操作。

vlength 附加参数,可

选 下载完成后,验证本地文件大小是否与桶中对象的 大小一致。

vmd5 附加参数,可

选 下载完成后,验证本地文件的MD5值是否与桶中对 象的MD5值一致。

说明桶中对象必须包含元数据x-obs-md5chksum,否则会忽

略MD5值校验。

p 附加参数,可

每个分段下载任务的最大并发数,默认为配置文件 中的defaultParallels。

threshold 附加参数,可 选

● 支持带容量单位配置,例如,配置1MB代表1048576 字节。

参数 约束 描述

● 支持带容量单位配置,例如,配置1MB代表1048576 字节。

● 支持配置为auto,此时obsutil会根据源对象大小自动 设置每个分段任务的段大小。

cpd 附加参数,可

选 生成断点记录文件的文件夹,默认为运行obsutil命 令的用户目录的子文件夹.obsutil_checkpoint。

exclude 附加参数,批 量下载时可选

● 建议使用引号传递该匹配模式(macOS/Linux操作系 统使用单引号,Windows操作系统使用双引号)防止

● 支持指定多个exclude参数,如exclude=*.xxx -exclude=*.xxx

参数 约束 描述 include 附加参数,批

量下载时可选 包含源对象的匹配模式,如:*.jpg。

● 首先执行exclude的匹配规则,如果待下载的对象名不 匹配exclude,则判断待下载的对象名是否匹配该参 数,如果匹配则下载该对象,否则跳过该文件的下 载。

须知

● 建议使用引号传递该匹配模式(macOS/Linux操作系 统使用单引号,Windows操作系统使用双引号)防止

● 支持指定多个include参数,如include=*.xxx -include=*.xxx

timeRange 附加参数,可 选

● 使用“time1-time2”,代表匹配的时间段,其中 time1必须小于等于time2,格式为

yyyyMMddHHmmss。

● 时间格式支持自动补全,例如yyyyMMdd等价于 yyyyMMdd000000,yyyyMM等价于

yyyyMM01000000。

● 使用“*-time2”,代表匹配最后修改时间在time2之 前的所有文件,使用“time1-*”,代表匹配最后修改

选 设置名称匹配模式(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。

响应结果

请参考上传对象的响应结果。