Download Instructions For Linux Server Breaks Manager

@compuit, did you get it sorted? It took me a couple of goes to get it right. It wasn’t obvious but became more evident if you started looking at the error logs. There are some subtle changes that we need to make and a normal update is not going to work.

There has been a bit of work behind the scenes and manager no longer relies on mono on linux and mac, so the systemctl service file needs an update too. Now, Manager-Server is a stand alone binary and requires permission changes, and the aforementioned systemctl .service file edit.

Now for me, even after several attempts, fixing of the command line parameters of the systemctl .service file and execution permissions for the server binary, I still couldn’t get it to work, it just continually crashed.

What I needed to do just once was start it from the command line itself (and shut it down) and then re-start the service and I was up and running.

It does kinda looks like it’s the windows version, and it kind of is, it’s a native .Net 5 Core binary, but it is a binary for linux (or Apple as the case may be). As a result, it is executed natively and the .Net files are located in the same directory.

In essence:

  • download the version you’re after
  • unzip/install it into the location you want to install it*
  • change the permissions of the binary file: chmod a+x ManagerServer
  • go in and edit your /etc/systemd/system/manager-server.service (see below)
  • reload the systemctl daemon and restart the service

changes to the systemctl manager-server.service file:

This is likely what you missed.

  for the average server, change: 
  ExecStart=/usr/bin/mono /usr/share/manager-server/ManagerServer.exe
  to:
  ExecStart=/usr/share/manager-server-20976/ManagerServer 

note: removal of /usr/bin/mono, and .exe at the end of server name

My server settings are a little custom, but essentially the same with custom port and database locations:

  # old:
  ExecStart=/usr/bin/mono /usr/share/manager-server-{version}/ManagerServer.exe -port {custom_port} -path {custom_path}
  # new:
  ExecStart=/usr/share/manager-server-{version}/ManagerServer -port {custom_port} -path {custom_path}

The full usual instructions are still at the same location (and always hard for me to find, so I do like to link it):

https://www.manager.io/server/installation/ubuntu/

The new new install instructions have already been updated and are on the server install instructions page (you’ll note they are a little different). If you go through the complete install process, it should work. you’ll notice the systemctl manager-server service is a little different, and that’s where it is failing (or it was for me) and whatever the error was that required me to start it natively before being run as a service. I’m still not sure what that was about but haven’t had the time to delve any further.

Good luck


* for me, this is the first place where things broke down, because I don’t use the default locations and hence I needed to dig a little deeper. What I do is create a new folder for each version, including the databases, do backups, copy both the database files and service utility files to the appropriate locations and edit the systemctl service file, pointing to the new locations and apply new port settings. I have scripts for this, but they failed due to other changes (eg, source file location, file name, extraction, permissions, service, etc, etc).

This change has broken my upgrading scripts both in sourcing the latest version and files to extract (and one to edit). There’s not much point in re-writing them at the moment as it looks like he’s going to change the format of the files again so I’d need to seek out the new names at that point. This is according to:

2 Likes