Getting list of backup and deleting 0 files backup

Dear all,

I have skeduled backup of a mounted disk of 300GO, and all works fine.
Unfortunately, a backup has been made while the disk was unmounted. So it did a backup of 0 files.
Next backup will restart a full backup, which takes time and space.

My questions.

  1. In the webui, when I chose a restore, the backup of 0 files does not appear. How can I get a full list of all the backups ?

  2. I assume that the best way would be to delete the wrong backup of 0 files. But how to do this while de CLI delete operation needs a backup-number That I do not have ?

Thank you

Welcome to the forum @fdfd

How do you know that? Is there a job log for this backup? What does it have to say?
What color is the icon for the log? Green is good. Also talk about warnings or errors.

Looking in the server log at About → Show log → Stored might also find some clues.

A backup takes space, but deduplication only stores any block once.
See Architecture Premises. That may help explain my next comment.

Do you keep any backup versions previous to the one with accident?
Typically people use a retention policy that keeps some old versions.
Next backup after an accident will use whatever old data is still valid.

Scan uses time, but right now I’m not sure you got an empty backup.
You might have gotten a failed backup run that didn’t leave a backup.

Look at the Restore dropdown. If date is not seen, it’s likely not there.

It’s possible for a run to fail, so check logs and talk about any popups.
Fail might depend on your OS, e.g. Windows would lack a drive letter.
Linux might backup an empty mount point, but should make a version.

0 files backup is in the logs of the backup
17 juil. 2025 22:28 - Opération: Backup
Heure Démarrer 2025-07-17 22:27:37 Fin 2025-07-17 22:28:04 Durée 00:00:27
Fichiers sources
Examiné 0 (0 bytes) Ouvert 0 (0 bytes) Ajouté 0 (0 bytes) Modifié 0 (0 bytes) Supprimé 0

But nothing in log of the server (about/…)

The next backup takes 9 hours. But you are right, the backup size does not change most.

This backup shoud have taken about 5 minutes, while there was no change.

So Duplicati take into account the mysterious 0 files backup, which I cannot see when I click on “restore”.
I added a script that prevents backups if the disk isn’t mounted. This way, the problem won’t occur.
However, I don’t understand these mysterious backups in the logs, which exist but can’t be found in the restore menu.

Looks odd. What OS is this? If it backed up empty mount point, “Deleted” should be big.

You didn’t provide the log icon color, Warnings. or Errors. Maybe some Information also.

Any popup warnings or errors seen from the mysterious run without the drive mounted?

Similar question, except no stats are shown. Did it show basically everything as Added?

There are still questions that need answers from you. If you tell me something about your backup such as OS, Source choice (is it the mount point, or is it paths further beneath it?), then I can try to set it up. You can also change retention policy on Options screen to retain backups forever, if you want to preserve the history to study. Change it to usual afterwards.

If you prefer, you can run Create bug report now (it will take some time) to preserve the
database contents if we need to look later. Or I can tell you what to look at in the database.

DB Browser for SQLite (a.k.a. sqlitebrowser on some Linux) or other tool would be used.

Color : green
OS : Linux (Ubuntu)

Any popup warnings or errors seen from the mysterious run without the drive mounted?
No

I Join the logs of the two backups.

I must confess that I performed an operation that may have been important.
Between the two backups, on another machine, I performed a restore operation, thus recreating a local database. From what I understand, when you perform a restore, there’s no writing to the backup source. But maybe I’m wrong?

Logs of 0 files backup
{
“DeletedFiles”: 0,
“DeletedFolders”: 0,
“ModifiedFiles”: 0,
“ExaminedFiles”: 0,
“OpenedFiles”: 0,
“AddedFiles”: 0,
“SizeOfModifiedFiles”: 0,
“SizeOfAddedFiles”: 0,
“SizeOfExaminedFiles”: 0,
“SizeOfOpenedFiles”: 0,
“NotProcessedFiles”: 0,
“AddedFolders”: 0,
“TooLargeFiles”: 0,
“FilesWithError”: 0,
“ModifiedFolders”: 0,
“ModifiedSymlinks”: 0,
“AddedSymlinks”: 0,
“DeletedSymlinks”: 0,
“PartialBackup”: false,
“Dryrun”: false,
“MainOperation”: “Backup”,
“CompactResults”: null,
“VacuumResults”: null,
“DeleteResults”: null,
“RepairResults”: null,
“TestResults”: {
“MainOperation”: “Test”,
“VerificationsActualLength”: 0,
“Verifications”: ,
“ParsedResult”: “Success”,
“Interrupted”: false,
“Version”: “2.1.0.4 (2.1.0.4_stable_2025-01-31)”,
“EndTime”: “2025-07-17T20:28:04.7940968Z”,
“BeginTime”: “2025-07-17T20:28:04.7324466Z”,
“Duration”: “00:00:00.0616502”,
“MessagesActualLength”: 0,
“WarningsActualLength”: 0,
“ErrorsActualLength”: 0,
“Messages”: null,
“Warnings”: null,
“Errors”: null,
“BackendStatistics”: {
“RemoteCalls”: 2,
“BytesUploaded”: 0,
“BytesDownloaded”: 0,
“FilesUploaded”: 0,
“FilesDownloaded”: 0,
“FilesDeleted”: 0,
“FoldersCreated”: 0,
“RetryAttempts”: 0,
“UnknownFileSize”: 0,
“UnknownFileCount”: 0,
“KnownFileCount”: 14202,
“KnownFileSize”: 367000343554,
“LastBackupDate”: “2025-04-17T22:00:19+02:00”,
“BackupListCount”: 7,
“TotalQuotaSpace”: 0,
“FreeQuotaSpace”: 0,
“AssignedQuotaSpace”: -1,
“ReportedQuotaError”: false,
“ReportedQuotaWarning”: false,
“MainOperation”: “Backup”,
“ParsedResult”: “Success”,
“Interrupted”: false,
“Version”: “2.1.0.4 (2.1.0.4_stable_2025-01-31)”,
“EndTime”: “0001-01-01T00:00:00”,
“BeginTime”: “2025-07-17T20:27:37.5365349Z”,
“Duration”: “00:00:00”,
“MessagesActualLength”: 0,
“WarningsActualLength”: 0,
“ErrorsActualLength”: 0,
“Messages”: null,
“Warnings”: null,
“Errors”: null
}
},
“ParsedResult”: “Success”,
“Interrupted”: false,
“Version”: “2.1.0.4 (2.1.0.4_stable_2025-01-31)”,
“EndTime”: “2025-07-17T20:28:04.7942933Z”,
“BeginTime”: “2025-07-17T20:27:37.5365279Z”,
“Duration”: “00:00:27.2577654”,
“MessagesActualLength”: 6,
“WarningsActualLength”: 0,
“ErrorsActualLength”: 0,
“Messages”: [
“2025-07-17 22:27:42 +02 - [Information-Duplicati.Library.Main.Controller-StartingOperation]: L’opération Backup a débuté”,
“2025-07-17 22:27:53 +02 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Started: ()”,
“2025-07-17 22:27:57 +02 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Completed: (13,869 KB)”,
“2025-07-17 22:28:00 +02 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Started: ()”,
“2025-07-17 22:28:04 +02 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Completed: (13,869 KB)”,
“2025-07-17 22:28:04 +02 - [Information-Duplicati.Library.Main.Operation.FilelistProcessor-KeepIncompleteFile]: keeping protected incomplete remote file listed as Temporary: duplicati-20250717T202742Z.dlist.zip.aes”
],
“Warnings”: ,
“Errors”: ,
“BackendStatistics”: {
“RemoteCalls”: 2,
“BytesUploaded”: 0,
“BytesDownloaded”: 0,
“FilesUploaded”: 0,
“FilesDownloaded”: 0,
“FilesDeleted”: 0,
“FoldersCreated”: 0,
“RetryAttempts”: 0,
“UnknownFileSize”: 0,
“UnknownFileCount”: 0,
“KnownFileCount”: 14202,
“KnownFileSize”: 367000343554,
“LastBackupDate”: “2025-04-17T22:00:19+02:00”,
“BackupListCount”: 7,
“TotalQuotaSpace”: 0,
“FreeQuotaSpace”: 0,
“AssignedQuotaSpace”: -1,
“ReportedQuotaError”: false,
“ReportedQuotaWarning”: false,
“MainOperation”: “Backup”,
“ParsedResult”: “Success”,
“Interrupted”: false,
“Version”: “2.1.0.4 (2.1.0.4_stable_2025-01-31)”,
“EndTime”: “0001-01-01T00:00:00”,
“BeginTime”: “2025-07-17T20:27:37.5365349Z”,
“Duration”: “00:00:00”,
“MessagesActualLength”: 0,
“WarningsActualLength”: 0,
“ErrorsActualLength”: 0,
“Messages”: null,
“Warnings”: null,
“Errors”: null
}
}

Logs of the 9 hours backup (color green) :
Démarrer 2025-07-20 22:47:30 Fin 2025-07-21 07:55:47 Durée 09:08:17
Fichiers sources
Examiné 96400 (319.35 GB) Ouvert 96400 (319.35 GB) Ajouté 0 (0 bytes) Modifié 96400 (0 bytes) Supprimé 0

        {

“DeletedFiles”: 0,
“DeletedFolders”: 0,
“ModifiedFiles”: 0,
“ExaminedFiles”: 0,
“OpenedFiles”: 0,
“AddedFiles”: 0,
“SizeOfModifiedFiles”: 0,
“SizeOfAddedFiles”: 0,
“SizeOfExaminedFiles”: 0,
“SizeOfOpenedFiles”: 0,
“NotProcessedFiles”: 0,
“AddedFolders”: 0,
“TooLargeFiles”: 0,
“FilesWithError”: 0,
“ModifiedFolders”: 0,
“ModifiedSymlinks”: 0,
“AddedSymlinks”: 0,
“DeletedSymlinks”: 0,
“PartialBackup”: false,
“Dryrun”: false,
“MainOperation”: “Backup”,
“CompactResults”: null,
“VacuumResults”: null,
“DeleteResults”: null,
“RepairResults”: null,
“TestResults”: {
“MainOperation”: “Test”,
“VerificationsActualLength”: 0,
“Verifications”: ,
“ParsedResult”: “Success”,
“Interrupted”: false,
“Version”: “2.1.0.4 (2.1.0.4_stable_2025-01-31)”,
“EndTime”: “2025-07-17T20:28:04.7940968Z”,
“BeginTime”: “2025-07-17T20:28:04.7324466Z”,
“Duration”: “00:00:00.0616502”,
“MessagesActualLength”: 0,
“WarningsActualLength”: 0,
“ErrorsActualLength”: 0,
“Messages”: null,
“Warnings”: null,
“Errors”: null,
“BackendStatistics”: {
“RemoteCalls”: 2,
“BytesUploaded”: 0,
“BytesDownloaded”: 0,
“FilesUploaded”: 0,
“FilesDownloaded”: 0,
“FilesDeleted”: 0,
“FoldersCreated”: 0,
“RetryAttempts”: 0,
“UnknownFileSize”: 0,
“UnknownFileCount”: 0,
“KnownFileCount”: 14202,
“KnownFileSize”: 367000343554,
“LastBackupDate”: “2025-04-17T22:00:19+02:00”,
“BackupListCount”: 7,
“TotalQuotaSpace”: 0,
“FreeQuotaSpace”: 0,
“AssignedQuotaSpace”: -1,
“ReportedQuotaError”: false,
“ReportedQuotaWarning”: false,
“MainOperation”: “Backup”,
“ParsedResult”: “Success”,
“Interrupted”: false,
“Version”: “2.1.0.4 (2.1.0.4_stable_2025-01-31)”,
“EndTime”: “0001-01-01T00:00:00”,
“BeginTime”: “2025-07-17T20:27:37.5365349Z”,
“Duration”: “00:00:00”,
“MessagesActualLength”: 0,
“WarningsActualLength”: 0,
“ErrorsActualLength”: 0,
“Messages”: null,
“Warnings”: null,
“Errors”: null
}
},
“ParsedResult”: “Success”,
“Interrupted”: false,
“Version”: “2.1.0.4 (2.1.0.4_stable_2025-01-31)”,
“EndTime”: “2025-07-17T20:28:04.7942933Z”,
“BeginTime”: “2025-07-17T20:27:37.5365279Z”,
“Duration”: “00:00:27.2577654”,
“MessagesActualLength”: 6,
“WarningsActualLength”: 0,
“ErrorsActualLength”: 0,
“Messages”: [
“2025-07-17 22:27:42 +02 - [Information-Duplicati.Library.Main.Controller-StartingOperation]: L’opération Backup a débuté”,
“2025-07-17 22:27:53 +02 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Started: ()”,
“2025-07-17 22:27:57 +02 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Completed: (13,869 KB)”,
“2025-07-17 22:28:00 +02 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Started: ()”,
“2025-07-17 22:28:04 +02 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Completed: (13,869 KB)”,
“2025-07-17 22:28:04 +02 - [Information-Duplicati.Library.Main.Operation.FilelistProcessor-KeepIncompleteFile]: keeping protected incomplete remote file listed as Temporary: duplicati-20250717T202742Z.dlist.zip.aes”
],
“Warnings”: ,
“Errors”: ,
“BackendStatistics”: {
“RemoteCalls”: 2,
“BytesUploaded”: 0,
“BytesDownloaded”: 0,
“FilesUploaded”: 0,
“FilesDownloaded”: 0,
“FilesDeleted”: 0,
“FoldersCreated”: 0,
“RetryAttempts”: 0,
“UnknownFileSize”: 0,
“UnknownFileCount”: 0,
“KnownFileCount”: 14202,
“KnownFileSize”: 367000343554,
“LastBackupDate”: “2025-04-17T22:00:19+02:00”,
“BackupListCount”: 7,
“TotalQuotaSpace”: 0,
“FreeQuotaSpace”: 0,
“AssignedQuotaSpace”: -1,
“ReportedQuotaError”: false,
“ReportedQuotaWarning”: false,
“MainOperation”: “Backup”,
“ParsedResult”: “Success”,
“Interrupted”: false,
“Version”: “2.1.0.4 (2.1.0.4_stable_2025-01-31)”,
“EndTime”: “0001-01-01T00:00:00”,
“BeginTime”: “2025-07-17T20:27:37.5365349Z”,
“Duration”: “00:00:00”,
“MessagesActualLength”: 0,
“WarningsActualLength”: 0,
“ErrorsActualLength”: 0,
“Messages”: null,
“Warnings”: null,
“Errors”: null
}
}

If you did a “Direct restore from backup files” it creates what it calls a partial temporary database just for that restore which isn’t generally available. Or if you made a job then created a database with Repair, DB would hang around, but it’s a dangerous situation, because running a backup or other destination-changing use might change destination.

I’m not sure what you mean by backup source, as that’s not even reachable, I’d expect.

If all you did was some sort of Restore on other machine, it’s likely unrelated to mystery.

looks odd. It does explain why it took awhile. It had to open everything to check data, however it didn’t do it because it went from no files to 96400 new ones, but somehow believed they were all modified. A verbose log of the run would have given some info, however at this point I don’t know what would do that. Maybe you know of something, however if the drive was just sitting doing nothing, the files shouldn’t all look modified.

We can also pursue the bug report or a look-in-the-database if you like, but otherwise:

At this point, I think I have enough to try what I guess is backup of empty mount point, however additional notes from the developers (when available) might give some help.

Thank you very much for your help and for looking into this issue.
I’ll keep this in mind and do a thorough investigation if it happens again. But it’s a lot of time to spent.

I think this is due to Linux logic, where the folder is created, so the folder sticks around even if the media is unmounted. Duplicati will not run the backup if any source folder is missing, to prevent exactly this, but it only works for things that create the mount point themselves. I have added a new PR that adds a –-prevent-empty-source flag that can be used to stop the backup if the source folder is empty.

If Duplicati did a backup, you should be able to see that. Not sure how it could not be shown.

This is because Duplicati stores some metadata (timestamp, size, attributes) for each known file and folder. When scanning for changes, it looks if the metadata has changed, and if not, assumes the file has not changed. When a backup runs without any files, all known files (and their metadata) is gone, so the next run needs to examine each file and check if any data is already known.

The answer is mostly “yes, we already have this”, so the size of the backup does not grow, but the processing takes time.

I agree. This sounds really odd. Can you create a bugreport database and send it to me (PM), then I will see if I can figure out why a backup would seemingly complete, yet not show.