Files
rclone/docs/content/combine.md
Nick Craig-Wood 839a3b92e0 docs: modernize rclone.org site design
- replace Bootstrap/jQuery with purpose-built CSS and JS
- remove backend icons from navbar and content pages
- replace remaining FontAwesome icons with inline SVGs, remove FontAwesome
- modernize CSS styling for menus, typography, cards, tables, and code blocks
- add copy-to-clipboard buttons on code blocks using SVG icon
- move TOC to left sidebar with responsive overlay drawer
- add sticky header, top scrollbar and first column for wide tables
- add left/right arrow buttons to scrollable tables
- hide homepage logo on mobile
- make wide menus with filter for Commands and Storage Systems
- add dark mode support based on browser preference
- fix CSS/JS cache busting to use build time
2026-04-02 16:32:54 +01:00

4.2 KiB

title, description, versionIntroduced
title description versionIntroduced
Combine Combine several remotes into one v1.59

Combine

The combine backend joins remotes together into a single directory tree.

For example you might have a remote for images on one provider:

$ rclone tree s3:imagesbucket
/
├── image1.jpg
└── image2.jpg

And a remote for files on another:

$ rclone tree drive:important/files
/
├── file1.txt
└── file2.txt

The combine backend can join these together into a synthetic directory structure like this:

$ rclone tree combined:
/
├── files
│   ├── file1.txt
│   └── file2.txt
└── images
    ├── image1.jpg
    └── image2.jpg

You'd do this by specifying an upstreams parameter in the config like this

upstreams = images=s3:imagesbucket files=drive:important/files

During the initial setup with rclone config you will specify the upstreams remotes as a space separated list. The upstream remotes can either be a local paths or other remotes.

Configuration

Here is an example of how to make a combine called remote for the example above. First run:

rclone config

This will guide you through an interactive setup process:

No remotes found, make a new one?
n) New remote
s) Set configuration password
q) Quit config
n/s/q> n
name> remote
Option Storage.
Type of storage to configure.
Choose a number from below, or type in your own value.
...
XX / Combine several remotes into one
   \ (combine)
...
Storage> combine
Option upstreams.
Upstreams for combining
These should be in the form
    dir=remote:path dir2=remote2:path
Where before the = is specified the root directory and after is the remote to
put there.
Embedded spaces can be added using quotes
    "dir=remote:path with space" "dir2=remote2:path with space"
Enter a fs.SpaceSepList value.
upstreams> images=s3:imagesbucket files=drive:important/files
Configuration complete.
Options:
- type: combine
- upstreams: images=s3:imagesbucket files=drive:important/files
Keep this "remote" remote?
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y

Configuring for Google Drive Shared Drives

Rclone has a convenience feature for making a combine backend for all the shared drives you have access to.

Assuming your main (non shared drive) Google drive remote is called drive: you would run

rclone backend -o config drives drive:

This would produce something like this:

[My Drive]
type = alias
remote = drive,team_drive=0ABCDEF-01234567890,root_folder_id=:

[Test Drive]
type = alias
remote = drive,team_drive=0ABCDEFabcdefghijkl,root_folder_id=:

[AllDrives]
type = combine
upstreams = "My Drive=My Drive:" "Test Drive=Test Drive:"

If you then add that config to your config file (find it with rclone config file) then you can access all the shared drives in one place with the AllDrives: remote.

See the Google Drive docs for full info.

Standard options

Here are the Standard options specific to combine (Combine several remotes into one).

--combine-upstreams

Upstreams for combining

These should be in the form

dir=remote:path dir2=remote2:path

Where before the = is specified the root directory and after is the remote to put there.

Embedded spaces can be added using quotes

"dir=remote:path with space" "dir2=remote2:path with space"

Properties:

  • Config: upstreams
  • Env Var: RCLONE_COMBINE_UPSTREAMS
  • Type: SpaceSepList
  • Default:

Advanced options

Here are the Advanced options specific to combine (Combine several remotes into one).

--combine-description

Description of the remote.

Properties:

  • Config: description
  • Env Var: RCLONE_COMBINE_DESCRIPTION
  • Type: string
  • Required: false

Metadata

Any metadata supported by the underlying remote is read and written.

See the metadata docs for more info.