Moving from Onedrive to Backblaze B2

Hi, I am trying to transfer my Duplicacy data chunks from Onedrive to Backblaze B2. I am using Multcloud. So far I did run on some questions as written below:

  1. .duplicacy folder after the move inside B2 shows like “002eduplicacy - modify”. Hex 002e is ‘.’ (period). Seems this dot is not handled well and the folder is renamed. Will this affect Duplicacy behavior when pointing to B2? Is there a way to fix this?
  2. If some chunks on B2 are missing will Duplicacy able to avoid a full upload? Can it restart from a partial chunk set? Mulcloud transfer does not seem very trusty but saved a lot of time.

//rant

You’re asking for trouble. Duplicacy has a copy operation especially designed for this which has multithreading capabilities.

And there’s the first problem!

//end of rant


Leaving my bad jokes aside: i really believe you should use duplicacy to copy the chunks from one place to the other. Also, if Multcloud can’t even handle a . in a folder’s name I really wouldn’t trust it to reliably copy my existing chunks, even if it said “all chunks were copied successfully”.

In short lines, what needs to be done using the copy command is

  1. add a new storage named BackblazeStorage and make it compatible with the existing OneDriveStorage (Add command details):
duplicacy add -e -copy OneDriveStorage -bit-identical BackblazeStorage myExistingSnapshotName b2://bucket/path
  1. copy from onedrive to backblaze using multiple threads (Copy command details):
duplicacy copy -from OneDriveStorage -to BackblazeStorage -threads 40

In this step you could also only chose to copy only a few revisions at a time so that you can follow and adjust the number of threads as needed:

duplicacy copy -from OneDriveStorage -to BackblazeStorage -threads 40 -id myExistingSnapshotName  -r 344-347

These steps are better explained in this #how-to : Back up to multiple storages.

4 Likes

Hi,

I understood the approach, but by doing this I will be downloading ALL data from the Internet (OneDrive) to my computer and uploading it agan (into B2), right?

What I tried using Multcloud was to avoid uploading everything again into B2.

You can mount a cloud VM and make the copy using Rclone. I’ve done this several times between Dropbox, Google Drive, Wasabi and B2.

2 Likes

But how do you want to switch storages if you don’t move the chunks?

What you want literary means i want to take all my backups and the chunks of those backups from OneDrive and move them to B2

Yes, that’s correct.


After reading a bit it seems that Multcloud doesn’t download to your system anyting but uses their own servers – i see now why you would want to use it.

But just as you said in OP: it seems that multcloud just destroyed file names during the copy. Thanks just not cool in my book.

Another think you may do is follow @towerbr’s advice and move the storages by using Rclone. I have no clue how to do this, though.

I already tried using Multicloud for this and I had several problems, I think it only works well for “common” folders and files.

It’s simple:

  • Mount your linux virtual machine using a provider of your preference. I used Google Cloud Plataform. You can choose a very basic configuration.

  • Access the machine using SSH or terminal and download Rclone.

  • Configure the two storages in Rclone: rclone config

  • Run Rclone copy command using VM command line: rclone copy

I suggest not saving your storages passwords in VM, but rather providing them at runtime.

It’s very fast… :wink:

Thanks guys for the Rclone tip. I will try it as soon I get a VM up.

But for the “regular” way for doing that, I am having a basic issue, please see the output below:

henrique@homeserver1:/mnt/sdc1/henrique$ /opt/duplicacy/duplicacy_linux_x64_2.1.2 -d add -copy onedrive1 -bit-identical backblaze1 henrique1 b2://Home-Duplicacy-Backup
Repository set to /mnt/sdc1/henrique
Reading the environment variable DUPLICACY_BACKBLAZE1_B2_ID
Reading the environment variable DUPLICACY_BACKBLAZE1_B2_KEY
URL request ‘POST https://api.backblazeb2.com/b2api/v1/b2_authorize_account’ returned status code 401
Failed to load the Backblaze B2 storage at b2://Home-Duplicacy-Backup: Authorization failure

The env vars are correct as far I checked. What could be the reason?

As a side note I tried to acess the URL directly. It asks for a username/password. I tried several combinations of Acct Id, e-mail as user and the Application Key or my B2 password. None worked. I get the following when cancelling the browser based popup credential.

{
** “code”: “bad_auth_token”,**
** “message”: “”,**
** “status”: 401**
}

Just discovered the issue, DUPLICACY_STORAGE_NAME_B2_ID must be the B2 keyId and not the Account ID.

1 Like