A client error (400) occurred when calling the HeadObject operation: Bad Request Completed 1 part(s) with ... file(s) remaining
Solution 1
I added the --region option to the statement and everything is working now:
aws s3 cp s3:/[BUCKETNAME]/ . --recursive --region [REGION]
Solution 2
This error also happens when your session has expired if using temporary security credentials with an assumed role. Not a forbidden or unknown id as you would expect.
Solution 3
The --region
parameter did not work for me.
I tried using --profile
, and it worked all fine.
aws s3api head-bucket --bucket xxxx --profile dev-profile
Solution 4
My problem got fixed as soon as I upgraded to the latest version of aws cli. Here is how you upgrade :
pip install --upgrade --user awscli
specifying the region wasn't helpful
shootoke
Updated on January 07, 2022Comments
-
shootoke over 2 years
I'm trying to copy a file from a private s3-bucket via cli to my ec2 instance. The ec2 is in the same region as the bucket and has the following IAM role attached (AmazonS3FullAccess):
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:*", "Resource": "*" } ] }
But the command
aws s3 cp s3://[BUCKETNAME]/index.html
fails with the error:A client error (400) occurred when calling the HeadObject operation: Bad Request Completed 1 part(s) with ... file(s) remaining.
I already double checked the spelling of the bucket name...