Data Recovery After disaster Questions

I ran duplicati for a while and was regularly backing up to GCS. I pulled up my configuration and I restored the config on a different machine.

I repaired the database and which took forever, then when I went to restore some of the files, I keep getting errors.

2022-06-09 17:00:34 +00 - [Warning-Duplicati.Library.Main.Controller-UnsupportedOption]: The supplied option --auth-username is not supported and will be ignored
2022-06-09 17:00:34 +00 - [Warning-Duplicati.Library.Main.Controller-UnsupportedOption]: The supplied option --auth-password is not supported and will be ignored
2022-06-09 17:48:07 +00 - [Error-Duplicati.Library.Main.Operation.RestoreHandler-RestoreFileFailed]: Failed to restore file: "/source/G0010083.JPG". Error message was: Could not find file "/source/G0010083.JPG"
{
  "RestoredFiles": 0,
  "SizeOfRestoredFiles": 0,
  "RestoredFolders": 0,
  "RestoredSymlinks": 0,
  "PatchedFiles": 0,
  "DeletedFiles": 0,
  "DeletedFolders": 0,
  "DeletedSymlinks": 0,
  "MainOperation": "Restore",
  "RecreateDatabaseResults": null,
  "ParsedResult": "Error",
  "Version": "2.0.6.3 (2.0.6.3_beta_2021-06-17)",
  "EndTime": "2022-06-09T17:48:07.765625Z",
  "BeginTime": "2022-06-09T17:00:34.81096Z",
  "Duration": "00:47:32.9546650",
  "MessagesActualLength": 5,
  "WarningsActualLength": 2,
  "ErrorsActualLength": 3,
  "Messages": [
    "2022-06-09 17:00:34 +00 - [Information-Duplicati.Library.Main.Controller-StartingOperation]: The operation Restore has started",
    "2022-06-09 17:00:36 +00 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Started:  ()",
    "2022-06-09 17:02:03 +00 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Completed:  (158.51 KB)",
    "2022-06-09 17:47:54 +00 - [Information-Duplicati.Library.Main.Database.LocalRestoreDatabase-SearchingBackup]: Searching backup 0 (4/17/2022 6:00:00 AM) ...",
    "2022-06-09 17:48:07 +00 - [Information-Duplicati.Library.Main.Operation.RestoreHandler-RestoreFailures]: Failed to restore 3 files"
  ],
  "Warnings": [
    "2022-06-09 17:00:34 +00 - [Warning-Duplicati.Library.Main.Controller-UnsupportedOption]: The supplied option --auth-username is not supported and will be ignored",
    "2022-06-09 17:00:34 +00 - [Warning-Duplicati.Library.Main.Controller-UnsupportedOption]: The supplied option --auth-password is not supported and will be ignored"
  ],
  "Errors": [
    "2022-06-09 17:48:07 +00 - [Error-Duplicati.Library.Main.Operation.RestoreHandler-RestoreFileFailed]: Failed to restore file: \"/source/G0010083.JPG\". Error message was: Could not find file \"/source/G0010083.JPG\"",
    "2022-06-09 17:48:07 +00 - [Error-Duplicati.Library.Main.Operation.RestoreHandler-RestoreFileFailed]: Failed to restore file: \"/source/G0010084.JPG\". Error message was: Could not find file \"/source/G0010084.JPG\"",
    "2022-06-09 17:48:07 +00 - [Error-Duplicati.Library.Main.Operation.RestoreHandler-RestoreFileFailed]: Failed to restore file: \"/source/G0010085.JPG\". Error message was: Could not find file \"/source/G0010085.JPG\""
  ],
  "BackendStatistics": {
    "RemoteCalls": 1,
    "BytesUploaded": 0,
    "BytesDownloaded": 0,
    "FilesUploaded": 0,
    "FilesDownloaded": 0,
    "FilesDeleted": 0,
    "FoldersCreated": 0,
    "RetryAttempts": 0,
    "UnknownFileSize": 0,
    "UnknownFileCount": 0,
    "KnownFileCount": 162313,
    "KnownFileSize": 4255648072677,
    "LastBackupDate": "2022-04-17T06:00:00+00:00",
    "BackupListCount": 1,
    "TotalQuotaSpace": 0,
    "FreeQuotaSpace": 0,
    "AssignedQuotaSpace": -1,
    "ReportedQuotaError": false,
    "ReportedQuotaWarning": false,
    "MainOperation": "Restore",
    "ParsedResult": "Success",
    "Version": "2.0.6.3 (2.0.6.3_beta_2021-06-17)",
    "EndTime": "0001-01-01T00:00:00",
    "BeginTime": "2022-06-09T17:00:34.810963Z",
    "Duration": "00:00:00",
    "MessagesActualLength": 0,
    "WarningsActualLength": 0,
    "ErrorsActualLength": 0,
    "Messages": null,
    "Warnings": null,
    "Errors": null
  }
}

What should I try? The back up is pretty large pretty close to 4TB. Any thoughts on what patterns I can use to fix this?

When you say you pulled up your config and restored it on a different machine, how did you do that? I’m going to guess from the sounds of it that you created a new job with the same name and settings then told that to do a repair? That could work but probably won’t, Duplicati holds a bunch of other settings in it’s job database, like when it last ran, file version and other such items.

Without a good copy of a jobs database you’re probably better to use the “Directly restore from backup files…” option under Restore in the GUI. This will still be a long process but it’s more likely to get your files restored. Once your files are restored to the new local location then re-setup the backup jobs to start backing it up again.

1 Like

Any warnings or errors? Did you notice where the progress bar got, e.g. was it slow and past 90%?

Or that could be the reason DB recreate was slow. If it was, Direct restore might be a little faster.
Limitation with it is it needs to recreate its partial temporary database again each time you restore…

Either way you go, you can watch details of DB recreation at About → Show log → Live → Verbose.
First it should do dlist files, then dindex, and if it does lots of dblock, then things are going badly.

What OS was the backup on, and what’s it being restored to? Are you ideally aiming for full restore?
Are you trying to get the different machine backing up again? If so, did you save a job configuration?

Do you happen to have 4 TB of free local drive space available beyond amount you want to restore?
This could speed up regular restores or be used for Recovering by using the Duplicati Recovery tool.

Technically those are in the Duplicati-server.sqlite database which has the information on all the jobs.
Per-job databases are the files with random-looking names, and normally one can recreate them well enough to restore files, which is probably the main goal. I’m not sure what’s going wrong here though.

Verbose log would also be good to look at during a Restore to see what’s happening (or going wrong).

1 Like