
[英]aws send command not copying file from s3 bucket to windows server ec2 instance
[英]EC2 instance running S3 Sync command terminates before data transfer is complete
我有一个运行 Linux 的 EC2 实例。此实例用于运行aws s3
命令。
我想将过去 6 个月的数据从source
同步到target
S3 存储桶。 我正在使用具有必要权限的凭据来执行此操作。
最初我只是运行命令:
aws s3 sync "s3://source" "s3://target" --query "Contents[?LastModified>='2022-08-11' && LastModified<='2023-01-11']"
但是,大约 10 分钟后,此命令停止运行,并且只有一小部分数据被同步。
我认为这是因为我的 SSM session 正在终止,并且命令停止执行。
为了解决这个问题,我使用了以下命令来尝试确保即使在我的 SSM 终端 session 关闭后该命令也会继续执行:
nohup aws s3 sync "s3://source" "s3://target" --query "Contents[?LastModified>='2022-08-11' && LastModified<='2023-01-11']" --exclude "*.log" --exclude "*.bak" &
检查 EC2 实例的状态,该命令似乎运行了大约 20 分钟,然后由于某种原因明显停止。
--query
参数控制在 API 调用的响应中显示的信息。
它不控制在aws s3 sync
命令中复制哪些文件。 aws s3 sync
的文档将--query
参数定义为: “用于过滤响应数据的 JMESPath 查询。”
您的aws s3 sync
命令将同步所有文件,除非您使用Exclude 和 Include Filters 。 这些过滤器对 object 的名称进行操作。无法通过提供日期范围来限制sync
命令。
我无法评论为什么命令会在完成之前停止运行。 我建议您将 output 重定向到日志文件,然后查看日志文件以查找任何线索。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.