"Found # remote files that are not recorded in local storage, please run repair" using NAS as destination

Hi all, I just had this issue and I subscribed to the forum to document how I fixed this issue for future Googlers.

TLDR don’t use leading slashes in your backup’s S3 destination folder path.

I started having the “please run repair” message that I couldn’t seem to fix. I checked my Wasabi S3 bucket and panicked when I saw it apparently empty. However, when I checked the usage/billing it showed I had over a TB of files in the bucket.

This post gave me the clue I needed: this happens when you use a leading slash in your S3 destination folder path. This creates a double slash in the s3 url which confuses both duplicati and most S3 viewing GUIs.

The following command successfully listed the hidden files (notice the double slash):

aws s3 ls --profile wasabi --endpoint-url=https://s3.wasabisys.com s3://my-duplicati-bucket//

I fixed the issue by moving everything under the double slash into the bucket root:

aws s3 mv --profile wasabi --endpoint-url=https://s3.wasabisys.com s3://my-duplicati-bucket// s3://my-duplicati-bucket/  --recursive

This took a few hours to complete. Then, I fixed the leading slash in my duplicati settings, re-ran the backup, and the problem was fixed.

I still don’t know why everything worked for months without errors and then suddenly stopped. Perhaps an update? In any case, I think it would be sensible for Duplicati to forbid leading slashes.