File copy from pCloud to Win fails

What is the problem you are having with rclone?

rclone copy command fails for provider pCloud.com

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

rclone v1.59.2

  • os/version: Microsoft Windows 10 Pro 21H1 (64 bit)
  • os/kernel: 10.0.19043.1288 (x86_64)
  • os/type: windows
  • os/arch: amd64
  • go/version: go1.18.6
  • go/linking: static
  • go/tags: cmount

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

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

rclone copy pcloud:\Test\asdf.txt R:\

The rclone config contents with secrets removed.

[pcloud]
type = pcloud
hostname = eapi.pcloud.com
token = {"access_token":"[snipped for privacy]","token_type":"bearer","expiry":"0001-01-01T00:00:00Z"}

A log from the command with the -vv flag

C:\>rclone copy pcloud:\Test\asdf.txt R:\ -vv
2022/10/16 09:51:10 DEBUG : rclone: Version "v1.59.2" starting with parameters ["rclone" "copy" "pcloud:\\Test\\asdf.txt" "R:\\" "-vv"]
2022/10/16 09:51:10 DEBUG : Creating backend with remote "pcloud:\\Test\\asdf.txt"
2022/10/16 09:51:10 DEBUG : Using config file from "R:\\rclone\\rclone.conf"
2022/10/16 09:51:10 DEBUG : fs cache: adding new entry for parent of "pcloud:\\Test\\asdf.txt", "pcloud:Test"
2022/10/16 09:51:10 DEBUG : Creating backend with remote "R:\\"
2022/10/16 09:51:10 DEBUG : fs cache: renaming cache item "R:\\" to be canonical "//?/R:/"
2022/10/16 09:51:11 DEBUG : asdf.txt: Need to transfer - File not found at Destination
2022/10/16 09:51:11 DEBUG : Couldn't parse Date: from server evc73.pcloud.com: "Sun, 16 Oct 2022 07:51:11 +0000": parsing time "Sun, 16 Oct 2022 07:51:11 +0000" as "Mon Jan _2 15:04:05 2006": cannot parse ", 16 Oct 2022 07:51:11 +0000" as " "
2022/10/16 09:51:11 DEBUG : Couldn't decode error response: invalid character '<' looking for beginning of value
2022/10/16 09:51:11 ERROR : asdf.txt: Failed to copy: failed to open source object: pcloud error: 410 Gone (410)
2022/10/16 09:51:11 ERROR : Attempt 1/3 failed with 1 errors and: failed to open source object: pcloud error: 410 Gone (410)
2022/10/16 09:51:11 DEBUG : asdf.txt: Need to transfer - File not found at Destination
2022/10/16 09:51:12 DEBUG : Couldn't parse Date: from server evc73.pcloud.com: "Sun, 16 Oct 2022 07:51:12 +0000": parsing time "Sun, 16 Oct 2022 07:51:12 +0000" as "Mon Jan _2 15:04:05 2006": cannot parse ", 16 Oct 2022 07:51:12 +0000" as " "
2022/10/16 09:51:12 DEBUG : Couldn't decode error response: invalid character '<' looking for beginning of value
2022/10/16 09:51:12 ERROR : asdf.txt: Failed to copy: failed to open source object: pcloud error: 410 Gone (410)
2022/10/16 09:51:12 ERROR : Attempt 2/3 failed with 1 errors and: failed to open source object: pcloud error: 410 Gone (410)
2022/10/16 09:51:12 DEBUG : asdf.txt: Need to transfer - File not found at Destination
2022/10/16 09:51:12 DEBUG : Couldn't parse Date: from server evc73.pcloud.com: "Sun, 16 Oct 2022 07:51:12 +0000": parsing time "Sun, 16 Oct 2022 07:51:12 +0000" as "Mon Jan _2 15:04:05 2006": cannot parse ", 16 Oct 2022 07:51:12 +0000" as " "
2022/10/16 09:51:12 DEBUG : Couldn't decode error response: invalid character '<' looking for beginning of value
2022/10/16 09:51:12 ERROR : asdf.txt: Failed to copy: failed to open source object: pcloud error: 410 Gone (410)
2022/10/16 09:51:12 ERROR : Attempt 3/3 failed with 1 errors and: failed to open source object: pcloud error: 410 Gone (410)
2022/10/16 09:51:12 INFO  :
Transferred:              0 B / 0 B, -, 0 B/s, ETA -
Errors:                 1 (retrying may help)
Elapsed time:         2.2s

2022/10/16 09:51:12 DEBUG : 4 go routines active
2022/10/16 09:51:12 Failed to copy: failed to open source object: pcloud error: 410 Gone (410)

Addendum

same command works on the same machine with same folder/file for Koofr(.eu):

C:\>rclone copy koofr:\Test\asdf.txt R:\ -vv
2022/10/16 09:58:26 DEBUG : Setting --cache-dir "R:\\rclone" from environment variable RCLONE_CACHE_DIR="R:\\rclone"
2022/10/16 09:58:26 DEBUG : rclone: Version "v1.59.2" starting with parameters ["rclone" "copy" "koofr:\\Test\\asdf.txt" "R:\\" "-vv"]
2022/10/16 09:58:26 DEBUG : Creating backend with remote "koofr:\\Test\\asdf.txt"
2022/10/16 09:58:26 DEBUG : Using config file from "R:\\rclone\\rclone.conf"
2022/10/16 09:58:26 DEBUG : fs cache: adding new entry for parent of "koofr:\\Test\\asdf.txt", "koofr:/Test"
2022/10/16 09:58:26 DEBUG : Creating backend with remote "R:\\"
2022/10/16 09:58:26 DEBUG : fs cache: renaming cache item "R:\\" to be canonical "//?/R:/"
2022/10/16 09:58:26 DEBUG : asdf.txt: Need to transfer - File not found at Destination
2022/10/16 09:58:27 DEBUG : asdf.txt: md5 = 912ec803b2ce49e4a541068d495ab570 OK
2022/10/16 09:58:27 INFO  : asdf.txt: Copied (new)
2022/10/16 09:58:27 INFO  :
Transferred:              4 B / 4 B, 100%, 0 B/s, ETA -
Transferred:            1 / 1, 100%
Elapsed time:         0.8s

2022/10/16 09:58:27 DEBUG : 4 go routines active

Are you using a proxy or something in between?

Can you share:

/usr/bin/rclone copy -vv --dump bodies --retries 1 --low-level-retries 1 pcloud:\Test\asdf.txt R:\

none I was aware of: Direct connection PC -> router -> ISP -> pCloud

Pls see 2022/10/16 13:42:11 DEBUG : rclone: Version "v1.59.2" starting with parameters [ - Pastebin.com

To make testing easier for helpful ppl I created a free (debug)-Account at pCloud (test file is at pcloud-debug:/Test/asdf.txt)

[pcloud-debug]
type = pcloud
hostname = eapi.pcloud.com
token = {"access_token":"UbpLZDnONSzyJXpmZXKsbc7Zdr0aEhnkPDH8WgbkznyPkJGJ7Uy0","token_type":"bearer","expiry":"0001-01-01T00:00:00Z"}

This would be the line:

<html><head><title>Invalid link</title></head><body>This link was generated for another IP address. Try previous step again.

Looks very similar to this:

pcloud error 410 · Issue #3764 · rclone/rclone (github.com)

1 Like

Works for me but does throw an error.

rclone copy pcloud-debug:Test/asdf.txt  . -vv
2022/10/16 07:51:51 DEBUG : rclone: Version "v1.59.1" starting with parameters ["rclone" "copy" "pcloud-debug:Test/asdf.txt" "." "-vv"]
2022/10/16 07:51:51 DEBUG : Creating backend with remote "pcloud-debug:Test/asdf.txt"
2022/10/16 07:51:51 DEBUG : Using config file from "/Users/etexter/.config/rclone/rclone.conf"
2022/10/16 07:51:52 DEBUG : fs cache: adding new entry for parent of "pcloud-debug:Test/asdf.txt", "pcloud-debug:Test"
2022/10/16 07:51:52 DEBUG : Creating backend with remote "."
2022/10/16 07:51:52 DEBUG : fs cache: renaming cache item "." to be canonical "/Users/etexter/Downloads"
2022/10/16 07:51:53 DEBUG : asdf.txt: Need to transfer - File not found at Destination
2022/10/16 07:51:53 DEBUG : Couldn't parse Date: from server evc36.pcloud.com: "Sun, 16 Oct 2022 11:51:53 +0000": parsing time "Sun, 16 Oct 2022 11:51:53 +0000" as "Mon Jan _2 15:04:05 2006": cannot parse ", 16 Oct 2022 11:51:53 +0000" as " "
2022/10/16 07:51:54 DEBUG : asdf.txt: sha1 = 3da541559918a808c2402bba5012f6c60b27661c OK
2022/10/16 07:51:54 INFO  : asdf.txt: Copied (new)
2022/10/16 07:51:54 INFO  :
Transferred:   	          4 B / 4 B, 100%, 3 B/s, ETA 0s
Transferred:            1 / 1, 100%
Elapsed time:         3.2s

2022/10/16 07:51:54 DEBUG : 6 go routines active

Didn't you miss the 1st "/" (pcloud-debug:/Test/asdf.txt)?

That really shouldn't matter as it has the same output:

rclone copy pcloud-debug:/Test/asdf.txt  . -vv
2022/10/16 08:04:18 DEBUG : rclone: Version "v1.59.2" starting with parameters ["rclone" "copy" "pcloud-debug:/Test/asdf.txt" "." "-vv"]
2022/10/16 08:04:18 DEBUG : Creating backend with remote "pcloud-debug:/Test/asdf.txt"
2022/10/16 08:04:18 DEBUG : Using config file from "/Users/etexter/.config/rclone/rclone.conf"
2022/10/16 08:04:19 DEBUG : fs cache: adding new entry for parent of "pcloud-debug:/Test/asdf.txt", "pcloud-debug:Test"
2022/10/16 08:04:19 DEBUG : Creating backend with remote "."
2022/10/16 08:04:19 DEBUG : fs cache: renaming cache item "." to be canonical "/Users/etexter"
2022/10/16 08:04:20 DEBUG : asdf.txt: Need to transfer - File not found at Destination
2022/10/16 08:04:21 DEBUG : Couldn't parse Date: from server evc71.pcloud.com: "Sun, 16 Oct 2022 12:04:20 +0000": parsing time "Sun, 16 Oct 2022 12:04:20 +0000" as "Mon Jan _2 15:04:05 2006": cannot parse ", 16 Oct 2022 12:04:20 +0000" as " "
2022/10/16 08:04:21 DEBUG : asdf.txt: sha1 = 3da541559918a808c2402bba5012f6c60b27661c OK
2022/10/16 08:04:21 INFO  : asdf.txt: Copied (new)
2022/10/16 08:04:21 INFO  :
Transferred:   	          4 B / 4 B, 100%, 3 B/s, ETA 0s
Transferred:            1 / 1, 100%
Elapsed time:         3.2s

2022/10/16 08:04:21 DEBUG : 6 go routines active

Very good find!
And: :nauseated_face: My very bad.
I do use split tunneling VPN and force a direct connection to the cloud service providers like pcloud.

My explanation: rclone works kind of like FTP (separate command and transfer channels) and pcloud obviously uses different servers (IPs) for these two.
The command servers (eapi.pcloud.com, 6 IPs) were known and forced directly, the data servers (evcXYZ.pcloud.com) not.

After forcing direct connection to 45.131.244.0/24 and 45.131.245.0/24 everything works as expected.

Thank you very much!

1 Like

Addendum:
Above IP ranges are for EU-hosted pCloud. For US hosted you'll have to find the right IP ranges yourself (I used Sysinternals tcpview.exe and plain old DOS command ipconfig /displaydns (after a few downloaded files to fill DNS cache)).
In case you found them pls add below.

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