如何在 Linux 中安装 s3cmd 并管理 Amazon s3 存储桶

S3, – 简单存储服务- 是亚马逊的存储服务,为 IT 团队提供一种安全、可扩展且可靠的方式来存储和检索云上的文件和文件夹。 S3 可确保数据在需要时可用并随着需求的增长而扩展,从而帮助您充分利用数据。

通常,在登录到您的 AWS 账户后从 Web 浏览器访问 S3。 这也可以使用名为 s3cmd 的漂亮工具在命令行上实现。 这 s3cmd 实用程序是一个开源命令行工具,允许您访问和管理您的 S3 服务。 它允许您创建/删除存储桶、添加/远程文件和文件夹以及列出 S3 存储桶的内容。

本指南将寻求帮助您在 Linux 上安装 s3cmd 并帮助您充分利用它来管理您的 S3 帐户。

如何在 Linux 上安装 s3cmd

在 Ubuntu、CentOS 和 RHEL 等主要 Linux 发行版上安装 s3cmd 是在公园里散步。 这是因为 s3cmd 包在他们的存储库中可用。

让我们看看如何在各种发行版上安装 s3cmd:

在 Ubuntu / Debian 风格上

对于 Debian / Ubuntu 发行版,使用 APT 包管理如下:

$ sudo apt install s3cmd

 

在 CentOS 8 / RHEL 8 上

在 CentOS / RHEL 发行版上,使用以下命令安装 s3cmd:

$ sudo dnf install s3cmd

在 SUSE Linux 上

对于 SUSE Enterprise 服务器,首先添加存储库并使用 拉链 如图所示的命令行工具。

$ sudo zypper addrepo https://s3tools.org/repo/SLE_11/s3tools.repo
$ zypper install s3cmd

从源安装

如果上面没有列出您的 Linux 发行版,请不要担心。 您可以从源代码安装,这将适用于所有发行版。

首先,下载最新的s3cmd 版本的zip 文件,此时是s3cmd 2.1.0。

$ wget https://sourceforge.net/projects/s3tools/files/s3cmd/2.1.0/s3cmd-2.1.0.zip

在您的主目录中,您应该看到 s3cmd-2.1.0.zip 压缩文件。

 

接下来,解压缩文件。

$ unzip s3cmd-2.1.0

导航到未压缩的文件夹

$ cd s3cmd-2.1.0

并执行显示的命令从源安装。

$ sudo python3 setup.py install

 

a47ab0cae8e018ed5598549886c30dde.png

设置s3cmd环境

在开始与 Amazon S3 交互之前,我们需要设置 s3cmd 工具,方法是提供必要的凭证,例如访问我们帐户的访问密钥和秘密访问权限。 因此,运行以下命令来配置 s3cmd 环境。

$ s3cmd --configure

提供访问密钥、秘密访问、区域和加密密码,如下面的屏幕截图所示。

请务必使用 HTTPS 协议以增强安全性。

 

c7d0fe35d3d8f3d374c4fa71b9b5017e.png

 

c802dd2118bff55b63f469e78cfdfffc.png

列出 s3 存储桶

我们已成功配置 s3cmd 工具,现在可以开始与 Amazon S3 交互了。 在开始与 S3 交互之前,请确保您的 AWS 上的用户已配置有 Amazon S3 IAM 角色。

要列出您账户上的现有 S3 存储桶,请执行以下命令:

$ s3cmd ls

到目前为止,我们还没有,因为我们才刚刚开始。

 

2124aab49a1cfc730ca6f8111e00eae4.png

让我们创造一个?

创建 S3 存储桶

要创建新的 S3 存储桶,请运行显示的命令。 下面的命令在 S3 中创建一个名为的存储桶 linux方式。

$ s3cmd mb s3://linuxways

 

d1a7ebd053ac51264b8bda7092930e31.png

您可以转到您的 AWS 账户并确认存储桶已如图所示创建。

 

ec128c40bbce79ec3741ec637f27fb45.png

将文件上传到 S3 存储桶

要将常规文件上传到您的存储桶,请调用 放 选项后跟文件和 S3 存储桶的路径。 下面的命令上传文件 你好.sh 到 S3。

$ s3cmd put hello.sh s3://linuxways/

 

84e925dabbdee2daf267465509e360e2.png

将目录上传到 S3 存储桶

要上传目录,请使用 -r 用于在其内容旁边递归添加目录的标志。 注意不要添加前导 / 因为这只会添加目录的内容而不是目录本身。

在这里,我们正在上传 图片 包含 JPG 图像文件的目录。

$ s3cmd put -r Pictures s3://linuxways/

 

6bb6751c2be0788cee48a55af295b11a.png

列出 S3 存储桶的内容

要查看或显示您的 S3 存储桶包含的内容,请运行该命令。

$ s3cmd ls s3://linuxways/

 

70d8d68148f27a97d0063f3d8b52d8d9.png

从 S3 存储桶中删除文件或目录

如果您希望移除或删除不再需要的文件,请使用 的 选项如图所示。

$ s3cmd del s3://linuxways/hello.sh

要删除目录,请使用以下相同的语法。 但是,这只适用于目录为空的情况。

$ s3cmd del s3://linuxways/Pictures

 

c29b01e0217c97d9e713d7f794212781.png

如果目录不为空,请使用 -r 递归删除其所有内容的选项,如图所示。

$ s3cmd del -r s3://linuxways/Pictures/

 

5bfc43f11ae3aac1158852a7496c9e72.png

从 S3 中删除存储桶

如果您不再需要您的存储桶,您可以按如下方式将其删除。

$ s3cmd rb s3://linuxways

如果存储桶仍然包含一些文件和文件夹,您将遇到以下错误,通知您存储桶不为空。

 

10aeeae7e94bd1c43cb55acd763e71b6.png

解决方案是返回并删除存储桶中的所有文件和目录,然后重试。

 

bff1d6a53d8a4945df78e39de25853da.png

总结

这是 s3cmd 命令行工具以及如何使用它来管理 Amazon S3 存储功能的摘要

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/474473.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mybatis源码分析

Mybatis源码分析 第一章、回顾 1. 课程中工具的版本 1. JDK8 2. IDEA2018.3 3. Maven3.5.3 4. MySQL 5.1.48 --> MySQL 5Mybatis 3.4.62. Mybatis开发的简单回顾 1. Mybatis做什么?Mybatis是一个ORM类型框架,解决的数据库访问和操作的问题&#xf…

Manifest merger failed with multiple errors, see logs

问题 Manifest merger failed with multiple errors, see logs详细问题 笔者进行Android 项目开发&#xff0c;修改AndroidManifest.xml代码后&#xff0c;控制台报错 AndroidManifest.xml报错核心代码 <manifest><uses-permission android:name"android.perm…

[03] Vue指令(2)

目录 属性绑定指令(v-bind)列表渲染指令(v-for)v-for中的key 双向绑定指令(v-model) 属性绑定指令(v-bind) 作用&#xff1a;动态设置html的标签属性&#xff0c;比如&#xff1a;src、url、title语法&#xff1a;v-bind:属性名“表达式”v-bind:可以简写成 > : 比如&…

C语言函数调用的流程

函数调用时&#xff0c;进程的上下文会切换到被调函数&#xff0c;当被调函数执行完毕之后再切换回去 函数调用时代码的执行流程

电子商务跨境电商大数据的关键技术之—主流电商大数据采集

大数据采集是指通过各种技术手段和工具收集、获取和提取大规模数据的过程。在信息时代&#xff0c;各种互联网、物联网、移动设备等的普及和应用&#xff0c;产生了海量的数据&#xff0c;这些数据被称为大数据。大数据采集就是对这些数据进行收集和抓取&#xff0c;以获得有意…

SpringBoot+Vue项目部署上线

部署前准备 注册京东云 京东云: https://www.jdcloud.com/ 117.72.32.65vue本地部署 新建文件.env.development VUE_APP_BASEURLhttp://localhost:9191新建文件 .env.production VUE_APP_BASEURLhttp://117.72.32.65:9191main.js 设置全局变量$baseUrl Vue.prototype.$baseUrl…

精品springboot基于大数据的电脑主机硬件选购助手-可视化大屏

《[含文档PPT源码等]精品基于springboot基于大数据的电脑主机硬件选购助手[包运行成功]》该项目含有源码、文档、PPT、配套开发软件、软件安装教程、项目发布教程、包运行成功&#xff01; 软件开发环境及开发工具&#xff1a; Java——涉及技术&#xff1a; 前端使用技术&a…

11.【CPP】模版(深入理解模版的实例化,从编译链接的原理理解模版为何无法分离编译)

非类型模版参数 1.模版参数分为类型模版参数和非类型模版参数&#xff0c;非类型模版参数一般都是整形常量&#xff08;整形&#xff1a;size_t,int,char等&#xff09; 2.浮点数、类对象以及字符串是不允许作为非类型模版参数的。非类型模版的参数必须在编译的时候就能确定结…

从汇编角度解释线程间互斥-mutex互斥锁与lock_guard的使用

多线程并发的竞态问题 我们创建三个线程同时进行购票&#xff0c;代码如下 #include<iostream> #include<thread> #include<list> using namespace std; //总票数 int ticketCount100; //售票线程 void sellTicket(int idx) {while(ticketCount>0){cou…

C++ 多起点的bfs(五十九)【第六篇】

今天我们来学习多起点的bfs 1.多起点的bfs 在普通的广度优先搜索问题中&#xff0c;为了得到从初始状态到达目标状态的最小操作数&#xff0c;则将初始状态放入队列中。离初始状态由近及远地不断扩展出新的状态&#xff0c;直到搜索到目的状态&#xff0c;或队列为空&#xff…

【网络安全】什么样的人适合学?该怎么学?

有很多想要转行网络安全或者选择网络安全专业的人在进行决定之前一定会有的问题&#xff1a; 什么样的人适合学习网络安全&#xff1f;我适不适合学习网络安全&#xff1f; 当然&#xff0c;产生这样的疑惑并不奇怪&#xff0c;毕竟网络安全这个专业在2017年才调整为国家一级…

解锁Spring Boot中的设计模式—03.委派模式:探索【委派模式】的奥秘与应用实践!

委派模式 文章目录 委派模式1.简述**应用场景****优缺点****业务场景示例** 2.类图3.具体实现3.1.自定义注解3.2.定义抽象委派接口3.3.定义具体执行者3.4.定义委派者(统一管理委派任务)3.5.定义委派者管理类 4.测试4.1.controller层4.2.测试不同场景4.2.1.测试生产部门计算费用…