Currently, I have created a duplicate of the main backup config and disabled the auto back up, every Friday I delete the database and do a backup which is a full backup then move the full backup to a portable HDD.
I am totally happy with Duplicati, just wanted to know if there is an option to do an instant full backup?
It is the additional backup config I’m talking about, I already have the main daily backup running in the way duplicati is supposed to run (one full backup and subsequent incremental backup).
The additional backup is solely for taking a full backup on every Friday evening, but I have to do it manually and need to delete the database before doing so. This procedure does not interfere with the main backup config which is running daily normally.
If there is an option to create a full backup on a click of a button at any instant, that would have been great for off-site backup keeping.
I think you might not understand how Duplicati backups work, but it sounds like your ultimate goal is to have automated daily backups (already working) and automated weekly backups with NO version history (currently only working manually) for off-site storage.
I’m not sure if this would with but you MIGHT be able to have a --run-script-before-required batch file that deletes the database before the backup starts.
If that doesn’t work (database may be “in use” already) then you could write batch / script file to delete the database THEN start the job via command line. This script could be scheduled using your normal OS scheduler.
But if you really want each weekly backup to only contain contents for the current week then you could just set the “keep until” value to 6 or 7 days. Then Duplicati would automatically remove any backup data more than that number of days old.
Because Duplicati chops files up into blocks (default size of 100kb) and stores a bunch of those blocks in an archive file (default size of 50 MB) it doesn’t just work like “file X was deleted from source so file X should be deleted from the backup”.
What it does when file X is deleted from the source is:
flag all the blocks that make up file X as deleteable
if ALL the blocks in a single archive are deleteable, then delete the archive
if NOT all blocks are deleteable but enough are that it makes the the archive “sparsely used” then:
a. download the archive
b. decompress it
c. make a new archive with what’s NOT yet deleteable
d. upload the new archive
e. delete the old archive
All of this happens during the normal auto-compact process which occurs at the END of each backup run.
But @Wim_Jansen is correct, the first thing we need to do is figure out what error you’re running into. Then we can address the why and how for what it is you’re trying to do with the weekly backup.
Well, I waited for a week to see how Duplicati would delete the previous week’s full backup (I have set delete backup until 5 days old) but it did not delete the previous backup and took a regular incremental backup instead.
So I am back to deleting the previous week’s backup and deleting the database as well, then manually running the backup.
Anyway to get Duplicati to delete the previous week’s backup (and database) before this weeks run?
I don’t exactly understand your need to do a full new backup, since duplicati’s incremental backup is just as good? i.e. if no files have changed from last week to this week, this week’s backup job will run and finish without adding any new info, and the last backup version will be the “current” version. If you want to minimize wasted backup space from old versions, you could set “keep versions” to 1, and set various settings to make cleanup more quick/thorough…
Well, I read above, and I think I understand that you want it to run a backup from scratch just for the sake of running one from scratch. But I don’t exactly understand your need (from a technical perspective) for a “fresh full backup”, when Duplicati’s incremental backup is theoretically identical - and actually identical in the hypothetical case of no files having been changed.
If nothing has changed (for example), the “earlier backup” is the new “full backup”, and thus wouldn’t be deleted.
Duplicati will see the new files or changed files, and upload the parts that have been changed only (chopped in pieces, zipped together and encrypted).
It will only delete old parts if your retention policy says to delete them AND if the parts that can be deleted represent a big enough part of a dblock file so several can be merged in one.
As a result, your new backup is a full backup. Duplicati does not need to reconstruct files from backup 1, download the changes (increments) from backup 2 and combine them. Duplicati will use parts of the initial upload that it needs and parts of 2nd upload.
In other words, the files uploaded in your 1st run will only be deleted if they are no longer needed to reconstruct any of the files that were in the backups that you want to keep according to your retention policy.
Or: every backup is in fact a full backup (but only changed or new files will be uploaded in each run).
As I said, in my hopothetical if nothing has changed… but in a real backup scenario, there will almost always be some (at least small) changes. Again, there is no “previous full backup” to “delete”, because the current backup is the NEW “full backup”. There would never be any reason to delete the original full backup.