"Invalid or missing backup id" after moving from tray to service

Using Duplicati on Ubuntu Server 17.04 with XFCE added on.

Initially I launched and configured Duplicati via the system tray from the Applications menu, set up a backup config, and it finished running. Since I usually run this server headless, I have since discovered that by default Duplicati doesn’t have some daemon backend running unless you launch the GUI (I’m used to CrashPlan which would run in the background regardless of any GUI session being launched). I learned Duplicati now has a service that allows it to run without the tray app, so I rebooted, then started the service, and I can connect to the web interface fine. It shows my existing backup config. However it says there are no scheduled jobs, and if I try to edit or delete the config, I receive the error “Invalid or missing backup id” and Duplicati refuses to do anything else.

Ideally I’d like to just resume using the existing config so I don’t have to re-upload ~150GB, but I’m also fine starting over, if only Duplicati would at least let me delete the existing config. Any insights?

Did you set the service up to use the correct sqllite databases? I haven’t (yet) installed on Linux, but on Windows it uses different paths for the databases when installed as an app versus as a service.

It might work to just move them around manually. For windows, see Changed from app to service: backup no longer found
I think the key is to use --portable-mode so the databases are in the duplicati 2/data dir.

But again, I haven’t looked into this on Linux, I’m still working on protecting windows stuff via a service.

Did you try the “Run automatically as a service” steps listed in this #howto?

Duplicati stores the database with backup configurations in ~/.config/Duplicati. When you change user (service us usually root user), you need to move the databases to /root/.config/Duplicati. (Alternative is to set the environment variable Duplicati_HOME=/home/oldusr/.config/Duplicati).

1 Like

Perfect, thanks for the help everyone! @kenkendk’s solution fixed it.