Linux安装配置awscli命令行接口工具及其从aws上传下载数据

官网技术文档有全面介绍:安装或更新 AWS CLI 的最新版本 - AWS Command Line Interface在系统上安装 AWS CLI。https://docs.aws.amazon.com/zh_cn/cli/latest/userguide/getting-started-install.html#getting-started-install-instructionsawscli常用命令参考:

aws s3常用命令、hdfs dfs/hadoop fs常用命令 - 知乎QInzhengk/Math-Model-and-Machine-Learning (github.com)一、aws s3常用命令1、查看目录下所有文件夹(|head查看前10个):aws s3 ls s3://mleang/qk/data/ aws s3 ls s3://dfiee/06/|head查看文件夹大小: aws s3 ...https://zhuanlan.zhihu.com/p/450037966以下介绍下我走完的步骤:

准备环节

  1. 安装好的 Linux 系统
  2. 具有管理员权限的 sudo 账户
  3. 能够联网(若是某机构单独内网或局域网,后续要重新设置全局的访问aws的端口而不是使用默认的亚马逊官方的路径)
  4. 现在让我们开始安装:

1、下载安装文件

打开终端使用 ​​curl​​ 命令下载 AWS CLI 的安装文件:

复制代码
$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"

以上命令会在当前工作目录下载一个 ​​awscliv2.zip​​ 的文件。

使用 ​​ls 命令​​ 确认当前下载下来的文件:

复制代码
$ ls -l awscliv2.zip

(若是机构内网,则在外网用https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip下载压缩文件后摆渡到内网的磁盘里)

2、解压缩下载的文件

使用 ​​unzip 命令​​ 解压安装包:

复制代码
$ unzip awscliv2.zip

它会在当前目录创建一个 ​​aws​​ 文件夹,把解压好的文件放进去

3、运行安装脚本

使用以下命令运行安装脚本

复制代码
$ sudo ./aws/install

脚本会把所有安装的文件放到 ​​/usr/local/aws-cli​​​ 目录下,然后创建一个链接文件到 ​​/usr/local/bin​​ 目录。

4、检查 AWS CLI 的版本

运行以下脚本检查版本:

复制代码
$ aws --version

为了验证 AWS CLI 是否安装正确,开始配置 AWS CLI:

登录你的 AWS 管理控制台,取得 AWS 访问密钥 IDAccess Key ID 和 安全访问密钥Secret Access Key。

如果还没完成创建,请先创建,并把它们

到安全的地方。

然后回到命令行,运行以下命令:

复制代码
$ aws configure
AWS Access Key ID [None]: xxxxxxxxxxxxxxxxxxxAWS 
Secret Access Key [None]: xxxxxxxxxxxxxxxxxxx
Default region name [None]: us-west-2
Default output format [None]: json
以上的证书会被保存到这个文件:
$ cat  ~/.aws/credentials 
[default]
aws_access_key_id = *****************
aws_secret_access_key = *******************************
$ cat  ~/.aws/config
[default]
output = json
region = us-west-2
若再次运行aws configure命令,不需改动的项直接回车即可。

还有一步很重要,我就踩了坑:若是在机构内网环境中进行的以上操作,需要设置终端访问的aws服务器的连接地址和端口号设置为全局变量:

$export AWS_ENDPOINT_URL=http://XXX.XX.XXX.XX:端口号 (访问链接需要先拿到)

运行 ​​aws​​ 命令列出你账户中的 s3 储存桶和 VPC:

复制代码
$ aws s3 ls
$ aws ec2 describe-vpcs

输出如下:

<a">

成功输出内容,说明你的 AWS CLI 已经安装和配置完成,可进入下一步的查看、上传、下载和同步、删除等操作。

插曲:linux 命令指令不熟悉的参考https://www.linuxcool.com/curlcurl命令来自英文词组"CommandLine URL"的缩写,其功能是用于在Shell终端界面中基于URL规则进行的文件传输工作。curl是一款综合的传输工具,可以上传也可以下载,支持HTTP、HTTPS、FTP等三十余种常见协议。语法格式https://www.linuxcool.com/curl

实在Linux是0基础小白,可学习:Linux 教程 | 菜鸟教程

awscli 下载数据:

以下示例将文件从 Amazon S3 存储桶复制到当前工作目录,其中 ./ 指定当前的工作目录。

$ aws s3 cp s3://bucket-name/filename.txt ./

以下示例使用 s3 cp 命令,将本地文件从当前工作目录复制到 Amazon S3 存储桶。

$ aws s3 cp filename.txt s3://bucket-name

删除本地文件:

// Delete local file

$ rm ./MyFile1.txt

以下示例删除 s3://my-bucket/path 及其所有内容。

$ aws s3 rm s3://my-bucket/path --recursive

同步本地的文件到aws服务器:s3 syncs3 cp 可以使用 --acl 选项。这样您能够为复制到 Amazon S3 的文件设置访问权限。--acl 选项接受 privatepublic-readpublic-read-write 值。有关更多信息,请参阅 Amazon Simple Storage Service 用户指南 中的标准 ACL

$ aws s3 sync . s3://my-bucket/path --acl public-read

退出linux终端界面重新使用aws时需要再次设置aws连接地址和端口号设置为全局变量:

$export AWS_ENDPOINT_URL=http://XXX.XX.XXX.XX:端口号 (访问链接需要先拿到)

后用:$aws s3 ls $aws s3 ls s3://桶名//文件名

(2023-11-3更)

相关推荐
xuanyu2235 分钟前
Linux常用指令
linux·运维·人工智能
有时间要学习1 小时前
Linux——应用层自定义协议与序列化
linux·服务器·网络
阑梦清川1 小时前
简明linux系统编程--互斥锁--TCP--UDP初识
linux·udp·tcp·互斥锁·信号·解锁·加锁
hardStudy_h1 小时前
Linux——常用系统设置和快捷键操作指令
linux·运维·服务器
XF鸭2 小时前
TCP 和 UDP 协议的区别?
linux
qq 1778036223 小时前
智能新时代,游戏盾守护顺畅体验
运维·服务器·网络·游戏·云计算·ddos·ip
Flying_Fish_roe3 小时前
linux-安全管理-防火墙与网络安全
linux·数据库·oracle
不见长安见晨雾4 小时前
Linux:vim编辑技巧
linux·编辑器·vim
神秘的土鸡4 小时前
Linux中使用Docker容器构建Tomcat容器完整教程
linux·运维·服务器·docker·容器·tomcat
TravisBytes5 小时前
linux 系统是如何收发数据包
linux·运维·服务器