Please flesh out documentation for installation & use on Linux

I really want to use and appreciate this software - it’s highly recommended. But I’m running on Arch Linux and backing up across my LAN to a Ubuntu “server”.

The documentation for Linux is very sparse and spare. The need for mono gives away the game that this is likely a Windows-centric tool ported over to run on Linux (and, I assume, Mac). The documentation makes references only to certain “.exe” files… which naturally, don’t exist on Linux.

It doesn’t help that I’d just completed my first backup hours before my system failed and needed rebuilding. I figured, no problem, my stuff is backed up. (I don’t keep anything truly important on my desktop machine - code goes to Github, etc.)

But an attempted restore failed.

Now I’m hunting my filesystem for “Duplicati.CommandLine.RecoveryTool.exe” and there’s no mention of what path it might have gone into. It’s not anywhere in my $PATH - since there was no information as to what paths the Duplicati components would end up in.

Sorry for venting; I’m frustrated. But please try to help us Linux folks out. You continually get praised as a great FOSS backup solution… we just need a little documentation.


I don’t think there’s any game to this. Just like Java, C# generates portable bytecode that’s interpreted later.
Duplicati is the old web site for version 1 showing last release “on 2013-02-02 for Windows, Linux, MacOS” Duplicati 2 has also always been portable AFAIK. Admittedly, usage statistics tilt towards Windows though.

They exist there when they’re .NET assemblies.

.NET, metadata, and the PE format (Wikipedia)
.NET Assembly File Format (Microsoft)
Introduction to developing with Mono Assemblies
Can I run Mono applications without using ‘mono program.exe’? shows a way to get transparent running of an .exe similarly to how Windows runs the .NET Framework transparently when you run a .NET assembly, however it then advises not to do that, but to use a wrapper script instead. Duplicati has several wrappers:

$ whereis duplicati
duplicati: /usr/bin/duplicati /usr/lib/duplicati
$ which duplicati
$ head -2 /usr/bin/duplicati
$ file /usr/lib/duplicati/Duplicati.CommandLine.exe
/usr/lib/duplicati/Duplicati.CommandLine.exe: PE32 executable (console) Intel 80386 Mono/.Net assembly, for MS Windows

I’m not sure if Linux and MacOS locations for Duplicati are completely standardized, and distributions can presumably package Duplicati to fit whatever the OS convention is, so it’s hard to document what they do. Locations for common system types could probably be said, but Windows is simpler (yet undocumented).

Using Duplicati from the Command Line
Other Command Line Utilities

All Command Line Utilities can be found in the Duplicati program folder.

is probably the sort of statement that could be expanded further (including for Windows), and the need to run mono could be said more widely. It’s sort of said below, but then it doesn’t cover the directory to be in

How to use the Duplicati Command Line tool

Linux and Mac OS X users should type mono Duplicati.CommandLine.exe or duplicati-cli , which is a wrapper for running mono Duplicati.CommandLine.exe .

I’m not sure if there’s much hope in the near future for installation directions on every sort of Linux around.
The How-To category of the forum covers some. Maybe when stable enough, some can go in the manual. For reliability there might need to be verification of the draft by some person who actually has that system.

Given my recent experiences, I’ll say that there needs to be better documentation of Duplicati as a whole aside for just Linux users (am both a Debian and Windows user), especially anything regarding planning the usage of Duplicati. It may help pre-empt some of the errors I see in these forums