Pending Review

On systemd systems, generate a service unit file and use restart option to ensure service is recovered from crash

Alex Heylin 3 years ago updated by Michael Magill 1 year ago 7

On Linux systems running systemd currently no unit file is generated for the guest service thus if the service crashes the init system will not restart it.  This is simple to do, and offers a simple way to automate service recovery which is important given ScreenConnect (Control if you must) might be the only way to access that system.

Also, the service is not started automatically after install via .sh file and it should be.  No one installs ScreenConnect and doesn't want it running.

any systemd support would assist in installations that are systemd exclusive as well (eg: arch derivatives) 


Given I had to chase on another FR I opened five years ago for CW Automate to properly generate a service file for its agent - I don't think CW know what a service file is... I even supplied the fix in that FR and it's still not been done. 

Yeah I wish some of this could just be delivered as source. I get why the don't want to do that but at the same time the community would build all the tools required as you've shown through your previous FR contribution. It's just annoying having a few one off systems that I have to use alternative tools for. That said I've not been thrilled with the linux support given to control since acquisition. It's pretty apparent it's becoming a windows only product but I can hope to be proven wrong.


I absolutely agree - even if only some code was accessible to some "trusted" partners.   This weekend I started a trial of a new commercial system and found three enhancements I could make to their docs - so I cloned their docs repo, forked, added the enhancements and sent a PR. Four hours after I found the issue it was merged into their main branch and live on their site. That's how collaborative software development works well. If an organisation is daft enough to think all the expert knowledge and ideas about their product come from their staff (who usually don't use it) then 


In response to https://control.product.connectwise.com/communities/1/topics/3881-arch-linux-support I created a very simple systemd unit as part of repackaging for arch.  It just copies the initrd script into the ConnectWise Control folder in opt, and the systemd unit file just calls the init script.  Definitely not a polished final product, but gets the job done as a short term workaround.  Here's a link to the repo


In case it filters the URL go to github and look for me (Kelderek) and the repo is connectwisecontrol-arch. Let me know if it works for you!


Nice Michael! I won't have a reason to test it, but thanks for sharing it. I'll be discussing this with Partner Care team on Monday. 

No problem, I hope it helps someone out there.  It doesn't seem like it should be that hard for connectwise to default to a simple systemd unit file, and revert to init.d if someone is trying to deploy it on one of the few modern systems without systemd.

Now they just need to get full Wayland support sorted out haha