AWS S3 cp创建未定义的文件

时间:2018-02-12 08:02:03

标签: amazon-web-services amazon-s3

使用aws cli cp命令递归复制文件时,会出现一个创建一些未定义文件的错误。

aws s3 cp --recursive $HOME/$MYHOST-$MYTIMESTAMP/$MYHOST-$MYTIMESTAMP-*.xml  s3://mybucket/$MYHOST-$MYTIMESTAMP/

程序运行正常并上传到指定的存储桶。但它也会在根文件夹的桶外创建一些未定义的文件。这种情况一直都在发生,我必须rm(删除)那些讨厌的未定义文件。 enter image description here

我认为这是一个错误,然后尝试单独上传文件而不是使用通配符,结果与递归相同,它仍会在根文件夹中再次创建额外的未定义文件。这只有在我在bash脚本中运行一堆相同的cp命令时才会发生。在这种情况下,问题是间歇性出现。

aws s3 cp  $HOME/$MYHOST-$MYTIMESTAMP/$MYHOST-$MYTIMESTAMP-hello.xml  s3://mybucket/$MYHOST-$MYTIMESTAMP/

但是,仅针对单个文件执行此操作时,它不会显示。 我的Cli版本 -

  

aws-cli / 1.14.34 Python / 2.7.14 + Linux / 4.4.104-39-默认   botocore / 38年1月8日

normal output 任何帮助都将受到高度赞赏。

1 个答案:

答案 0 :(得分:3)

您已配置S3访问日志记录以将日志写入此存储桶。据推测,这些是此存储桶的日志文件。

为什么文件名以" undefined"开头?不清楚 - 当您为存储桶设置日志记录时可能出现问题,因此日志文件前缀未保存 - 但文件名看起来像S3创建的日志文件的名称。

https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerLogs.html

最佳做法是设置一个单独的存储桶,用于收集每个区域中的S3访问日志。