Copying Between Non-Standard Locations
Author: Kostas Tsakiridis, 2BrightSparks Pte. Ltd.
Ever since SyncBack was introduced, a common question/request has been why users cannot create a profile that has a non-standard location on both source and destination side, for example cloud-to-cloud backup, or cloud-to-FTP, etc. The answer to this is as old as SyncBack itself, and this is because if you select a non-standard resource (Cloud, SyncBack Touch, FTP, MTP, Compression, Encryption) on one side (Source/Destination) then you can only select a standard resource (local drive or network drive) on the other side.
We have a KB article that explains in more detail.
There are mainly two reasons why a direct transfer between two non-standard locations cannot be implemented in SyncBack:
- One is technical, because that would mean re-designing and re-writing from the ground-up most of the application.
- The other reason is related to feasibility since different storage locations may have their own prerequisites when it comes to data transfer and meta-data. For example, some cloud storages require to be given the hash value of the file to be uploaded in advance. That means the file must be downloaded from the source location first, and then get the hash value calculated, therefore a direct transfer is impossible. Another example is uploading a file in multiple parts to a cloud storage which requires the whole source file to be available locally so it can be cut in pieces, something that it can't be done if the source location can only provide the file sequentially.
For the time being the only solution to accomplish a backup/sync between two non-standard locations, is by creating two profiles. So, if you want to transfer files, for example, from an FTP location to a cloud location, you can do the following:
- Create a profile to copy files from the FTP location to a temporary folder on the local drive (or a network drive).
- Create a second profile to copy files from the temporary folder to the cloud server.
- Create a Group and add the above two profiles as member profiles to the group, so that when the Group is run the profiles will run in a sequence and in the correct order.
Basically, a local (or network) drive is used as the intermediary storage location. This method also works when restoring. When the group is run in Restore mode, you can run the group in reverse, i.e. the files are copied from the cloud to local storage and then from local storage to the FTP server.