rclone Züs Integration

Overview

rclone_zus is a custom integration of the rclone command-line tool with the Züs decentralized cloud. It enables users to interact with Züs storage using familiar rclone commands like copy, move, sync, and ls.

This backend implementation allows developers, DevOps teams, and cloud users to:

  • Use rclone’s powerful CLI and scripting capabilities with Züs

  • Perform efficient, server-side batch operations (copy, delete, move)

  • Use Züs as an S3-compatible remote via rclone without vendor lock-in

The Züs backend is now available via -type züs in your rclone.conf file and supports advanced Züs features including:

  • Sync & batch mode uploads

  • Server-side copy & move

  • Native delete, purge, and stat support

  • Directory listings and recursive operations

Why Use rclone_zus?

  • Scripting Ready: Automate uploads/downloads via shell scripts

  • Dev & CI Friendly: Plug into CI/CD pipelines with secure Züs backend

  • Zero Lock-in: Maintain open architecture with CLI-driven usage

  • Use Blimp UI to manage and render files in a carousel view

  • Share both public and encrypted files or folders with anyone instantly

  • Seamlessly scale by managing multiple allocations via Blimp and organizing data into multiple data rooms

  • Fast Sync: Avoid redundant uploads with batch commit

Prerequisites

  • Blimp account: If you do not have one, navigate to blimp.software. Click Sign Up for Free and you'll receive a free 2GB allocation.

  • Operating Systems: Linux, macOS, Windows (recent versions supported)

  • Go Toolchain [Optional] : Go ≥1.20; only required if building from source

Install rclone_zus

This section guides you through cloning, building, and configuring rclone_zus with the Züs backend. There are two ways of installing the rclone_zus plugin: download a pre-built binary or build the binary.

Download Pre-Built Binary

  1. Go to the releases page and download the pre-built binary for your OS.

  2. Place rclone.exe in your desired directory

  3. Run ./rclone in that directory. If it shows the help description, you're ready to start using rclone with Züs storage

💡 This is the preferred method for Windows users

Build the Binary

1. Clone the Repository

2. Build the Rclone Binary

Use the provided Makefile to build the project:

This will compile the rclone binary into the project root (./rclone), including the Züs backend.

💡 Troubleshooting: If make fails (e.g., missing make command or incompatible system), you can build manually:

Ensure you have Go ≥1.20 installed (suggested go 1.23.4)and your GOPATH properly configured.

This will build a local ./rclone binary with the Züs backend integrated.

Note: If you're modifying backend code (e.g. backend/zus/zus.go), you can recompile by running the go build command again.

3. (Optional) Install as Global Command rclone_zus

To use your custom Rclone binary without the ./ prefix, install it globally by copying it to a directory in your system's $PATH, such as /usr/local/bin:

After this, you can run it from anywhere as a normal command:

Renaming it to rclone_zus helps avoid conflicts with the system-installed rclone, if present.

Retrieve Wallet Files for Config Directory

Before using rclone_zus, you must have a wallet, allocation, and configuration files in place. There are two methods to retrieving these files: download wallet files via Blimp or CLI

Download Wallet via Blimp

The standard way to retrieve your Züs wallet is by downloading it through the Blimp user interface. This requires no command-line setup and ensures all required files are prepared for you.

  1. Visit Blimp

  2. Navigate to Manage Allocation

  3. Select your allocation

  4. Click the ellipsis (⋯) button

  5. Choose “Download Wallet”

  6. Enter your mnemonic or wallet password

  7. You’ll receive a .zip file containing:

    • wallet.json – Your Züs wallet credentials

    • allocation.txt – The Allocation ID

    • config.yaml – Züs network configuration (block worker, signature scheme, etc.)

Make sure your wallet.json file contains "is_split": false. This is required for compatibility with rclone_zus.

  1. Extract the ZIP and move all three files to your system’s default config directory:

  • Windows: C:\Users\<your-username>\.zcn

  • Linux/macOS: ~/.zcn/

📝 If the .zcn folder does not exist, create it manually.

By default, rclone_zus looks for your configuration files (wallet.json, allocation.txt, and optionally config.yaml) in the .zcn folder located at:

  • ~/.zcn/ on Linux/macOS

  • C:\Users\<YourName>\.zcn\ on Windows

However, if you want to avoid overwriting your default wallet files — for example, if you're working with multiple wallets, different environments (testnet vs mainnet), or shared systems — you can specify a custom configuration directory.

When running rclone config, you will be prompted with:

Here, you can enter the full path to a custom folder that contains:

  • wallet.json — your wallet credentials

  • allocation.txt — your allocation ID

  • config.yaml — your network settings (optional, but recommended)

This allows you to isolate configs per project, user, or use case.

For example:

Once saved, this remote will always use that folder to locate its wallet and allocation files, regardless of what’s in your global .zcn directory.

Allocation Performance

For reliable performance:

  • Züs blobbers provide better stability and performance

CLI Method

Alternatively, you can create your wallet and allocation using the CLI.

  1. Create a wallet and allocation via Züs CLI tools

  2. Place the following files in your ~/.zcn (or Windows equivalent):

  • wallet.json

Make sure your wallet.json file contains "is_split": false. This is required for compatibility with rclone_zus.

  • config.yaml

  • allocation.txt

Setup Remote

Remote Configuration

Here is an example of how to make a zus remote called myZus.

First run

This will guide you through an interactive setup process:

Make sure your rclone.conf file is created. Finding rclone.conf:

  • To locate your rclone configuration file (rclone.conf) via command line, use the command rclone config file

Example rclone.conf :

Once configured, you can start using the remote myZus .

Run Key Commands for File Operations

This section will cover basic commands to manage your files and folders. For more options, check out the other rclone commands here.

List All Directories in Path

Example to list all the files and directories inside the root directory of the remote "myZus"

Output example:

Make a New Directory

Example: create new directory in the root (This example shows new directory name as "newDirectory")

List the contents of a directory

File Operations

Copy from source to destination (Local to Remote, Remote to Remote, Remote to Local)

Move from source to destination (Local to Remote, Remote to Remote, Remote to Local)

Sync from source to destination (Local to Remote, Remote to Remote, Remote to Local)

  • Makes source and destination identical, modifying destination only.

  • --interactive flag is optional. Allows users to review each change before committing

Local to Züs Examples:

Züs to Local Examples:

Same Remote Operations (within the same allocation):

Using the same remote, you can copy/move files from one directory to another within the same allocation.

Cross-Cloud Backup Examples (Google Drive ↔ Züs):

You can use rclone_zus to copy or sync files between your Züs storage allocation and other cloud providers such as Google Drive, Dropbox, S3, etc.

Step 1: Create a Remote for the Other Cloud Provider

To connect to another cloud provider, you must first create a remote for that service using the rclone config wizard.

Run:

Follow the interactive prompts:

  • Choose n for a new remote

  • Name your remote (e.g., gdrive)

  • Select the desired provider from the list (e.g., Google Drive, Dropbox, S3, etc.)

  • Follow the provider-specific instructions, such as:

  • Logging in via OAuth (for Google Drive)

  • Providing access tokens or keys (for Dropbox, S3, etc.)

  • Save your remote

  • Once created, you can use that remote name in any command.

Refer to rclone's official documentation for full setup guides for each provider: https://rclone.org/docs/

Step 2: Run Copy/Move Commands

You can now run standard rclone commands to transfer data between Züs (myZus) and the cloud remote you just created (gdrive, for example).

Google Drive to Züs

Züs to Google Drive

You can also use rclone move or rclone sync for the same remotes:

Sync Mode Configuration

Use sync mode in rclone_zus for bulk operations

use --transfers=number of operations | --transfers=50 with the commands.

Bulk Copy from source to destination (Local to Remote, Remote to Remote, Remote to Local)

Bulk Move from source to destination (Local to Remote, Remote to Remote, Remote to Local)

Using rclone_zus with Vult (Optional)

If you're a Vult user, you can also use rclone_zus to interact with your Züs allocation by following similar steps:

  1. Go to Profile & Wallet via the user icon in the top right corner.

  2. Scroll down and click Download Wallet.

  3. This will download a .zip file with:

    • wallet.json

    • allocation.txt

    • config.yaml

  4. Move these files to your .zcn directory (e.g. ~/.zcn on Linux/macOS or C:\Users\<YourName>\.zcn on Windows).

Make sure your wallet.json file contains "is_split": false. This is required for compatibility with rclone_zus.

🔄 You may switch between Vult and Blimp wallets by replacing these files.

If using multiple wallets, consider using rclone config to point to a custom config directory instead of overwriting .zcn.

Last updated