Version main

Koofr

The Koofr integration package for Plakar allows you to back up and restore data to and from Koofr, as well as host Kloset stores directly within Koofr. It is built on top of Rclone, a command-line tool for managing cloud storage backends.

The integration provides three connectors:

Connector typeDescription
Storage connectorHost a Kloset store inside a Rclone remote.
Source connectorBack up a Rclone remote into a Kloset store.
Destination connectorRestore data from a Kloset store into a Rclone remote.

Requirements

  • Rclone must be installed, and at least one Koofr remote must be configured.

Typical use cases

  • Cold backup of Koofr folders
  • Long-term archiving and disaster recovery
  • Portable export and vendor escape to other platforms

Installation

To interact with Koofr, install the Rclone Plakar package. It can be installed either by downloading a pre-built package or by building it from source.

Plakar provides pre-compiled packages for common platforms. This is the simplest installation method and is suitable for most users.

Note: Installing pre-built packages requires authentication with Plakar. See Login to Plakar to unlock features.

Install the Rclone package:

$ plakar pkg add rclone

Verify the installation:

$ plakar pkg list

Generate Rclone configuration

Install Rclone on your system by following the instructions at https://rclone.org/install/.

Then, run the following command to configure Rclone with Koofr:

$ rclone config

You will be guided through a series of prompts to set up a new remote for Koofr.

For Rclone v1.72.1, the configuration flow is as follows:

  1. Choose n to create a new remote.
  2. Name the remote (e.g., mydrive).
  3. Enter the number corresponding to “Koofr” from the list of supported storage providers.
  4. Enter your email and your app password. If you don’t have an app password, generate one in your Koofr account settings.
  5. Confirm the settings.

To verify that the remote is configured, run:

$ rclone config show mydrive

And to verify you have access to your Koofr files, run:

$ rclone ls mydrive:

The output should list the files and folders in your Koofr.


Connectors

The Rclone package provides storage, source, and destination connectors to interact with Koofr via Rclone.

You can use any combination of these connectors together with other supported Plakar connectors.

Storage connector

The Plakar Rclone package provides a storage connector to host Kloset stores on Rclone remotes.

flowchart LR Source@{ shape: cloud, label: "Source data" } Source --> Plakar[Plakar] subgraph Store[Rclone Remote] Kloset@{ shape: cyl, label: "Kloset Store" } end Plakar -- Store snapshot via
Rclone storage connector --> Store %% Apply classes class Source sourceBox class Plakar brandBox class Store storeBox %% Classes definitions classDef sourceBox fill:#ffe4e6,stroke:#cad5e2,stroke-width:1px classDef brandBox fill:#524cff,color:#ffffff classDef storeBox fill:#dbeafe,stroke:#cad5e2,stroke-width:1px linkStyle default stroke-dasharray: 9,5,stroke-dashoffset: 900,animation: dash 25s linear infinite;

Configure

# Import the rclone configuration as a storage configuration.
# Replace "mydrive" with your Rclone remote name.
rclone config show | plakar store import -rclone mydrive

# Initialize the Kloset store
$ plakar at @mydrive create

# List snapshots in the Kloset store
$ plakar at @mydrive ls

# Verify integrity of the Kloset store
$ plakar at @mydrive check

# Back up a local folder to the Kloset store
$ plakar at @mydrive backup /etc

# Back up a source configured in Plakar to the Kloset store
$ plakar at @mydrive backup @my_source

Options

These options can be set when configuring the storage connector with plakar store add or plakar store set:

OptionPurpose
passphraseThe Kloset store passphrase

Source connector

The Plakar Rclone package provides a source connector to back up remote directories accessible via Rclone.

flowchart LR subgraph Source[Rclone Remote] fs@{ shape: cloud, label: "data" } end Source -- Retrieve data via
Rclone source connector --> Plakar Store@{ shape: cyl, label: "Kloset Store" } Plakar --> Store %% Apply classes class Source sourceBox class Plakar brandBox class Store storeBox %% Classes definitions classDef sourceBox fill:#ffe4e6,stroke:#cad5e2,stroke-width:1px classDef brandBox fill:#524cff,color:#ffffff classDef storeBox fill:#dbeafe,stroke:#cad5e2,stroke-width:1px linkStyle default stroke-dasharray: 9,5,stroke-dashoffset: 900,animation: dash 25s linear infinite;

Configure

# Import the rclone configuration as a source configuration.
# Replace "mydrive" with your Rclone remote name.
rclone config show | plakar source import -rclone mydrive

# Back up the remote directory to the Kloset store on the filesystem
$ plakar at /var/backups backup @mydrive

# Or back up the remote directory to a Kloset store configured with "plakar store add"
$ plakar at @store backup @mydrive

Options

The Rclone source connector doesn’t support any specific options.

Destination connector

The Rclone package provides a destination connector to restore snapshots to remote directories reachable over Rclone.

flowchart LR Store@{ shape: cyl, label: "Kloset Store" } Store --> Plakar subgraph Destination[Rclone Remote] fs@{ shape: cloud, label: "data" } end Plakar -- Push data via
Rclone destination connector --> Destination %% Apply classes class Destination destinationBox class Plakar brandBox class Store storeBox %% Classes definitions classDef destinationBox fill:#d0fae5,stroke:#cad5e2,stroke-width:1px classDef brandBox fill:#524cff,color:#ffffff classDef storeBox fill:#dbeafe,stroke:#cad5e2,stroke-width:1px linkStyle default stroke-dasharray: 9,5,stroke-dashoffset: 900,animation: dash 25s linear infinite;

Configure

# Import the rclone configuration as a destination configuration.
# Replace "mydrive" with your Rclone remote name.
rclone config show | plakar destination import -rclone mydrive

# Restore a snapshot from a filesystem-hosted Kloset store to the Rclone remote
$ plakar at /var/backups restore -to @mydrive <snapshot_id>

# Or restore a snapshot from the Kloset store configured with "plakar store add store …"
$ plakar at @store restore -to @mydrive <snapshot_id>

Options

The Rclone destination connector doesn’t support any specific options.


See also