The principle is the same with the CLI.
The copy
command works on the storage (referenced by the configuration for any given .duplicacy/preferences
file, rather than the repository (unless you specify -id
; otherwise it assumes all repository IDs in the storage will be copied). Also, if you don’t specify -storage
, it uses the first entry in the preferences
if you have multiple.
Presumably you have all 3 repos pointing to the same Duplicacy backup storage?
In which case, you can use any one of these repos (cd
'ing into it) to do the copy
- perhaps the same one as where you run any prune
or check
jobs - it doesn’t matter (although it makes sense to pick 1 and stick with it coz your cache will fill up with all those maintenance operations).
You don’t quite mention why you’re unable to copy it?
But Duplicacy is flexible enough that you can copy between multiple storages - so if you have a <NAS>/Backup
, <NAS>/HDD
, and B2
storages, you can copy between them - so long as you initialised the second, third etc., using the ‘copy-compatible’ option using the add -copy
command. You don’t have to involve rsync at all.
You can add the configuration for all storages to a ‘dummy’ repository on the NAS (either by way of init
/ add
commands, or directly to a .duplicacy/preferences
), just for the purposes of maintenance jobs, such as pruning, checking, and copying. e.g.:
[
{
"name": "local",
"id": "local-dummy",
"repository": "",
"storage": "/backup",
"encrypted": true,
"no_backup": true,
"no_restore": true,
"no_save_password": false,
"nobackup_file": "",
"filters": "",
"keys": null,
"exclude_by_attribute": false
},
{
"name": "hdd",
"id": "hdd-dummy",
"repository": "",
"storage": "/mnt/hdd",
"encrypted": true,
"no_backup": true,
"no_restore": true,
"no_save_password": false,
"nobackup_file": "",
"filters": "",
"keys": null,
"exclude_by_attribute": false
},
{
"name": "b2",
"id": "b2-dummy",
"repository": "",
"storage": "b2://bucket",
"encrypted": true,
"no_backup": true,
"no_restore": true,
"no_save_password": false,
"nobackup_file": "",
"filters": "",
"keys": null,
"exclude_by_attribute": false
},
]
Then script stuff like:
duplicacy -v -log prune -storage local -keep 30:365 -keep 7:90 -keep 1:14 -a
duplicacy -v -log check -storage local -a
duplicacy -v -log prune -storage hdd -keep 30:365 -keep 7:90 -keep 1:14 -a
duplicacy -v -log check -storage hdd -a
duplicacy -v -log prune -storage b2 -keep 30:365 -keep 7:90 -keep 1:14 -a
duplicacy -v -log check -storage b2 -a
duplicacy -v -log copy -from local -to hdd
duplicacy -v -log copy -from local -to b2
HTH?