Why does starting multiple ThinLinc sessions as the same user sometimes fail?

One feature of ThinLinc is the ability to start and manage multiple sessions as the same user. When logging in with the native client, if you already have one or more existing sessions on the server, then you have the option of reconnecting to an existing session, or starting a new one. As an administrator, you have the ability to restrict your users to a maximum number of concurrent sessions.

If ThinLinc is installed in a cluster configuration, a user with multiple sessions may find that each one resides on a different server. If ThinLinc is installed on a single server, however, all a user’s sessions will share the same system.

Some Linux distributions and desktop environments (DEs) are unfortunately not well-suited to running multiple graphical sessions as the same user. They expect each user to have a maximum of one such session and, while they do not explicitly forbid it, creating additional sessions on the same system may fail. This can result in a ThinLinc user being unable to log in without ending their existing session first.

This behaviour appears to be getting more common as distributions and desktop environments mature. Initially, this limitation was most commonly encountered when using compositing desktop environments such as GNOME 3 or KDE Plasma. However, we are now seeing it more often in “lightweight” DEs too, such as XFCE and MATE. Some of these limitations also appear at operating system level, and will therefore occur regardless of which DE you happen to be using.

Examples of such limitations are: processes competing for the same file lock, processes competing for the same D-Bus name, or system-level limitations on the number of open file handles per user. If you suspect that you or your users are being affected by such limitations, it may help to look in the session log file at /var/opt/thinlinc/sessions/<user>/last/xinit.log on the ThinLinc server, immediately after failing to create a new session.

Because these limitations lie outside of ThinLinc itself, in most cases it is not possible for us to work around them. If the issue is a system-level limitation then it may be possible to increase this limit. However, in the case of a DE’s inability to handle multiple sessions per user, the solution may be to simply find one which can. You could also try to manage your (or your users’) workflow so that they do not require multiple sessions, or report a bug against the DE or distribution in question.

If you have any experience with using multiple sessions per user on different distributions, desktop environments, and versions thereof, please feel free to share below.


For more information on ThinLinc’s multiple session handling, see TAG Chapter 7.  The ThinLinc Client

For more information on session startup, and configuring available profiles in ThinLinc, see TAG chapter 14.4.  Customizing the User's Session

2 Likes