How do I install on CentOS 7?

So, after trying to follow various guides on the web, I ended up trying to install latest rpm and I’m being told that some items are missing. I installed Mono independently and confirmed that a trivial Hello.cs file runs properly.

The command below provides several suggestions after it fails but it’s unclear to me which is the best way forward.

Any hints would be appreciated.

Thanks,
D


[xxx@yyy repo]# yum --nogpgcheck localinstall duplicati-2.0.2.10-2.0.2.10_canary_20171011.noarch.rpm
Loaded plugins: fastestmirror, langpacks
Examining duplicati-2.0.2.10-2.0.2.10_canary_20171011.noarch.rpm: duplicati-2.0.2.10-2.0.2.10_canary_20171011.noarch
Marking duplicati-2.0.2.10-2.0.2.10_canary_20171011.noarch.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package duplicati.noarch 0:2.0.2.10-2.0.2.10_canary_20171011 will be installed
--> Processing Dependency: libappindicator for package: duplicati-2.0.2.10-2.0.2.10_canary_20171011.noarch
Loading mirror speeds from cached hostfile
 * base: mirrors.seas.harvard.edu
 * extras: mirror.net.cen.ct.gov
 * updates: mirrors.cmich.edu
--> Processing Dependency: mono(appindicator-sharp) for package: duplicati-2.0.2.10-2.0.2.10_canary_20171011.noarch
--> Finished Dependency Resolution
Error: Package: duplicati-2.0.2.10-2.0.2.10_canary_20171011.noarch (/duplicati-2.0.2.10-2.0.2.10_canary_20171011.noarch)
           Requires: mono(appindicator-sharp)
Error: Package: duplicati-2.0.2.10-2.0.2.10_canary_20171011.noarch (/duplicati-2.0.2.10-2.0.2.10_canary_20171011.noarch)
           Requires: libappindicator
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

I am no RPM pro, so I am not sure what is where in CentOS 7.

The package libappindicator is used to show the tray icon on the user desktop. If you do not plan on using the desktop, you can ignore it. If you do not install it, it should work anyway, using the GTK app indicator, which may or may not be hidden by default.

I can see that some versions of Fedora has the package:
https://rpmfind.net/linux/rpm2html/search.php?query=libappindicator.so.1
https://www.rpmfind.net/linux/rpm2html/search.php?query=libappindicator-gtk3

I’d like to use the desktop if possible, I’m not a fan of CLI unless I really have to.

Am I correct in assuming this is a full install and not a Docker container?

OK – (for others in a similar bind) I solved the problem by first installing EPEL (http://mirror.cs.princeton.edu/pub/mirrors/fedora-epel/7/x86_64/e/) and then I was able to explicitly run

yum install libappindicator

Once I did that, I was then able to install Duplicati by first downloading it and then running

yum --nogpgcheck localinstall duplicati-2.0.2.10-2.0.2.10_canary_20171011.noarch.rpm

1 Like

Thank for letting us know what worked for you!

I’m actually still trying to get a VM for Centos 7 installed so I could test…I chose minimal (kept getting errors downloading the full ISO) then had a to wait for Gnome to install… but I’m sure it will be great once I’m done. :slight_smile:

Actually, I’m running CentOS 7 on a physical box inside of which I’m running a CentOS 7 instance in a VM (VirtualBox) that contains only what’s needed to run my mail server. (Maybe someday I’ll switch to Docker for this but I don’t care enough about that)

The whole point is to be have a backup of the VM (independently of backing up the data inside it, which is what I’m doing now) so that if the hardware dies I can just bring up a new already configured turnkey mailserver on another machine and just restore the mail from Duplicati

How do I make duplicati run automatically? I found the following link in Github

which shows the name and location of the server so I could add this in myself but I don’t know what options are required?

Also, looking at permissions in my /usr/bin I see they are all installed as root but I got quite a few permission denied errors when I tried to do my first backup

Ahh, the joys of VMs. Once set up they can be very nice for that sort of quick recovery. :slight_smile:

BTW - I flagged your post (#5) as the solution. Please let me know if you disagree with that.

That’s fine. Sorry, I’m not completely focused on forum etiquette here yet.

1 Like

No need to apologize - I was just excited to have such a clear cut solution I wanted everybody to easily be able to find it. :smiley:

No options are required, it should just run like that. If you place the service file in /usr/lib/systemd/system/ it should be possible to run:

sudo systemctl enable duplicati

And it will then auto-start as a service.

It does not matter who owns the files, it matters who runs the Duplicati server. If you set up the service as above, it will run as root.

You can then get the tray-icon to connect to the service with

duplicati --no-hosted-server --serverurl=http://localhost:8200
2 Likes

Thanks - that worked.

However, should there be an ExecStop entry in that service file so that duplicati can be killed gracefully on demand or when machine is being shutdown/rebooted?

To install in CentOS 7 without dependence problems, just use “dnf install duplicati.rpm” instead of “rpm install”.

To run as a service, create the file /etc/systemd/system/duplicati.service

[Unit]
Description=Duplicati Backup software

[Service]
ExecStart=/usr/bin/mono /usr/lib/duplicati/Duplicati.Server.exe
Restart=on-failure
RestartSec=30

[Install]
WantedBy=multi-user.target

After that, just use:
systemctl start duplicati.service
systemctl enable duplicati.service

1 Like

Unfortunately neither dnf or the older yum was able to resolve the dependency on libappindicator, even after I installed the EPEL repo so I still ended up doing it manually.

I just tried building the RPM on Centos 7. I was unable to get it working without EPEL, but with EPEL it produces the RPM. Attempting to install the resulting RPM on Centos 7 gave this:

Installing for dependencies:
 libappindicator       x86_64 12.10.0-11.el7                    epel       36 k
 libappindicator-sharp x86_64 12.10.0-11.el7                    epel       28 k
 libdbusmenu           x86_64 16.04.0-2.el7                     epel      132 k
 libdbusmenu-gtk2      x86_64 16.04.0-2.el7                     epel       34 k
 libindicator          x86_64 12.10.1-5.el7                     epel       63 k

Is that similar to what you found?

Edit: I get the same if I try to install the RPM built on Fedora.

My install commands are (installs the build tools as well as the runtime tools):

yum -y install deltarpm 
yum -y upgrade
yum -y install epel-release
yum -y install yum-utils rpm-sign gnupg rpmdevtools
yum -y install mono-devel gnome-sharp-devel dos2unix git nuget

I don’t know about getting the service running, but here’s what worked for me to install the Duplicati tray icon from the terminal on a fresh install of CentOS 7 (Minimal):

  1. Run sudo yum install epel-release
    Note: I got a message about not being in the sudoers file so needed to do a full su to continue.

  2. Run wget https://updates.duplicati.com/beta/duplicati-2.0.2.1-2.0.2.1_beta_20170801.noarch.rpm

  3. Run sudo yum --nogpgcheck localinstall duplicati-2.0.2.1-2.0.2.1_beta_20170801.noarch.rpm

  4. Duplicati was then visible in the GUI under “Aplications -> System Tools -> Duplicati”
    Note: I’m not used to the Centos 7 graphical shell so didn’t realize the Tray Icon actually is in a hidden-by-default ‘ribbon’.
    image
    image

Cordial saludo yo realice la duplicati ejecuta las copias de seguridad pero a la hora de hacer un snapshot a una base de datos no lo hace por privilegios quien me podría ayudar gracias

Hello! I install successfully, but I can’t open GUI - the port on site 8200 isn’t opened.

But in Putty I see:
[root@XXXXX ~]# netstat -nlp | grep mono
tcp 0 0 0.0.0.0:8200 0.0.0.0:* LISTEN 112864/mono-sgen

Why it can be? And what can I do?

From local or remote?

It looks open locally, per your netstat. That doesn’t mean it’s open remote. It depends on firewall setup.

Makes me think you are remote for this, and wonder if web browser for web UI is remote from Duplicati.

What happens if you do something like telnet localhost 8200 in Putty shell. Does it connect or not?

If you find you have a firewall problem, there are guides on the web for CentOS 7. Below is one example:

How To Open A Port In CentOS / RHEL 7

If you are connecting to Duplicati by its DNS name, I think you also need to set up hostnames in Settings

1 Like