Rclone Fails to Copy Large File to AWS Access Point

What is the problem you are having with rclone?

Rclone copy fails for large files (e.g. multi-part uploads) to an access point on an AWS bucket while the aws cli works.

Run the command 'rclone version' and share the full output of the command.

rclone v1.64.1
- os/version: rocky 8.10 (64 bit)
- os/kernel: 4.18.0-553.74.1.el8_10.x86_64 (x86_64)
- os/type: linux
- os/arch: amd64
- go/version: go1.21.3
- go/linking: static
- go/tags: none

Which cloud storage system are you using? (eg Google Drive)

AWS

The command you were trying to run (eg rclone copy /tmp remote:tmp)

rclone copy slice_170_tile_037_Cross.mat maripen_apex_ut:cmc-msi-accesspoint-2-254319122668/CMC/Derivatives/Moe/PS-OCT/3DTiles/Cross/ --s3-no-check-bucket --progress -vv

and the relevant aws call that does work:

aws s3 cp slice_170_tile_037_Cross.mat  s3://arn:aws:s3:us-east-2:254319122668:accesspoint/cmc-msi-accesspoint-2/CMC/Derivatives/Moe/PS-OCT/3DTiles/Cross/ --profile myeatts --region us-east-2

And the relevant rclone call of a smaller file (no multipart upload) that also works:

rclone copy dummy_file.txt maripen_apex_ut:cmc-msi-accesspoint-2-254319122668/CMC/Derivatives/Moe/PS-OCT/3DTiles/Cross/ --s3-no-check-bucket --progress -vv

Please run 'rclone config redacted' and share the full output. If you get command not found, please make sure to update rclone.

[maripen_apex_ut]
type = s3
provider = AWS
access_key_id = XXX
secret_access_key = XXX
region = us-east-2
location_constraint = us-east-2
endpoint = https://s3-accesspoint.us-east-2.amazonaws.com
storage_class = STANDARD

A log from the command that you were trying to run with the -vv flag

huxfo013@acn18 [~/tile_037_Cross.mat maripen_apex_ut:cmc-msi-accesspoint-2-254319122668/CMC/Derivatives/Moe/PS-OCT/3DTiles/Cross/ --s3-no-check-bucket --progress -vv
2025/10/30 12:09:13 DEBUG : rclone: Version "v1.64.1" starting with parameters ["rclone" "copy" "slice_170_tile_037_Cross.mat" "maripen_apex_ut:cmc-msi-accesspoint-2-254319122668/CMC/Derivatives/Moe/PS-OCT/3DTiles/Cross/" "--s3-no-check-bucket" "--progress" "-vv"]
2025/10/30 12:09:13 DEBUG : Creating backend with remote "slice_170_tile_037_Cross.mat"
2025/10/30 12:09:13 DEBUG : Using config file from "/users/5/huxfo013/.config/rclone/rclone.conf"
2025/10/30 12:09:13 DEBUG : fs cache: adding new entry for parent of "slice_170_tile_037_Cross.mat", "/users/5/huxfo013/cmc/ps-oct/git/midb_cmc_ps-oct/slurm"
2025/10/30 12:09:13 DEBUG : Creating backend with remote "maripen_apex_ut:cmc-msi-accesspoint-2-254319122668/CMC/Derivatives/Moe/PS-OCT/3DTiles/Cross/"
2025/10/30 12:09:13 DEBUG : maripen_apex_ut: detected overridden config - adding "{Dn7qA}" suffix to name
2025/10/30 12:09:13 DEBUG : Resolving service "s3" region "us-east-2"
2025/10/30 12:09:13 DEBUG : fs cache: renaming cache item "maripen_apex_ut:cmc-msi-accesspoint-2-254319122668/CMC/Derivatives/Moe/PS-OCT/3DTiles/Cross/" to be canonical "maripen_apex_ut{Dn7qA}:cmc-msi-accesspoint-2-254319122668/CMC/Derivatives/Moe/PS-OCT/3DTiles/Cross"
2025/10/30 12:09:13 DEBUG : slice_170_tile_037_Cross.mat: Need to transfer - File not found at Destination
2025/10/30 12:09:17 DEBUG : slice_170_tile_037_Cross.mat: open chunk writer: started multipart upload: yAN51qifwglPzghTWyix8NVnPJuiUcdv.XrdwI3wouq6dwD1qZLo1lMZpC0VtrOKwXvbGSHaIWZtO1_MGIbevTB_Vk9ydaQTCS9GmizhX9Nnx7p8HBA6_ADj0CsNqXrV
2025/10/30 12:09:17 DEBUG : slice_170_tile_037_Cross.mat: multi-thread copy: using backend concurrency of 4 instead of --multi-thread-streams 4
2025/10/30 12:09:17 DEBUG : slice_170_tile_037_Cross.mat: Starting multi-thread copy with 300 chunks of size 5Mi with 4 parallel streams
2025/10/30 12:09:17 DEBUG : slice_170_tile_037_Cross.mat: multi-thread copy: chunk 4/300 (15728640-20971520) size 5Mi starting
2025/10/30 12:09:17 DEBUG : slice_170_tile_037_Cross.mat: multi-thread copy: chunk 1/300 (0-5242880) size 5Mi starting
2025/10/30 12:09:17 DEBUG : slice_170_tile_037_Cross.mat: multi-thread copy: chunk 2/300 (5242880-10485760) size 5Mi starting
2025/10/30 12:09:17 DEBUG : slice_170_tile_037_Cross.mat: multi-thread copy: chunk 3/300 (10485760-15728640) size 5Mi starting
2025/10/30 12:09:18 DEBUG : slice_170_tile_037_Cross.mat: multi-thread copy: chunk 3/300 failed: multi-thread copy: failed to write chunk: failed to upload chunk 3 with 5242880 bytes: InvalidAccessPoint: The specified accesspoint name or account is not valid 
        status code: 400, request id: 87410CC2HF55FZ9A, host id: vt/nRv2YIgO+NMr+FEc+7bDo9QHQGp3aX+xHJVv9ZJ7LZ1VhyjMALWw0M0I8LR9sioKti93fLlIlvhTmlQhJJJzeb5SKIYNQMe9zlhsJ4wE=
2025/10/30 12:09:18 DEBUG : slice_170_tile_037_Cross.mat: multi-thread copy: chunk 5/300 (20971520-26214400) size 5Mi starting
2025/10/30 12:09:18 DEBUG : slice_170_tile_037_Cross.mat: multi-thread copy: chunk 4/300 failed: multi-thread copy: failed to write chunk: failed to upload chunk 4 with 5242880 bytes: RequestCanceled: request context canceled
caused by: context canceled
2025/10/30 12:09:18 DEBUG : slice_170_tile_037_Cross.mat: multi-thread copy: chunk 1/300 failed: multi-thread copy: failed to write chunk: failed to upload chunk 1 with 5242880 bytes: RequestCanceled: request context canceled
caused by: context canceled
2025/10/30 12:09:18 DEBUG : slice_170_tile_037_Cross.mat: multi-thread copy: chunk 2/300 failed: multi-thread copy: failed to write chunk: failed to upload chunk 2 with 5242880 bytes: RequestCanceled: request context canceled
caused by: context canceled
2025/10/30 12:09:18 DEBUG : slice_170_tile_037_Cross.mat: multi-thread copy: chunk 5/300 failed: multi-thread copy: failed to write chunk: failed to upload chunk 5 with 5242880 bytes: RequestCanceled: request context canceled
caused by: context canceled
2025/10/30 12:09:18 DEBUG : slice_170_tile_037_Cross.mat: multi-thread copy: cancelling transfer on exit
2025/10/30 12:09:18 DEBUG : slice_170_tile_037_Cross.mat: multi-thread copy: abort failed: failed to abort multipart upload "yAN51qifwglPzghTWyix8NVnPJuiUcdv.XrdwI3wouq6dwD1qZLo1lMZpC0VtrOKwXvbGSHaIWZtO1_MGIbevTB_Vk9ydaQTCS9GmizhX9Nnx7p8HBA6_ADj0CsNqXrV": InvalidAccessPoint: The specified accesspoint name or account is not valid 
	status code: 400, request id: 874CXWE30PZEA739, host id: VLyecRnAYJ59Zv6oJzZjHIcyIMK/DvsCHdJTOiNrpExQOf3JHg9+IrrqPXbCa60P/50hpH3kQTbK5xu/K96piuYekJge7aDRzxBz+4Xs1HU=
2025/10/30 12:09:18 ERROR : slice_170_tile_037_Cross.mat: Failed to copy: multi-thread copy: failed to write chunk: failed to upload chunk 3 with 5242880 bytes: InvalidAccessPoint: The specified accesspoint name or account is not valid 
        status code: 400, request id: 87410CC2HF55FZ9A, host id: vt/nRv2YIgO+NMr+FEc+7bDo9QHQGp3aX+xHJVv9ZJ7LZ1VhyjMALWw0M0I8LR9sioKti93fLlIlvhTmlQhJJJzeb5SKIYNQMe9zlhsJ4wE=
2025/10/30 12:09:18 ERROR : Attempt 1/3 failed with 1 errors and: multi-thread copy: failed to write chunk: failed to upload chunk 3 with 5242880 bytes: InvalidAccessPoint: The specified accesspoint name or account is not valid 
        status code: 400, request id: 87410CC2HF55FZ9A, host id: vt/nRv2YIgO+NMr+FEc+7bDo9QHQGp3aX+xHJVv9ZJ7LZ1VhyjMALWw0M0I8LR9sioKti93fLlIlvhTmlQhJJJzeb5SKIYNQMe9zlhsJ4wE=
2025/10/30 12:09:18 DEBUG : slice_170_tile_037_Cross.mat: Need to transfer - File not found at Destination
Transferred:              0 B / 0 B, -, 0 B/s, ETA -
Transferred:            0 / 1, 0%
Elapsed time:         9.4s
Transferring:
 *                  slice_170_tile_037_Cross.mat: transferring

^^ I did truncate the identical 2 retries.

Also relevant might be the AWS policy on the bucket and access point.
AWS policy associated with users on the bucket:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket",
                "s3:GetObject",
                "s3:GetObjectTagging",
                "s3:PutObject",
                "s3:PutObjectTagging",
                "s3:DeleteObject",
                "s3:AbortMultipartUpload",
                "s3:ListMultipartUploadParts",
                "s3:ListBucketMultipartUploads"
            ],
            "Resource": "*"
        }
    ]
}

Relevant bit of the AWS access point policy:

{
                        "Sid": "CMCListMultipartUsers",
                        "Effect": "Allow",
                        "Principal": {
                                "AWS": [
                                        "arn:aws:iam::376129864689:user/myeatts.psoct.cmc",
                                        "arn:aws:iam::376129864689:user/wanqingyu.tracttracing.cmc",
                                        "arn:aws:iam::376129864689:user/ddemeritte.all.cmc",
                                        "arn:aws:iam::376129864689:user/sheilbronner.all.cmc",
                                        "arn:aws:iam::376129864689:user/jzimmerman.mri.cmc",
                                        "arn:aws:iam::376129864689:user/rhuxford.all.cmc",
                                        "arn:aws:iam::376129864689:user/ssotiropoulos.mri.cmc",
                                        "arn:aws:iam::376129864689:user/swarrington.mri.cmc"
                                ]
                        },
                        "Action": [
                                "s3:ListBucketMultipartUploads"
                        ],
                        "Resource": "arn:aws:s3:us-east-2:254319122668:accesspoint/cmc-msi-accesspoint-2"
                },
                {
                        "Sid": "PSOCTRWUsers",
                        "Effect": "Allow",
                        "Principal": {
                                "AWS": [
                                        "arn:aws:iam::376129864689:user/myeatts.psoct.cmc"
                                ]
                        },
                        "Action": [
                                "s3:GetObject",
                                "s3:PutObject",
                                "s3:DeleteObject",
                                "s3:GetObjectTagging",
                                "s3:PutObjectTagging",
                                "s3:AbortMultipartUpload",
                                "s3:ListMultipartUploadParts"
                        ],
                        "Resource": [
                                "arn:aws:s3:us-east-2:254319122668:accesspoint/cmc-msi-accesspoint-2/object/CMC/Raw/*/PS-OCT/*",
                                "arn:aws:s3:us-east-2:254319122668:accesspoint/cmc-msi-accesspoint-2/object/CMC/Derivatives/*/PS-OCT/*",
                                "arn:aws:s3:us-east-2:254319122668:accesspoint/cmc-msi-accesspoint-2/object/CMC/PS-OCT/*"

I believe that the permissions must be set correctly since the aws cli command works, and that rclone is maybe attempting a command that isn’t covered in the policy under the hood.

Any ideas?

rclone v1.64.1 is many years old, from an out of date repository.

  1. rclone selfupdate
  2. test again.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.