s3cmd 是一款 Amazon S3 命令行工具。它不仅能上传、下载、同步,还能设置权限,下面是完整的安装使用指南。
@[toc]
1. 安装
$ apt-get update
$ sudo apt-get install s3cmd
复制代码
2. 配置
2.1 服务端调用radosgw创建用户生产key:
$ radosgw-admin user create --display-name="[name]" --uid=[uid]
复制代码
像下面这样,保存好access key 和 secret key,一会在s3cmd里需要填写。
2.2 配置s3cmd
$ s3cmd --configure
复制代码
根据提示输入accessKey,securityKey 生成基本的配置文件,其他回车默认或者N。
修改host_base/host_bucket host_base = ip-113-107-161-207:7480(改成自己的服务端的网址/IP和端口) host_bucket = ip-113-107-161-207:7480/%(bucket)(改成自己的服务端的网址/IP和端口)
3. 基本操作
3.1 创建桶、查看桶、查看桶内容
查看桶
$ s3cmd ls
复制代码
创建桶
$ s3cmd mb s3://[buk]
复制代码
查看桶里面有什么
$ s3cmd ls s3://[buk]
复制代码
3.2 上传单文件/批量/-r 目录
上传单个文件
$ s3cmd put [localFile] s3://[buk]/[Path]
复制代码
批量上传文件(就是在目录下加个星号*,代表此目录下的所有文件)
$ s3cmd put [localDirectory/*] s3://[buk]/[Path]
复制代码
上传目录
上传整个文件夹
$ s3cmd put -r [localDirectory] s3://[buk]/[Path]
上传文件夹里面的所有文件(比上面多了 / )
$ s3cmd put -r [localDirectory/] s3://[buk]/[Path]
复制代码
3.3 下载单文件/批量/目录
下载单个文件
$ s3cmd get s3://[buk]/[filePath] [localPath]
复制代码
批量下载文件(就是在目录下加个星号*,代表此目录下的所有文件)
$ s3cmd get s3://[buk]/[filePath/*] [localPath]
复制代码
3.4 删除单文件/批量/目录
删除单个文件
$ s3cmd del s3://[buk]/[filePath/file]
删除目录
$ s3cmd del s3://[buk]/[filePath]
批量删除目录下的文件
$ s3cmd del s3://[buk]/[filePath/*]
复制代码
3.5 删除桶
s3cmd rb s3://[buk]
复制代码