Client: Rclone

rclone logo rclone.org

About rclone

Rclone, often dubbed "The Swiss army knife of cloud storage," is a robust command-line tool designed for managing files on cloud systems like Intercolo's Object Storage. It supports a wide range of Unix-like commands, ensuring data integrity, efficient bandwidth use, and the ability to resume interrupted transfers. Rclone not only handles local and cloud file systems across major operating systems but also offers advanced features like encryption and compression through virtual backends. As a mature, open-source project, it's backed by a strong community and is the go-to solution for both basic file management and complex, automated backup or business processes, making it an essential tool for users and developers engaging with Intercolo's Object Storage.

Config

Before we start, make sure you have created an Api Key with the appropriate permissions on the Api Key page. Leave this open, as we'll need the public and secret key shortly.

Start by running rclone config, then create a new remote by entering n.

Enter name for new remote.
name>

When prompted to enter a name, pick a name of your choosing, we'll use i3 in this example.

Option Storage.
Type of storage to configure.
Choose a number from below, or type in your own value.
[.. a large list of supported storage proviers ..]
Storage>

When prompted to select a storage, enter s3.

Option provider.
Choose your S3 provider.
Choose a number from below, or type in your own value.
Press Enter to leave empty.
[.. a large list of providers ..]
provider>

When prompted to select a provider, leave it blank by simply pressing enter.

Option env_auth.
Get AWS credentials from runtime (environment variables or EC2/ECS meta data if no env vars).
Only applies if access_key_id and secret_access_key is blank.
Choose a number from below, or type in your own boolean value (true or false).
Press Enter for the default (false).
 1 / Enter AWS credentials in the next step.
   \ (false)
 2 / Get AWS credentials from the environment (env vars or IAM).
   \ (true)
env_auth>

Simply press enter to not use credentials from the environment here, we'll be setting up our access/secret key directly.

Option access_key_id.
AWS Access Key ID.
Leave blank for anonymous access or runtime credentials.
Enter a value. Press Enter to leave empty.
access_key_id>

For the access key id, enter your public key.

Option secret_access_key.
AWS Secret Access Key (password).
Leave blank for anonymous access or runtime credentials.
Enter a value. Press Enter to leave empty.
secret_access_key>

For your secret access key, enter your secret key.

Option region.
Region to connect to.
Leave blank if you are using an S3 clone and you don't have a region.
Choose a number from below, or type in your own value.
Press Enter to leave empty.
   / Use this if unsure.
 1 | Will use v4 signatures and an empty region.
   \ ()
   / Use this only if v4 signatures don't work.
 2 | E.g. pre Jewel/v10 CEPH.
   \ (other-v2-signature)
region>

When prompted to enter the region, simply confirm the default by pressing enter.

Option endpoint.
Endpoint for S3 API.
Required when using an S3 clone.
Enter a value. Press Enter to leave empty.
endpoint>

For the endpoint, enter https://de-fra.i3storage.com.

Leave the remaining options (location_constraint, acl and advanced config at the time of writing) as default by pressing enter.

Once the configuration is complete, rclone will ask confirmation:

Configuration complete.
Options:
- type: s3
- provider: other
- access_key_id: YOUR_PUBLIC_KEY
- secret_access_key: YOUR_SECRET_KEY
- endpoint: https://de-fra.i3storage.com
Keep this "i3" remote?
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d>

Confirm this with Y

You have now configured your remote and you are good to exit the configuration screen by pressing Q.

Additionally, you can now interact with the object storage.

For example, if the "Can List Buckets" permission is enabled, you will now be able to list buckets via

rclone lsd i3:

Or, if given write access to a bucket, you can copy a file (here myfile.txt) into the bucket mybucket via

rclone copy myfile.txt i3:mybucket

For additional usage, please refer to the rclone commands guide

Mounting as a virtual filesystem

The rclone mount command allows Linux, FreeBSD, macOS and Windows to mount any of Rclone's cloud storage systems as a file system with FUSE.

Windows and MacOS will need additional tools installed and considerations, please see Installing on Windows and Mounting on macOS.

Once rclone is configured, mounting a vfs is as simple as running rclone mount i3:bucket/path/to/files /path/to/local/mount. This, however, mounts the vfs in the foreground. To automatically mount the vfs on system boot, you can configure it as a unix mount helper