输入关键字搜索文档

使用 S3cmd 管理 SCS

简介

S3cmd 是一个免费的命令行工具客户端,用于在 Amazon S3 和其他使用 S3 协议的云存储服务提供商(如土星云 OSS)上传,检索和管理数据。
它适合熟悉命令行程序的高级用户。它也是批处理脚本和 S3 自动备份的理想选择,由 cron 等触发。
使用场景:API 级别的开发、调试。

环境要求

S3cmd 环境要求:S3cmd 在 Linux(Fedora,RedHat,SuSe,Ubuntu,Debian 等)和 Apple MAC 上运行。需要 Python 2.6 或更高版本。
S3cmd version 2 也与 Python 3.x 兼容。
Python 版本查看:Linux shell 环境下输入 python 并回车,来查看 Python 的版本。如下所示:

Python 2.7.12 (default, Dec 4 2017, 14:50:18)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>

安装使用

下载 S3cmd

yum -y install s3cmd

S3cmd 安装

执行 s3cmd --configure 生成配置文件,一路回车,注意跳过认证并保存配置
Test access with supplied credentials? [Y/n] n
Save settings? [y/N] y
Configuration saved to '/root/.s3cfg'

配置文件

配置文件为~/.s3cfg,下面是使用的配置文件的内容:

[default]
access_key = xxx@xx.xxx # 账号
secret_key = xxxx # 密码
host_base = open-{租户ID}-s3.saturn.xxyy.co:8443
host_bucket = open-{租户ID}-s3.saturn.xxyy.co:8443
use_https = True

验证 S3cmd 是否可用

Linux shell 环境下输入 s3cmd 并回车,如下所示即可使用:

11
如下以 Make bucket 为例,测试 S3cmd 是否可用:
12

支持功能

以下是目前 S3cmd 所支持土星云 OSS 的命令:

Commands:

功能类型 功能命令
管理Bucket
Make bucket
s3cmd mb s3://BUCKET
Remove bucket
s3cmd mb s3://BUCKET
List objects or buckets
s3cmd ls [s3://BUCKET[/PREFIX]]
Disk usage by buckets
s3cmd du [s3://BUCKET[/PREFIX]]
Modify Access control list for Bucket or Files
s3cmd setacl s3://BUCKET[/OBJECT]
Modify Bucket Policy
s3cmd setpolicy FILE s3://BUCKET
Delete Bucket Policy
s3cmd delpolicy s3://BUCKET
Modify Bucket CORS
s3cmd setcors FILE s3://BUCKET
Delete Bucket CORS
s3cmd delcors s3://BUCKET
Create Website from bucket
s3cmd ws-create s3://BUCKET
Delete Website
s3cmd ws-delete s3://BUCKET
Info about Website
s3cmd ws-info s3://BUCKET
管理Object
Put file into bucket
s3cmd put FILE [FILE...]s3://BUCKET[/PREFIX]
Get file from bucket
s3cmd get s3://BUCKET/OBJECT LOCAL_FILE
Delete file from bucket
s3cmd del s3://BUCKET/OBJECT
Delete file from bucket (alias for del)
s3cmd rm s3://BUCKET/OBJECT
Show multipart uploads
s3cmd multipart s3://BUCKET [Id]
Abort a multipart upload
s3cmd abortmp s3://BUCKET/OBJECT Id
List parts of a multipart upload
s3cmd listmp s3://BUCKET/OBJECT Id
其他功能
Sign arbitrary string using the secret key
s3cmd sign STRING-TO-SIGN
Get various information about Buckets or Files
s3cmd info s3://BUCKET[/OBJECT]
注:不支持显示bucket的信息,显示object的信息不完全
Synchronize a directory tree to S3 (checks files freshness using size and md5
checksum, unless overridden by options, see below)
s3cmd sync LOCAL_DIR s3://BUCKET[/PREFIX] or s3://BUCKET[/PREFIX]
LOCAL_DIR
注:不会自动同步,需要自己输入这条命令来同步一个目录。
Sign an S3 URL to provide limited public access with expiry
s3cmd signurl s3://BUCKET/OBJECT < expiry_epoch|+expiry_offset >