A basic copy or sync operation is failing on newly created S3 AWS buckets with default options. Current default options (and recommended best practice) are to have NO ACL on the bucket and we'd like to maintain that.
- os/version: centos 7.9.2009 (64 bit)
- os/kernel: 3.10.0-1160.71.1.el7.x86_64 (x86_64)
- os/type: linux
- os/arch: amd64
- go/version: go1.18.5
- go/linking: static
- go/tags: none
$ rclone copy bigmovie s3-standard:SOMEBUCKET/bigmovie -vv
[s3-standard] type = s3 provider = AWS env_auth = true region = us-east-1 endpoint = https://bucket.vpce-REDACTED.s3.us-east-1.vpce.amazonaws.com #server_side_encryption = AES256 storage_class = STANDARD #bucket_acl = private #acl = private
Note that I've tested all permutations of the commented out lines with similar result
2022/08/25 17:25:55 DEBUG : Using config file from "PERSONALSTUFF/rclone.conf"
2022/08/25 17:25:55 DEBUG : rclone: Version "v1.55.1" starting with parameters ["/usr/local/rclone/1.55/bin/rclone" "copy" "bigmovie" "s3-standard:SOMEBUCKET" "-vv"]
2022/08/25 17:25:55 DEBUG : Creating backend with remote "bigmovie"
2022/08/25 17:25:55 DEBUG : fs cache: adding new entry for parent of "bigmovie", "MYDIRECTORY/testbed"
2022/08/25 17:25:55 DEBUG : Creating backend with remote "s3-standard:SOMEBUCKET/bigmovie"
2022/08/25 17:25:55 DEBUG : bigmovie: Need to transfer - File not found at Destination
2022/08/25 17:25:55 ERROR : bigmovie: Failed to copy: s3 upload: 400 Bad Request: <?xml version="1.0" encoding="UTF-8"?>
AccessControlListNotSupportedThe bucket does not allow ACLs8DW1MQSHEN6A0CFAd3Rlnx/XezTB7OC79qr4QQuwjgR+h2VYj4LCZWLGTny9YAy985be5HsFgHcqX4azSDhDXefLE+U=
2022/08/25 17:25:55 ERROR : Attempt 1/3 failed with 1 errors and: s3 upload: 400 Bad Request: <?xml version="1.0" encoding="UTF-8"?>
If I create a similar bucket NONDEFAULT with ACL set to:
Bucket owner (your AWS account) Canonical ID: SomeLongString List, Write Read, Write
then the rsync copy works. However we wish to respect the AWS no ACL default