[英]How to download all files from s3 bucket to local linux server while passing bucket and local folder value at runtime using python
[英]files copying from remote server to s3 does not show status on s3 bucket
我正在将近 7 TB 的文件和文件夹从远程服务器上传到 s3 存储桶,但在 s3 存储桶上看不到任何文件。 我只能在 s3 上看到成功复制的几个文件。
我有一台 ec2 服务器,我使用此链接在其上安装了一个 s3 存储桶
在远程服务器上,我使用以下脚本。 我也测试了这个脚本,它对于小文件来说工作正常
rsync -uvPz --recursive -e "ssh -i /tmp/key.pem" /eb_bkup/OMCS_USB/* appadmin@10.118.33.124:/tmp/tmp/s3fs-demo/source/backups/eb/ >> /tmp/log.txt &
我生成的日志文件显示正在复制文件以及所有相关信息,如传输速度、文件名等。但在 s3 存储桶上,复制第一个文件后我看不到任何文件。
每个文件大小从 500MB 到 25GB。
为什么我在 S3 上看不到这些文件?
Amazon S3 是一种对象存储服务,而不是文件系统。 我建议您使用AWS 命令行界面 (CLI)来复制文件,而不是将 S3 挂载为磁盘。
AWS CLI 包含一个aws s3 sync
命令,非常适合您的目的——它将在两个位置之间同步文件。 因此,如果出现故障,您可以重新运行它,它不会复制已经复制的文件。
所以我面临的问题是 rsync 在目标 ec2 上复制文件,然后首先创建一个临时文件,然后将其写入 S3 存储桶。 因此,多个 rsync 作业正在运行,并且 EC2 服务器上的本地 ebs 卷存储已满。 这就是为什么 rsync 无法创建临时文件并一直在套接字上复制/写入的原因。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.