You're reading the open-source Community docs. Plakar also offers Control Plane, the enterprise version. It's a virtual appliance with a web-based interface for centralized backup management across your infrastructure. View Control Plane docs →

OneDrive

OneDrive is Microsoft’s cloud storage service for storing, sharing and collaborating on files.

The OneDrive integration backs up OneDrive folders into a Kloset store, restores snapshots to OneDrive, and hosts Kloset stores in OneDrive. It is provided by the Rclone package and reaches OneDrive through Rclone, a command-line program that manages files on cloud storage and supports OneDrive as one of its backends.

The integration includes three connectors:

Connector type Description
Source connector Back up a Rclone remote into a Kloset store.
Destination connector Restore data from a Kloset store into a Rclone remote.
Store connector Host a Kloset store inside a Rclone remote.

Requirements

  • Rclone installed, with at least one OneDrive remote configured.

Typical use cases

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

Installation

The OneDrive integration is provided by the Rclone Plakar package.

Pre-compiled packages are available for common platforms and provide the simplest installation method.

Logging In

Pre-built packages require Plakar authentication. See Logging in to Plakar for details.

Install the Rclone package:

Shell
$ plakar pkg add rclone

Verify installation:

Shell
$ plakar pkg show

Source builds are useful when pre-built packages are unavailable or when customization is required.

Prerequisites:

  • Go toolchain compatible with your Plakar version

Build the package:

Shell
$ plakar pkg build rclone

A package archive will be created in the current directory (e.g., rclone_v1.0.0_darwin_arm64.ptar).

Install the package:

Shell
$ plakar pkg add -allow-unsigned ./rclone_v1.0.0_darwin_arm64.ptar

Verify installation:

Shell
$ plakar pkg show

To list, upgrade, or remove the package, see managing packages guide.

Configuring a OneDrive remote

The connectors reach OneDrive through a Rclone remote. The remote is created with Rclone and then imported into Plakar as a source, destination or store configuration.

Install Rclone by following the instructions at https://rclone.org/install/, then start the interactive configuration:

Shell
$ rclone config

The command prompts for the settings of a new OneDrive remote. 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 “Microsoft OneDrive” from the list of supported storage providers.
  4. Leave client_id and client_secret empty to use Rclone’s defaults, or provide your own if you have them.
  5. Select your region (usually “Microsoft Cloud Global”).
  6. Enter service principal’s tenant ID if applicable, or leave empty.
  7. Stay with the current settings, and do not edit advanced config.
  8. Choose to open the browser for authentication.
  9. Once validated, select the type of connection.
  10. Select the drive to use.
  11. Validate the remote configuration.

Verify that the remote is configured:

Shell
$ rclone config show mydrive

Verify access to your OneDrive files:

Shell
$ rclone ls mydrive:

The output lists the files and folders in your OneDrive.

Configuration

Each connector is configured by importing the Rclone remote with rclone config show | plakar <source|destination|store> import -rclone <remote>. The imported configuration takes the name of the remote, so a remote named mydrive is referenced as @mydrive. The connectors can be combined with any other Plakar connector.

Backup flow

flowchart LR

subgraph Source["Rclone Remote"]
  FS["Data"]
end

Plakar["Plakar"]

Via["Retrieve data via
Rclone source connector"] Store["Kloset Store"] FS --> Via --> Plakar --> Store

Restore flow

flowchart LR

Store["Kloset Store"]

Plakar["Plakar"]

Via["Push data via
Rclone destination connector"] subgraph Destination["Rclone Remote"] FS["Data"] end Store --> Plakar --> Via --> FS

Store flow

flowchart LR

Source["Source data"]

Plakar["Plakar"]

Via["Store snapshot via
Rclone storage connector"] subgraph Store["Rclone Remote"] Kloset["Kloset Store"] end Source --> Plakar --> Via --> Kloset

Source configuration

The source connector has no options beyond the imported Rclone remote.

Destination configuration

The destination connector has no options beyond the imported Rclone remote.

Store configuration

The following option can be set on the store connector with plakar store add or plakar store set.

Option Required Description
passphrase No The Kloset store passphrase.

Example

Back up the remote:

Shell
# 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"

Restore a snapshot to the remote:

Shell
# 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>

Host a Kloset store in the remote:

Shell
# 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"

Limitations and scope

The OneDrive API applies rate limits, and heavy usage may require throttling. File version history is not preserved. Only the current version of each file is snapshotted. Shared links and permissions are not preserved in snapshots.

See also