Qiniu
命令:
singularity storage update s3 qiniu - 七牛对象存储(Kodo)
用法:
singularity storage update s3 qiniu [命令选项] <name|id>
说明:
--env-auth
从运行环境中获取AWS凭证(环境变量或EC2/ECS元数据,如果没有环境变量)。
仅当access_key_id和secret_access_key为空时才适用。
示例:
| false | 在下一步中输入AWS凭证。
| true | 从环境(环境变量或IAM)获取AWS凭证。
--access-key-id
AWS访问密钥ID。
如果要进行匿名访问或者使用运行时凭证,请将其留空。
--secret-access-key
AWS密钥(密码)。
如果要进行匿名访问或者使用运行时凭证,请将其留空。
--region
要连接的区域。
示例:
| cn-east-1 | 默认端点,如果不确定可以选择此选项。
| | 中国东部区域1。
| | 需要区域约束为cn-east-1。
| cn-east-2 | 中国东部区域2。
| | 需要区域约束为cn-east-2。
| cn-north-1 | 中国北部区域1。
| | 需要区域约束为cn-north-1。
| cn-south-1 | 中国南部区域1。
| | 需要区域约束为cn-south-1。
| us-north-1 | 北美区域。
| | 需要区域约束为us-north-1。
| ap-southeast-1 | 东南亚区域1。
| | 需要区域约束为ap-southeast-1。
| ap-northeast-1 | 东北亚区域1。
| | 需要区域约束为ap-northeast-1。
--endpoint
七牛对象存储的端点。
示例:
| s3-cn-east-1.qiniucs.com | 中国东部区域1的端点
| s3-cn-east-2.qiniucs.com | 中国东部区域2的端点
| s3-cn-north-1.qiniucs.com | 中国北部区域1的端点
| s3-cn-south-1.qiniucs.com | 中国南部区域1的端点
| s3-us-north-1.qiniucs.com | 北美区域的端点
| s3-ap-southeast-1.qiniucs.com | 东南亚区域1的端点
| s3-ap-northeast-1.qiniucs.com | 东北亚区域1的端点
--location-constraint
区域约束,必须设置与区域匹配。
仅在创建存储桶时使用。
示例:
| cn-east-1 | 中国东部区域1
| cn-east-2 | 中国东部区域2
| cn-north-1 | 中国北部区域1
| cn-south-1 | 中国南部区域1
| us-north-1 | 北美区域1
| ap-southeast-1 | 东南亚区域1
| ap-northeast-1 | 东北亚区域1
--acl
创建存储桶、存储对象或复制对象时使用的预定义ACL。
此ACL用于创建对象,如果未设置bucket_acl,则用于创建存储桶。
获取更多信息请访问[Amazon S3 ACL文档](https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl)。
需要注意的是,在服务器端复制对象时会应用此ACL,
因为S3不会复制源对象的ACL,而是写入一个新的ACL。
如果acl为空字符串,则不添加X-Amz-Acl:头,并使用默认(private)。
--bucket-acl
创建存储桶时使用的预定义ACL。
获取更多信息请访问[Amazon S3 ACL文档](https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl)。
需要注意的是,仅在创建存储桶时应用此ACL。如果未设置它,
将使用"acl"代替。
如果"acl"和"bucket_acl"都为空字符串,则不添加X-Amz-Acl:
头,并使用默认(private)。
示例:
| private | 拥有者具备FULL_CONTROL权限。
| | 其他人没有访问权限(默认)。
| public-read | 拥有者具备FULL_CONTROL权限。
| | 所有用户组具备READ权限。
| public-read-write | 拥有者具备FULL_CONTROL权限。
| | 所有用户组具备READ和WRITE权限。
| | 通常不建议在存储桶上授予此权限。
| authenticated-read | 拥有者具备FULL_CONTROL权限。
| | AuthenticatedUsers组具备READ权限。
--storage-class
存储新对象时使用的存储类型。
示例:
| STANDARD | 标准存储类型
| LINE | 低访问频率存储模式
| GLACIER | 归档存储模式
| DEEP_ARCHIVE | 深度归档存储模式
--upload-cutoff
切换到分片上传的文件截止值。
超过此大小的文件将按分片大小进行分片上传。
最小值为0,最大值为5 GiB。
--chunk-size
上传时使用的分片大小。
上传超过upload_cutoff的大文件或没有大小信息的文件
(例如来自"rclone rcat"或使用"rclone mount"、Google照片或Google文档上传的文件)
将使用此分片大小进行分片上传。
请注意,每个传输会在内存中缓冲"--s3-upload-concurrency"个此大小的分片。
如果您正在高速链接上传大文件,且内存充足,则增加此值将加快传输速度。
当上传已知大小的大文件以保持低于10,000个分片的限制时,
rclone会自动增加分片大小。
未知大小的文件将使用配置的chunk_size进行上传。
由于默认的分片大小为5 MiB,最多可以有10,000个分片,
因此默认情况下,您可以流式上传的文件的最大大小为48 GiB。
如果要流式上传更大的文件,则需要增加chunk_size。
增加分片大小会降低使用“-P”标志显示的进度统计数据的准确性。
Rclone在分片被AWS SDK缓冲时将其视为已发送,
而实际上可能仍在上传。更大的分片大小意味着更大的AWS SDK缓冲区和进度报告与实际情况更偏离。
--max-upload-parts
多部分上传中的最大部分数。
此选项定义进行多部分上传时要使用的最大多部分分片数。
如果某个服务不支持10,000个分片的AWS S3规范,
这会很有用。
当上传已知大小的大文件以保持低于指定的部分数限制时,
rclone会自动增加分片大小。
--copy-cutoff
切换到分块复制的文件截止值。
超过此大小需要服务器端复制的文件将按此大小的分块进行复制。
最小值为0,最大值为5 GiB。
--disable-checksum
不将MD5校验和与对象元数据一起存储。
通常rclone会在上传之前计算输入的MD5校验和,
以便将其添加到对象的元数据中。这对于数据完整性检查很有用,
但对于大文件启动上传可能会导致长时间的延迟。
--shared-credentials-file
共享凭证文件的路径。
如果env_auth设置为true,则rclone可以使用共享凭证文件。
如果该变量为空,rclone将查找"AWS_SHARED_CREDENTIALS_FILE"环境变量。
如果环境变量的值为空,则默认为当前用户的主目录。
Linux/OSX: "$HOME/.aws/credentials"
Windows: "%USERPROFILE%\.aws\credentials"
--profile
共享凭证文件中要使用的配置文件。
如果env_auth设置为true,则rclone可以使用共享凭证文件。
此变量控制在该文件中使用哪个配置文件。
如果为空,则默认为环境变量"AWS_PROFILE"。
如果环境变量未设置,则默认为"default"。
--session-token
AWS会话令牌。
--upload-concurrency
多部分上传的并发数。
这是同时上传同一文件的分片数。
如果您正在高速链接上传大量大文件,
而这些上传未充分利用您的带宽,
则增加此值可能有助于提高传输速度。
--force-path-style
如果为true,则使用路径样式访问;如果为false,则使用虚拟主机样式访问。
如果为true(默认值),rclone将使用路径样式访问;
如果为false,则rclone将使用虚拟路径样式。
有关更多信息,请参阅[AWS S3文档](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro)。
某些提供商(如AWS、阿里云OSS、网易云COS或腾讯云COS)要求将此设置为false,
rclone将根据提供商设置自动执行此操作。
--v2-auth
如果为true,则使用v2鉴权。
如果此值为false(默认值),rclone将使用v4鉴权。
如果设置了此值,则rclone将使用v2鉴权。
仅在无法使用v4签名的情况下使用,例如旧版本的Jewel/v10 CEPH。
--list-chunk
列表块的大小(每个ListObject S3请求的响应列表)。
该选项也被称为"MaxKeys"、"max-items"或"AWS S3规范的"page-size"。
大多数服务限制了每个请求的列表响应列表为1000个对象,
即使请求的数量多于此值。在AWS S3中,这是一个全局最大值,
不能更改,请参阅[AWS S3](https://docs.aws.amazon.com/cli/latest/reference/s3/ls.html)。
在Ceph中,可以通过"rgw list buckets max chunk"选项来增加该值。
--list-version
要使用的ListObjects版本:1、2或0(自动)。
当S3最初发布时,它仅提供了ListObjects调用以枚举存储桶中的对象。
但是,在2016年5月,ListObjectsV2调用被引入。这个调用的性能要高得多,如果可能的话应该使用它。
如果设置为默认值0,则rclone将根据设置的提供商猜测要调用哪个list对象方法。
如果它猜错了,那么可以在此处手动设置。
--list-url-encode
是否对列表进行URL编码:true/false/unset
某些提供商支持URL编码的列表,如果可用,则在使用控制字符的文件名时这更加可靠。
如果设置为unset(默认值),则rclone会根据提供商设置选择应用什么,
但您可以在此处覆盖rclone的选择。
--no-check-bucket
如果设置,不会尝试检查存储桶是否存在或创建它。
如果您知道存储桶已经存在,那么这对于将rclone的事务数量最小化会很有用。
如果使用的用户没有创建存储桶的权限,则可能需要执行此操作。
在v1.52.0之前,由于一个bug,此操作将会静默通过。
--no-head
如果设置,不会对上传的对象进行HEAD请求来检查完整性。
这对于将rclone的事务数量最小化会很有用。
设置此标志意味着如果rclone在PUT上传对象后收到200 OK消息,
则假设对象已上传正确。
特别地,它会假设:
- 元数据,包括修改时间、存储类和内容类型与上传时一致
- 大小与上传时一致
对于单部分PUT请求,它从响应中读取以下条目:
- MD5SUM
- 上传日期
对于多部分上传,不会读取这些条目。
如果上传未知长度的源对象,则rclone将执行HEAD请求。
设置此标志会增加未检测到的上传失败的几率,
特别是错误的大小,因此不推荐在正常操作中使用。
实际上,即使使用此标志,发生未检测到的上传失败的几率也非常小。
--no-head-object
如果设置,则在获取对象之前不会执行HEAD请求。
--encoding
后端的编码方式。
有关更多信息,请参阅[概述中的编码部分](/overview/#encoding)。
--memory-pool-flush-time
内部内存缓冲池刷新的时间间隔。
使用需要额外缓冲区的上传(例如分块上传)将使用内存缓冲池进行分配。
此选项控制多久从池中删除未使用的缓冲区。
--memory-pool-use-mmap
是否在内部内存池中使用mmap缓冲区。
--disable-http2
禁用S3后端的http2使用。
目前,s3(特别是minio)后端存在一个无法解决的问题和HTTP/2。
s3后端默认启用HTTP/2,但可以在此禁用。
当问题解决后,此标志将被移除。
请参阅:https://github.com/rclone/rclone/issues/4673,https://github.com/rclone/rclone/issues/3631
--download-url
自定义下载的端点。
这通常设置为CloudFront CDN URL,
因为通过CloudFront网络下载的数据,
AWS S3提供更便宜的出口流量。
--use-multipart-etag
是否在多部分上传中使用ETag进行验证
这应为true、false或设置为未设置以使用提供商的默认值。
--use-presigned-request
是否使用预签名请求或PutObject进行单部分上传
如果为false,则rclone将使用AWS SDK的PutObject上传对象。
rclone版本<1.59会使用预签名请求上传单个分片对象,
设置此标志为true将重新启用该功能。
除非在特殊情况下或进行测试,否则不应该使用。
--versions
在目录列表中包含旧版本。
--version-at
显示文件版本为指定时间的版本。
参数应为日期,"2006-01-02",
日期时间"2006-01-02 15:04:05"或距离现在那么久的时间,例如"100d"或"1h"。
请注意,使用此选项将不允许进行文件写操作,
因此无法上传文件或删除文件。
有关有效格式,请参阅[时间选项文档](/docs/#time-option)。
--decompress
如果设置,则会解压缩gzip编码的对象。
可以向S3上传具有"Content-Encoding: gzip"的对象。
通常情况下,rclone会将这些文件以压缩对象的形式下载。
如果设置了此标志,则rclone将在接收到具有"Content-Encoding: gzip"的文件时解压缩它们。
这意味着rclone无法检查大小和哈希值,但文件内容将被解压缩。
--might-gzip
如果后端可能会gzip对象,请设置此标志。
通常,提供商不会在下载时更改对象。
如果对象上没有设置"Content-Encoding: gzip",则在下载时它也不会设置。
但是,有些服务提供商甚至在未使用"Content-Encoding: gzip"上上传对象时也会gzip对象(例如Cloudflare)。
出现这种情况的症状可能是接收到以下错误:
ERROR corrupted on transfer: sizes differ NNN vs MMM
如果设置了该标志,并且rclone通过Content-Encoding: gzip和分块传输编码下载了一个对象,
则rclone将实时解压缩该对象。
如果将此设置为未设置(默认值),则rclone将根据提供商的设置选择应用什么,但您可以在此处覆盖rclone的选择。
--no-system-metadata
禁止设置和读取系统元数据
选项:
--access-key-id value AWS访问密钥ID。[$ACCESS_KEY_ID]
--acl value 创建存储桶、存储对象或复制对象时使用的预定义ACL。[$ACL]
--endpoint value 七牛对象存储的端点。[$ENDPOINT]
--env-auth 从运行环境中获取AWS凭证(环境变量或EC2/ECS元数据,如果没有环境变量)。 (默认值:false)[$ENV_AUTH]
--help, -h 显示帮助
--location-constraint value 区域约束,必须设置与区域匹配。[$LOCATION_CONSTRAINT]
--region value 要连接的区域。[$REGION]
--secret-access-key value AWS密钥(密码)。[$SECRET_ACCESS_KEY]
--storage-class value 存储新对象时使用的存储类型。[$STORAGE_CLASS]
高级选项
--bucket-acl value 创建存储桶时使用的预定义ACL。[$BUCKET_ACL]
--chunk-size value 上传时使用的分片大小。(默认值:"5Mi")[$CHUNK_SIZE]
--copy-cutoff value 切换到分块复制的文件截止值。(默认值:"4.656Gi")[$COPY_CUTOFF]
--decompress 如果设置,则会解压缩gzip编码的对象。 (默认值:false)[$DECOMPRESS]
--disable-checksum 不将MD5校验和与对象元数据一起存储。 (默认值:false)[$DISABLE_CHECKSUM]
--disable-http2 禁用S3后端的http2使用。 (默认值:false)[$DISABLE_HTTP2]
--download-url value 自定义下载的端点。[$DOWNLOAD_URL]
--encoding value 后端的编码方式。 (默认值:"Slash,InvalidUtf8,Dot")[$ENCODING]
--force-path-style 如果为true,则使用路径样式访问;如果为false,则使用虚拟主机样式访问。 (默认值:true)[$FORCE_PATH_STYLE]
--list-chunk value 列表块的大小(每个ListObject S3请求的响应列表)。 (默认值:1000)[$LIST_CHUNK]
--list-url-encode value 是否对列表进行URL编码:true/false/unset (默认值:"unset")[$LIST_URL_ENCODE]
--list-version value 要使用的ListObjects版本:1、2或0(自动)。 (默认值:0)[$LIST_VERSION]
--max-upload-parts value 多部分上传中的最大部分数。 (默认值:10000)[$MAX_UPLOAD_PARTS]
--memory-pool-flush-time value 内部内存缓冲池刷新的时间间隔。 (默认值:"1m0s")[$MEMORY_POOL_FLUSH_TIME]
--memory-pool-use-mmap 是否在内部内存池中使用mmap缓冲区。 (默认值:false)[$MEMORY_POOL_USE_MMAP]
--might-gzip value 设置此标志如果后端可能会gzip对象。 (默认值:"unset")[$MIGHT_GZIP]
--no-check-bucket 如果设置,不会尝试检查存储桶是否存在或创建它。 (默认值:false)[$NO_CHECK_BUCKET]
--no-head 如果设置,不会对上传的对象进行HEAD请求来检查完整性。 (默认值:false)[$NO_HEAD]
--no-head-object 如果设置,则在获取对象之前不会执行HEAD请求。 (默认值:false)[$NO_HEAD_OBJECT]
--no-system-metadata 禁止设置和读取系统元数据 (默认值:false)[$NO_SYSTEM_METADATA]
--profile value 共享凭证文件中要使用的配置文件。 [$PROFILE]
--session-token value AWS会话令牌。 [$SESSION_TOKEN]
--shared-credentials-file value 共享凭证文件的路径。 [$SHARED_CREDENTIALS_FILE]
--upload-concurrency value 多部分上传的并发数。 (默认值:4)[$UPLOAD_CONCURRENCY]
--upload-cutoff value 切换到分片上传的文件截止值。 (默认值:"200Mi")[$UPLOAD_CUTOFF]
--use-multipart-etag value 是否在多部分上传中使用ETag进行验证 (默认值:"unset")[$USE_MULTIPART_ETAG]
--use-presigned-request 是否使用预签名请求或PutObject进行单部分上传 (默认值:false)[$USE_PRESIGNED_REQUEST]
--v2-auth 如果为true,则使用v2鉴权。 (默认值:false)[$V2_AUTH]
--version-at value 显示文件版本为指定时间的版本。 (默认值:"off")[$VERSION_AT]
--versions 在目录列表中包含旧版本。 (默认值:false)[$VERSIONS]
Last updated