0
Waiting for information

Ubuntu 20.04 does not work with Screen Connect 20.1.27036.7360 or 20.2.29488.7519_Debug

Chris Feist 1 month ago updated 2 weeks ago 3

Ubuntu 20.04 is still non-functional with both the latest stable and debug versions on the website.

The is a similar bug that was marked fix that should not have been- https://control.product.connectwise.com/communities/6/topics/3030-ubuntu-2004-lts-screenconnect_201270367360-not-working

You can see in the 4nd to last comment it is stated that the libc issue is still present with the debug version.  So far the only workaround is to manually change things in the library directory which is not a good long term solution (and potentially dangerous to other applications running on the system).

I get the following error repeatedly in the logs:

Event (2020/09/17 08:47:20.943 -05:00, ScreenConnect Session Manager, Information): Starting service...
Event (2020/09/17 08:47:21.440 -05:00, ScreenConnect Session Manager, Information): Successfully started service.
Event (2020/09/17 08:47:21.440 -05:00, ScreenConnect Relay, Information): Starting service...
Event (2020/09/17 08:47:21.691 -05:00, ScreenConnect Relay, Information): Successfully started service.
Event (2020/09/17 08:47:21.691 -05:00, ScreenConnect Web Server, Information): Starting service...
Event (2020/09/17 08:47:31.275 -05:00, ScreenConnect Web Server, Information): Successfully started service.

Unhandled Exception:
System.TypeInitializationException: The type initializer for 'libc' threw an exception. ---> System.InvalidOperationException: Unable to load native library from 'libc.so'
at ScreenConnect.DiskNativeLibrary..ctor (System.String libraryPath) [0x00039] in :0
at ScreenConnect.MonoToolkit+MonoDiskNativeLibrary..ctor (System.String libraryPath) [0x00000] in <13284ac991af480facb74ab3873c80af>:0
at ScreenConnect.MonoToolkit.LoadNativeLibraryFromDisk (System.String libraryPath) [0x00001] in <13284ac991af480facb74ab3873c80af>:0
at ScreenConnect.NativeLibrary.LoadLibrary (System.String libraryName, System.Type lookInAssemblyWithType) [0x00041] in :0
at ScreenConnect.NativeLibrary.LoadLibrary (System.Type type, System.Type lookInAssemblyWithType) [0x00008] in :0
at ScreenConnect.NativeLibrary.LoadProxy (System.Type type, System.Type lookInAssemblyWithType) [0x00010] in :0
at ScreenConnect.NativeLibrary.LoadProxy[T] (System.Type lookInAssemblyWithType) [0x00001] in :0
at ScreenConnect.MonoNative+libc..cctor () [0x0000a] in <13284ac991af480facb74ab3873c80af>:0
--- End of inner exception stack trace ---
at ScreenConnect.Program.Main (System.String[] args) [0x004a1] in :0
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: The type initializer for 'libc' threw an exception. ---> System.InvalidOperationException: Unable to load native library from 'libc.so'
at ScreenConnect.DiskNativeLibrary..ctor (System.String libraryPath) [0x00039] in :0
at ScreenConnect.MonoToolkit+MonoDiskNativeLibrary..ctor (System.String libraryPath) [0x00000] in <13284ac991af480facb74ab3873c80af>:0
at ScreenConnect.MonoToolkit.LoadNativeLibraryFromDisk (System.String libraryPath) [0x00001] in <13284ac991af480facb74ab3873c80af>:0
at ScreenConnect.NativeLibrary.LoadLibrary (System.String libraryName, System.Type lookInAssemblyWithType) [0x00041] in :0
at ScreenConnect.NativeLibrary.LoadLibrary (System.Type type, System.Type lookInAssemblyWithType) [0x00008] in :0
at ScreenConnect.NativeLibrary.LoadProxy (System.Type type, System.Type lookInAssemblyWithType) [0x00010] in :0
at ScreenConnect.NativeLibrary.LoadProxy[T] (System.Type lookInAssemblyWithType) [0x00001] in :0
at ScreenConnect.MonoNative+libc..cctor () [0x0000a] in <13284ac991af480facb74ab3873c80af>:0
--- End of inner exception stack trace ---
at ScreenConnect.Program.Main (System.String[] args) [0x004a1] in :0

ConnectWise Control Version:
20.1
Server Affected:
Host Client Affected:
Guest Client Affected:

Answer

Answer

Hi Chris,

Thank you for contacting us. Please try to symlinking to resolve this error. In testing, we found it was possible to work around this error by symlinking to the necessary files in /lib/x86_64-linux-gnu:

ln -s libc-2.31.so libc.so
ln -s libdl-2-31.so libdl.so
ln -s libz.so.1.2.11 libz.so
After that's done, restart the screenconnect service, and you should be up and running.

Answer

Hi Chris,

Thank you for contacting us. Please try to symlinking to resolve this error. In testing, we found it was possible to work around this error by symlinking to the necessary files in /lib/x86_64-linux-gnu:

ln -s libc-2.31.so libc.so
ln -s libdl-2-31.so libdl.so
ln -s libz.so.1.2.11 libz.so
After that's done, restart the screenconnect service, and you should be up and running.

This does work, however it breaks compilation/linking with libc/glibc on the system, so this isn't a good solution.