tosutil 提供了很多配置参数,您可以通过 vim ~/.tosutilconfig
文件查看。本文介绍配置文件的详细说明。
注意
配置文件中还有部分较少使用的配置参数没有包含在上述列表中(如 skipCheckEmptyFolderForDownload
、memoryEconomicalScanForUpload
、faultTolerantMode
),这些配置参数通常无需修改,保持默认值即可,如果需要详细了解这些参数的细节用法,请联系火山引擎 TOS 团队。
参数名 | 描述 | 建议值 |
---|---|---|
endpoint | 连接 TOS 的服务地址。 | N/A |
region | 连接 TOS 的区域名称。 | N/A |
ak | 永久或临时访问密钥中的 Access Key ID。为了保证密钥安全避免泄露,tosutil 会自动加密您的信息。 | N/A |
sk | 永久或临时访问密钥中的 Secret Access Key。为了保证密钥安全避免泄露,tosutil 会自动加密您的信息。 | N/A |
token | 临时访问密钥中的 Security Token,与临时Access Key 和 Secret Key 配套使用。 | N/A |
connectTimeout | 建立连接的超时时间,单位:秒,默认为 30。 | [5, 60] |
socketTimeout | 读写数据的超时时间,单位:秒,默认为 120。 | [5, 120] |
maxConnections | 配置允许打开的最大连接数,默认为 1000。 | N/A |
maxRetryCount | 请求的最大重试次数,默认为 10。 说明 当请求 TOS 服务端完成但获取到的 HTTP 状态码为 408、429、5XX 时,或者请求 TOS 服务发生超时错误时会选择性地进行退避重试。 | [0, 10] |
useListType2 | 是否使用 ListObjectsType2 接口进行批量操作和列举对象。支持的值:
| N/A |
defaultSse | 上传或复制对象时使用的默认的服务端加密算法,支持的值:
| N/A |
defaultSseKeyId | 上传或复制对象且指定服务端加密算法为 kms 时,默认使用的 kms 密钥。 | N/A |
defaultBigfileThreshold | 开启分片任务的阈值,如果待上传、下载或复制的文件大于该阈值,则采用分片任务的形式进行上传、下载或复制。单位:字节,默认为 100MB。 说明 支持带容量单位配置,例如,配置 1MB 代表 1048576 字节。 | [50MB, max) |
defaultPartSize | 每个分片任务的段大小,单位:字节,默认为 说明
| 默认值。 |
defaultParallels | 每个分片任务的最大并发数,默认为 1。 | 根据客户端运行的机器环境配置,建议不超过 50。 |
defaultJobs | 批量任务的最大并发数,默认为 3。 说明 批量任务包含上传文件夹、下载文件夹、复制文件夹、批量删除对象等。 | 根据客户端运行的机器环境配置,建议不超过 1000。 |
defaultJobsCacheCount | 批量任务队列的缓存大小,表示最大可以缓存的任务个数,默认为 1000000。 说明 缓存的任务个数越多,占用的内存资源越大,建议保持默认值,如果需要调整,请根据实际使用情况调整此参数值。 | 默认值。 |
rateLimitThreshold | 上传/下载命令的流控阈值,单位:字节。默认为 0 ,表示不限流,最小值为 1KB。 说明 支持带容量单位配置,例如,配置 1MB 代表 1048576 字节。 | 大于 100KB。 |
utilLogPath | tosutil 日志文件的全路径,必须是一个文件名,默认为用户目录(macOS 或 Linux 下为 HOME 目录;Windows 下为 C:\Users<用户名>)的子文件夹 .tosutil_log 下的 tosutil.log 文件。 说明
| 默认值。 |
utilMaxLogSize | tosutil 日志文件大小,单位:字节,默认为 30MB。 说明 支持带容量单位配置,例如,配置 1MB 代表 1048576 字节。 | [10MB, 100MB] |
utilLogBackups | 最大可保留 tosutil 日志的文件个数,默认为 10。 | [3, 30] |
utilLogLevel | tosutil 日志的级别,支持的值: DEBUG INFO WARN ERROR ,默认为 INFO。 | N/A |
sdkLogPath | TOS SDK 日志文件的全路径,必须是一个文件名,默认为用户目录(macOS 或 Linux 下为 HOME 目录;Windows 下为 C:\Users<用户名>)的子文件夹 .tosutil_log 下的 tossdk.log 文件。 说明 如果该参数为空,则不会产生日志;该路径必须是一个文件,不能为文件夹。 | 默认值。 |
sdkMaxLogSize | TOS SDK 日志文件大小,单位:字节,默认为 30MB。 说明 支持带容量单位配置,例如,配置 1MB 代表 1048576 字节。 | [10MB, 100MB] |
sdkLogBackups | 最大可保留 TOS SDK 日志的文件个数,默认为 10。 | [3, 30] |
sdkLogLevel | SDK 日志的级别,支持的值: DEBUG 、INFO 、WARN和 ERROR ,默认为 WARN。 | N/A |
recordMaxLogSize | 批量任务成功/失败/警告的结果清单文件大小,单位:字节,默认为 30 MB。 说明 支持带容量单位配置,例如,配置 1MB 代表 1048576 字节。 | [10MB, 100MB] |
recordBackups | 批量任务最大可保留的成功或失败的结果清单文件个数,默认为 2048。 | 默认值。 |
humanReadableFormat | 是否将列举对象结果和结果清单内容中的字节数转换为易读格式,取值说明如下:
| N/A |
showProgressBar | 是否在控制台显示进度条,取值说明如下:
| N/A |
showStartTime | 是否在控制台显示开始时间,取值说明如下:
| N/A |
helpLanguage | 帮助文档的语种,支持的值如下:
| N/A |
defaultOutputDir | 批量任务结果清单文件的默认文件夹,默认为用户目录,说明如下:
说明 批量任务均支持 -o 参数在每次运行时候重写该文件夹地址。 | N/A |
defaultCheckpointDir | 断点续传文件的默认文件夹,,默认为用户目录,说明如下:
说明 上传、下载或复制任务均支持 | N/A |
defaultTempFileDir | 下载大文件时保存临时文件的文件夹,默认为空,代表会将大文件的临时文件生成到待下载大文件的同目录。 | N/A |
readBufferIoSize | 上传数据的缓存大小。单位:字节,默认为 8192。 说明
| [4096,65536] |
writeBufferIoSize | 下载数据的缓存大小,单位:字节,默认为 65536。 说明
| N/A |
checkSourceChange | 上传、下载或复制时,是否在上传、下载或复制完成后检测源文件或对象变化,取值说明如下:
| N/A |
fsyncForDownload | 下载时是否强制同步内存(pagecache)数据到磁盘,取值说明如下:
注意 对数据可靠性要求极高的场景下可开启该参数; 开启该参数后,会对下载性能产生较大影响,请谨慎使用。 | N/A |
forceOverwriteForDownload | 在 Linux 或 macOS 操作系统上下载对象时,强制覆盖本地可执行文件(即使本地可执行文件正在运行),取值说明如下:
| N/A |
forceReadFileChecksumForDownload | 执行
| N/A |
forceReadFileChecksumForUpload | 执行
| N/A |
defaultVerifyChecksum | 执行
| 默认值 |
panicForSymbolicLinkCircle | 上传时对于检测到软链接形成环后的处理方式,取值说明如下:
| N/A |
fastFailThreshold | 批量任务遇到 4XX 错误后快速失败的阈值,当发生超过该阈值的 4XX 错误后进入快速失败流程,所有未执行或正在扫描的任务会被中断。默认为 5。 | N/A |
useTempFileForDownloadSmallFile | 下载小文件到本地时,是否使用写临时文件模式,为 true 时代表先写临时文件再重命名为最终文件,为 false 时代表直接写最终文件,默认值为 true。 | N/A |
skipWriteSucceedRecord | 是否跳过批量任务成功结果清单文件的生成,为 true 时,代表执行批量任务时不生成成功的结果清单文件,默认值为 false。 | N/A |
scanLocalFolderByChunk | 执行 | N/A |
abortHttpStatusForResumableTasks | 分片上传、下载或复制任务快速中断的 HTTP 状态码,当某个分片子任务的 HTTP 状态码包含在该值范围内时,则会立即中断整个分段上传、下载或复制任务。 | N/A |
additionalRetryHttpStatus | 请求服务端非 2xx 时,额外的支持重试的 HTTP 状态码。 | N/A |
additionalRetryEc | 请求服务端非 2xx 时,额外的支持重试的 EC 码,优先级高于 additionalRetryHttpStatus。 | N/A |