"Failed to restore empty file, access to path is denied" when restoring from backup

Running a backup/restore to transfer files to a new computer, and (judging by disk space) only around half of files are restoring on the new computer.

There’s hundreds of thousands of errors along the lines of " * 2024-02-11 19:04:17 -08 - [Error-Duplicati.Library.Main.Operation.RestoreHandler-RestoreFileFailed]: Failed to restore empty file: “C:\Program Files (x86)\Steam\steamapps\common\Airships Conquer the Skies\jre\lib\security\trusted.libraries”. Error message was: Access to the path ‘\?\C:\Program Files (x86)\Steam\steamapps\common\Airships Conquer the Skies\jre\lib\security’ is denied."

Here’s also the “complete log”: Duplicati Complete Log - Pastebin.com

I’m already running as administrator, so I’m not sure what’s going wrong in this. It seems like the problem is concentrated in the Program Files directories, as various stuff I’ve had outside those directories restored without issue (though I haven’t confirmed whether it’s 100% for those other directories).

Welcome to the forum @silvertwig

How did you get that? Having that kind of account isn’t enough. You need to elevate it, which means typically you have to ask to run as administrator, then answer a popup box from Windows to confirm.

EDIT:

Running whoami /groups is a way to test. If it says “Group used for deny only”, you’re not elevated.
How User Account Control works. Task Manager also has an Elevated column that you can enable.

I am not logged in as an administrator account, but was running just Duplicati as administrator. Specifically, I ran the Duplicati app from the start menu as administrator (via right click > run as administrator). It had the standard popup of asking permission. Looking into it, the start menu entry is linked to “Duplicati.GUI.TrayIcon.exe”.

Could it be that the admin permissions didn’t properly extend to whatever process was actually trying to transfer the files? Is running Duplicati from within an administrator account required?

Windows should have requested an admin user name and password.

Task Manager should show Duplicati as that user with Elevated Yes.
Right click on the header bar if Elevated column isn’t already shown.
Don’t be surprised to find double Duplicati processes. They’re paired.

Wherever access is denied (maybe start with a small test), check the
Explorer → right click → Properties → Security and maybe Advanced.

You can also test with “Run as administrator” with a command prompt.

Only if you want Administrator privileges, and then it must be elevated.

I believe I’ve worked out what the issue was. If my theory is correct what happened was as follows:

  1. After installing Duplicati on the target computer, Duplicati was automatically started (without elevation).
  2. I attempted to transfer the files, and it failed for some directories due to the aforementioned lack of elevation.
  3. I ran Duplicati from the start menu with the “run as administrator”, but this did not actually replace the already-running-in-the-background non-elevated Duplicati processes, so it failed again due to the same lack of elevation.
  4. I tried again, making sure to end the non-elevated auto-started processes before launching the elevated ones.
  5. It worked this time.

Thanks for your time in helping to sort this out.

1 Like

I’m glad it’s OK. There are things that may support the theory, but it depends on the path taken.

Duplicati.GUI.TrayIcon.exe

This utility starts the Duplicati tray icon. Without additional parameters specified, the included webserver is activated. The webserver listens on TCP port 8200 by default. If port 8200 is unavailable, port 8300 is tried, increasing until a free port is found.

Search is intentional. Some cases (such a computer with multiple users) can get multiple Duplicati.

One thing that could help keep things aligned is that the tray icon knows the port for its own server, however if one doesn’t open from tray icon, browsing to usual URL at port 8200 can get a surprise.

should have forced “Run as administrator” to change accounts, which should have had a different collection of jobs on its home screen, but on a new computer, maybe no jobs had been set up yet.

is a situation where one would have no jobs. One could either import the old job to run a restore, or Restoring files if your Duplicati installation is lost describes “Direct restore from backup files” which creates a partial temporary database (kind of wasted if the goal is to eventually recreate a full one).

Fastest way to migrate is to move the old databases to the new computer. No recreating is required.