Rclone Union of Mega Upstreams stores over their quota

What is the problem you are having with rclone?

Hello there! I have made an rclone-union comprised of 20 Mega upstreams, each being 20GB. After using rclone-copy to upload some large files (mp4/mkv), noticed that it was filling up some of the remotes more than their quota (eg storing 23GB of data in one 20GB Mega account). Because of that, the account in question may get deleted by Mega. My question is, is there any way to stop rclone from copying more than 20GB to each remote, even though there's more than enough total storage for the files?

PS: I know this violates the Mega.io ToS, but paying is just not an option right now. Thank you for your patience!

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

rclone v1.67.0

  • os/version: Microsoft Windows 11 Pro 23H2 (64 bit)
  • os/kernel: 10.0.22631.4037 (x86_64)
  • os/type: windows
  • os/arch: amd64
  • go/version: go1.22.4
  • go/linking: static
  • go/tags: cmount
    Are you on the latest version of rclone? You can validate by checking the version listed here: Rclone downloads
    -->
    Yes (1.67.0)

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

Multiple Mega remotes (upstreams) joined together in a union

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

rclone copy c:/path_to_files Mega_Union/path_to_destination_folder -P

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

Contains 20 Mega remotes, a Union and the local filesystem.

[Media]
type = union
upstreams = mega1: mega2: mega3: mega4: mega5: mega6: mega7: mega8: mega9: mega10: mega11: mega12: mega13: mega14: mega15: mega16: mega17: mega18: mega19: mega20:
action_policy = epmfs

[localmovies]
type = local

[mega1]
type = mega
user = XXX
pass = XXX

[mega10]
type = mega
user = XXX
pass = XXX

[mega11]
type = mega
user = XXX
pass = XXX

[mega12]
type = mega
user = XXX
pass = XXX

[mega13]
type = mega
user = XXX
pass = XXX

[mega14]
type = mega
user = XXX
pass = XXX

[mega15]
type = mega
user = XXX
pass = XXX

[mega16]
type = mega
user = XXX
pass = XXX

[mega17]
type = mega
user = XXX
pass = XXX

[mega18]
type = mega
user = XXX
pass = XXX

[mega19]
type = mega
user = XXX
pass = XXX

[mega2]
type = mega
user = XXX
pass = XXX

[mega20]
type = mega
user = XXX
pass = XXX

[mega3]
type = mega
user = XXX
pass = XXX

[mega4]
type = mega
user = XXX
pass = XXX

[mega5]
type = mega
user = XXX
pass = XXX

[mega6]
type = mega
user = XXX
pass = XXX

[mega7]
type = mega
user = XXX
pass = XXX

[mega8]
type = mega
user = XXX
pass = XXX

[mega9]
type = mega
user = XXX
pass = XXX

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

2024/08/23 13:53:19 DEBUG : rclone: Version "v1.67.0" starting with parameters ["rclone" "copy" "c:/Media/Movies" "Media:" "-vv"]
2024/08/23 13:53:19 DEBUG : Creating backend with remote "c:/Media/Movies"
2024/08/23 13:53:19 DEBUG : Using config file from "C:\\Users\\myname\\AppData\\Roaming\\rclone\\rclone.conf"
2024/08/23 13:53:19 DEBUG : fs cache: renaming cache item "c:/Media/Movies" to be canonical "//?/c:/Media/Movies"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "Media:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega2:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega1:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega15:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega11:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega6:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega12:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega14:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega7:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega8:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega17:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega9:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega13:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega4:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega10:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega18:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega19:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega5:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega16:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega20:"
2024/08/23 13:53:19 DEBUG : Creating backend with remote "mega3:"
2024/08/23 13:53:28 DEBUG : union root '': actionPolicy = *policy.EpMfs, createPolicy = *policy.EpMfs, searchPolicy = *policy.FF
2024/08/23 13:53:28 DEBUG : union root '': Waiting for checks to finish
2024/08/23 13:53:28 DEBUG : union root '': Waiting for transfers to finish
2024/08/23 13:53:28 INFO  : There was nothing to transfer
2024/08/23 13:53:28 INFO  :
Transferred:              0 B / 0 B, -, 0 B/s, ETA -
Checks:                 1 / 1, 100%
Elapsed time:         9.2s

2024/08/23 13:53:28 DEBUG : 58 go routines active

We'd advise to not violate their TOS.