Can't run Duplicati on new Mac - SOLVED

I have two Macs. On my older iMac Duplicati 2.0.3.3 runs fine and performs nightly backups to Google Drive and MS Onedrive. On my new Macbook Pro I downloaded and installed the latest mono framework and installed Duplicati 2.0.3.3 and it won’t launch and doesn’t put the icon in the menu bar. Both Macs are running Mac OS 10.13.6 High Sierra.

I’ve read through various topics on this site but don’t understrand all the steps others have taken (I’m not as technicl as some seem to be). In any case, any ideas would be welcome.

When poking around I found this message:
Last login: Fri Jul 13 17:53:00 on ttys000
MacBook-Pro:~ stevenboatman$ /Applications/Duplicati.app/Contents/MacOS/duplicati-server ; exit;
A serious error occurred in Duplicati: System.Exception: Failed to create, open or upgrade the database.

I can also find a backup of an sqlite database but I’m not sure what to do with it

OK - I was able to remove the mono framework and Duplicati.

Any advise on how to install everything so that it will run in Mac Sierra?

Hi @SteveBoat, welcome to the forum!

I’m not sure what issue you’re running into but as far as I know Duplicati should run just fine on MacOS Sierra 10.12.

The “Failed to create, open or upgrade the database” error usually shows up when trying to install an older version of Duplicati than one that was already installed on the system. Well, “older” in the sense that it was using a different sqlite database version.

When you uninstalled Duplicati did you make sure the .sqlite files (likely stored in ~/.config/duplicati were deleted?

I just deleted the sqlite db and the entire Duplicati folder. I also removed the mono framework. I then reinstalled the framework and Duplicati and it still won’t launch.

I’m kind of out of ideas.

I’d suggest running it from the command line with --verbose added as a parameter to get more details.

The “can’t open or upgrade database” still sounds like either there’s a permissions issue keeping Duplicati from creating the database or there’s an old database floating around.

Is this the first time you’ve tried running Duplicati on this machine?

Are you trying to use any custom options that might effect database paths?

I’m also going to see if @Pectojin has run into this before, as I think he’s done some more MacOS stuff than I have.

I’ve never used the command line before but tried to run it with “mono Duplicati.CommandLine.exe” I found in the user manual but I get a “file not found” message.

I removed mono 5.12 and installed version 4.8 without success.

Before reinstalling Duplicati I removed the entire Duplicati folder under .config including the sqlite file

I have not run Duplicati before on this machine but have it running on an IMac and two Windows 10 machines. This is the only one that it doesn’t seem to like.

From this error it seems to be a corruption in the database based on notes here The database has version 7 but the largest supported version is 6. · Issue #2748 · duplicati/duplicati · GitHub. However, if you deleted the entire ~/.config/Duplicati folder it would go away.

An other option is permission issues on the database files after creation (although they should be created with correct permissions after you deleted ~/.config/Duplicati). I tried to mess up my permissions and I get the exact same A serious error occurred in Duplicati: System.Exception: Failed to create, open or upgrade the database. error when I remove my read permissions to the .sql files.

After you started the Duplicati server I would make sure the permissions look right. The files should look something like this:

ll ~/.config/Duplicati/
-rw-r--r--  1 your_user  staff      33792 Jul  19 20:16 EEUWSMQYKT.sqlite
-rw-r--r--  1 your_user  staff      35840 Jul  19 22:32 EPKFYAMWJK.sqlite

Thanks again for the response.
This evening I removed and verified that the mono framework was gone.
I removed Duplicti and completely deleted the Duplicati folder from ~/.config including the sqlite db

I downloaded and installed mono 5.12
I downloaded and installed Duplicati 2.0.3.3

I updated permissions for Duplicati and the sqlite server to RW for everone

Trying to launch Duplicati gets no response,

I got this but not sure what is means - “a name resolution failure”?

Last login: Thu Jul 19 20:43:12 on ttys000
MacBook-Pro:~ stevenboatman$ /Applications/Duplicati.app/Contents/MacOS/duplicati ; exit;
Server has started and is listening on 127.0.0.1, port 8200
Request error: System.Net.WebException: Error: NameResolutionFailure
  at System.Net.WebConnection+<Connect>d__16.MoveNext () [0x00044] in <9279d6f02a9d42dc8fa07e8490517b4c>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Net.WebConnection+<InitConnection>d__19.MoveNext () [0x000cc] in <9279d6f02a9d42dc8fa07e8490517b4c>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[TResult].GetResult () [0x00000] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Net.WebOperation+<Run>d__57.MoveNext () [0x0009a] in <9279d6f02a9d42dc8fa07e8490517b4c>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Net.WebCompletionSource`1+<WaitForCompletion>d__15[T].MoveNext () [0x00094] in <9279d6f02a9d42dc8fa07e8490517b4c>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Net.HttpWebRequest+<RunWithTimeoutWorker>d__244`1[T].MoveNext () [0x000ba] in <9279d6f02a9d42dc8fa07e8490517b4c>:0 
--- End of stack trace from previous location where exception was thrown ---
  at Duplicati.Library.Utility.AsyncHttpRequest+AsyncWrapper.GetResponseOrStream () [0x0004d] in <0828ce86ffa94a4bbbb2da4331bcc67b>:0 
  at Duplicati.Library.Utility.AsyncHttpRequest.GetResponse () [0x00044] in <0828ce86ffa94a4bbbb2da4331bcc67b>:0 
  at Duplicati.GUI.TrayIcon.HttpServerConnection.PerformRequestInternal[T] (System.String method, System.String endpoint, System.Collections.Generic.Dictionary`2[TKey,TValue] queryparams) [0x001c5] in <ca93296e82084f80be4b4a222197f416>:0 
  at Duplicati.GUI.TrayIcon.HttpServerConnection.PerformRequest[T] (System.String method, System.String urlfragment, System.Collections.Generic.Dictionary`2[TKey,TValue] queryparams) [0x00035] in <ca93296e82084f80be4b4a222197f416>:0 
  at Duplicati.GUI.TrayIcon.HttpServerConnection.UpdateStatus () [0x00001] in <ca93296e82084f80be4b4a222197f416>:0 
  at Duplicati.GUI.TrayIcon.HttpServerConnection..ctor (System.Uri server, System.String password, System.Boolean saltedpassword, Duplicati.GUI.TrayIcon.Program+PasswordSource passwordSource, System.Collections.Generic.Dictionary`2[TKey,TValue] options) [0x000df] in <ca93296e82084f80be4b4a222197f416>:0 
  at Duplicati.GUI.TrayIcon.Program.RealMain (System.String[] _args) [0x00483] in <ca93296e82084f80be4b4a222197f416>:0 
Request error: System.Net.WebException: Error: NameResolutionFailure
  at System.Net.WebConnection+<Connect>d__16.MoveNext () [0x00044] in <9279d6f02a9d42dc8fa07e8490517b4c>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Net.WebConnection+<InitConnection>d__19.MoveNext () [0x000cc] in <9279d6f02a9d42dc8fa07e8490517b4c>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[TResult].GetResult () [0x00000] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Net.WebOperation+<Run>d__57.MoveNext () [0x0009a] in <9279d6f02a9d42dc8fa07e8490517b4c>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Net.WebCompletionSource`1+<WaitForCompletion>d__15[T].MoveNext () [0x00094] in <9279d6f02a9d42dc8fa07e8490517b4c>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Net.HttpWebRequest+<RunWithTimeoutWorker>d__244`1[T].MoveNext () [0x000ba] in <9279d6f02a9d42dc8fa07e8490517b4c>:0 
--- End of stack trace from previous location where exception was thrown ---
  at Duplicati.Library.Utility.AsyncHttpRequest+AsyncWrapper.GetResponseOrStream () [0x0004d] in <0828ce86ffa94a4bbbb2da4331bcc67b>:0 
  at Duplicati.Library.Utility.AsyncHttpRequest.GetResponse () [0x00044] in <0828ce86ffa94a4bbbb2da4331bcc67b>:0 
  at Duplicati.GUI.TrayIcon.HttpServerConnection.PerformRequestInternal[T] (System.String method, System.String endpoint, System.Collections.Generic.Dictionary`2[TKey,TValue] queryparams) [0x001c5] in <ca93296e82084f80be4b4a222197f416>:0 
  at Duplicati.GUI.TrayIcon.HttpServerConnection.PerformRequest[T] (System.String method, System.String urlfragment, System.Collections.Generic.Dictionary`2[TKey,TValue] queryparams) [0x00035] in <ca93296e82084f80be4b4a222197f416>:0 
  at Duplicati.GUI.TrayIcon.HttpServerConnection.UpdateStatus () [0x00001] in <ca93296e82084f80be4b4a222197f416>:0 
  at Duplicati.GUI.TrayIcon.HttpServerConnection..ctor (System.Uri server, System.String password, System.Boolean saltedpassword, Duplicati.GUI.TrayIcon.Program+PasswordSource passwordSource, System.Collections.Generic.Dictionary`2[TKey,TValue] options) [0x000df] in <ca93296e82084f80be4b4a222197f416>:0 
  at Duplicati.GUI.TrayIcon.Program.RealMain (System.String[] _args) [0x00483] in <ca93296e82084f80be4b4a222197f416>:0 
Request error: System.Net.WebException: Error: NameResolutionFailure
  at System.Net.WebConnection+<Connect>d__16.MoveNext () [0x00044] in <9279d6f02a9d42dc8fa07e8490517b4c>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Net.WebConnection+<InitConnection>d__19.MoveNext () [0x000cc] in <9279d6f02a9d42dc8fa07e8490517b4c>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[TResult].GetResult () [0x00000] in <0f9df4881040473f9da7cf6c2e2cb8c3>:0 
  at System.Net.WebOperation+<Run>d__57.MoveNext () [0x0009a] in <9279d6f02a9d42dc8fa07e8490517b4c>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Net.WebCompletionSource`1+<WaitForCompletion>d__15[T].MoveNext () [0x00094] in <9279d6f02a9d42dc8fa07e8490517b4c>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Net.HttpWebRequest+<RunWithTimeoutWorker>d__244`1[T].MoveNext () [0x000ba] in <9279d6f02a9d42dc8fa07e8490517b4c>:0 
--- End of stack trace from previous location where exception was thrown ---
  at Duplicati.Library.Utility.AsyncHttpRequest+AsyncWrapper.GetResponseOrStream () [0x0004d] in <0828ce86ffa94a4bbbb2da4331bcc67b>:0 
  at Duplicati.Library.Utility.AsyncHttpRequest.GetResponse () [0x00044] in <0828ce86ffa94a4bbbb2da4331bcc67b>:0 
  at Duplicati.GUI.TrayIcon.HttpServerConnection.PerformRequestInternal[T] (System.String method, System.String endpoint, System.Collections.Generic.Dictionary`2[TKey,TValue] queryparams) [0x001c5] in <ca93296e82084f80be4b4a222197f416>:0 
  at Duplicati.GUI.TrayIcon.HttpServerConnection.PerformRequest[T] (System.String method, System.String urlfragment, System.Collections.Generic.Dictionary`2[TKey,TValue] queryparams) [0x00035] in <ca93296e82084f80be4b4a222197f416>:0 
  at Duplicati.GUI.TrayIcon.HttpServerConnection.UpdateStatus () [0x00001] in <ca93296e82084f80be4b4a222197f416>:0 
  at Duplicati.GUI.TrayIcon.HttpServerConnection..ctor (System.Uri server, System.String password, System.Boolean saltedpassword, Duplicati.GUI.TrayIcon.Program+PasswordSource passwordSource, System.Collections.Generic.Dictionary`2[TKey,TValue] options) [0x000df] in <ca93296e82084f80be4b4a222197f416>:0 
  at Duplicati.GUI.TrayIcon.Program.RealMain (System.String[] _args) [0x00483] in <ca93296e82084f80be4b4a222197f416>:0 
logout
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.

[Process completed]

It sounds like you’re now having the same issue as mentioned here:

In that case I believe the problem was that “localhost” (which Duplicati uses to connect to the GUI) was not being resolved to the 127.0.0.1 IP address.

You should be able to confirm whether or not this is the issue by running nslookup localhost. If it doesn’t return 127.0.0.1 you may need to add something like the following to your /etc/hosts file:
127.0.0.1 localhost

Hmm, I’m wondering if the nameresolution error is related to usage reporting? We’ve previously had Windows machines being unable to start with reporting on since it does run a short set of actions on startup

OK - when I do the nslookup localhost command I get:
** server can’t find localhost: SERVFAIL

MacBook-Pro:~ stevenboatman$ sudo nano /etc/hosts
MacBook-Pro:~ stevenboatman$ nslookup localhost
Server: 192.168.1.1
Address: 192.168.1.1#53

** server can’t find localhost: SERVFAIL

MacBook-Pro:~ stevenboatman$

When I go to edit using /etc/hosts, it’s empty and I enter/save 127.0.0.1 localhost

When I do the nslookup local again I still get the same response:
** server can’t find localhost: SERVFAIL

MacBook-Pro:~ stevenboatman$ sudo nano /etc/hosts
MacBook-Pro:~ stevenboatman$ nslookup localhost
Server: 192.168.1.1
Address: 192.168.1.1#53

** server can’t find localhost: SERVFAIL

MacBook-Pro:~ stevenboatman$

OK, I tried again and SUCCESS! Duplicati now opens as expected.

Thanks everone for all the help.

I think nslookup might ignore the hosts file but ping should use it. Does it seem like the localhost entry fixed the issue?

Yes, I think it was editing the /etc/hosts file that fixed it. I probably didn’t do it correctly the first time but it worked after the second.

Thanks again for the help

For the record, the fix that seems to have worked was to add 127.0.0.1 localhost to the /etc/hosts file.

Thanks for letting us know it worked for you! :slight_smile:

Note that I edited your last post to include the “this is what I did” step and flagged it as the Solution. Please let us know if you disagree with that.

Yep, I agree. This is what I did. Thanks again