<div dir="auto">Ok I'll check firewalld but does this error help? Note the path has lib64:<div dir="auto"><div dir="auto">/usr/lib64/x2go/x2gogetfreeport $(hostname) "$(which ss)" display 50</div><div dir="auto">/usr/lib64/x2go/x2gocheckport: line 131: connect('dbname=/var/lib/x2go/x2go_sessions','',...): syntax error in expression (error token is "('dbname=/var/lib/x2go/x2go_sessions','',...)")</div><div dir="auto">50</div></div><div dir="auto"><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jan 25, 2021, 5:49 PM Ulrich Sibiller <<a href="mailto:ulrich.sibiller@gmail.com">ulrich.sibiller@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Well, here's the code producing that output:<br>
<br>
typeset -i retry='0'<br>
typeset -i max_retry='10'<br>
typeset output=''<br>
for ((retry = 0; retry < max_retry; ++retry)); do<br>
        typeset -i free_port="${X2GO_PORT}"<br>
        if free_port="$("${X2GO_LIB_PATH}/x2gogetfreeport"<br>
"${current_host_name}" "${ss}" 'display' "${X2GO_PORT}")"; then<br>
                X2GO_PORT="${free_port}"<br>
<br>
                if [[ -n "${SHADREQ_USER}" ]]; then<br>
<br>
SESSION_NAME="${SHADREQ_USER}-${X2GO_PORT}-$(date '+%s')"<br>
                else<br>
                        SESSION_NAME="${USER}-${X2GO_PORT}-$(date '+%s')"<br>
                fi<br>
                if [[ -n "${COLORDEPTH}" ]]; then<br>
<br>
SESSION_NAME="${SESSION_NAME}_st${SESSION_TYPE}${X2GO_CMD}_dp${COLORDEPTH}"<br>
                        SESSION_NAME="${SESSION_NAME//:/PP}"<br>
                fi<br>
<br>
                # sanitize session name<br>
                SESSION_NAME="$(perl -pe 's/[^a-zA-Z0-9\.\_\-\@]//g'<br>
<<< "${SESSION_NAME}")"<br>
<br>
                if [[ -n "${SHADREQ_USER}" ]]; then<br>
                        "${X2GO_LIB_PATH}/x2gosyslog" "${0}" 'debug'<br>
"initializing new shadow session with ID ${SESSION_NAME}"<br>
<br>
output="$("${X2GO_LIB_PATH}/x2goinsertshadowsession" "${X2GO_PORT}"<br>
"${current_host_name}" "${SESSION_NAME}" "${SHADREQ_USER}")"<br>
                else<br>
                        "${X2GO_LIB_PATH}/x2gosyslog" "${0}" 'debug'<br>
"initializing new session with ID ${SESSION_NAME}"<br>
                        output="$("${X2GO_LIB_PATH}/x2goinsertsession"<br>
"${X2GO_PORT}" "${current_host_name}" "${SESSION_NAME}")"<br>
                fi<br>
<br>
                if [[ "${output}" = 'inserted' ]]; then<br>
                        break<br>
                else<br>
                        "${X2GO_LIB_PATH}/x2gosyslog" "${0}" 'warning'<br>
"unable to insert display port into database. Retrying (run $((retry +<br>
1)))."<br>
                fi<br>
        else<br>
                "${X2GO_LIB_PATH}/x2gosyslog" "${0}" 'warning' "no<br>
free display number available, cannot start new session. Retrying (run<br>
$((retry + 1)))."<br>
        fi<br>
done<br>
<br>
if [[ "${output}" != 'inserted' ]]; then<br>
        typeset msg="Unable to find free display port or insert new<br>
session into database; parameters: port (${X2GO_PORT}), hostname<br>
(${current_host_name}) and session name (${SESSION_NAME})."<br>
        "${X2GO_LIB_PATH}/x2gosyslog" "${0}" 'err' "${msg}"<br>
<br>
        # Make x2goclient fail.<br>
        echo "${msg}" >&2<br>
        exit '10'<br>
fi<br>
<br>
<br>
This boils down to<br>
<br>
for ((retry = 0; retry < max_retry; ++retry)); do<br>
        typeset -i free_port="${X2GO_PORT}"<br>
        if free_port="$("${X2GO_LIB_PATH}/x2gogetfreeport"<br>
"${current_host_name}" "${ss}" 'display' "${X2GO_PORT}")"; then<br>
...<br>
       else<br>
                "${X2GO_LIB_PATH}/x2gosyslog" "${0}" 'warning' "no<br>
free display number available, cannot start new session. Retrying (run<br>
$((retry + 1)))."<br>
        fi<br>
done<br>
<br>
-> as you can see x2gofreeport does not seem to report the port as<br>
free. You can try this manually:<br>
<br>
/usr/lib/x2go/x2gogetfreeport $(hostname) "$(which ss)" display 50<br>
<br>
If that will output a free port x2go should generally work. If not,<br>
you still have something running and blocking these ports. You can<br>
check with lsof -i :6050 and you will see who is blocking the first<br>
checked port.<br>
<br>
You can also run the x2gogefreeport with bash -x:<br>
bash -x /usr/lib/x2go/x2gogetfreeport $(hostname) "$(which ss)" display 50<br>
<br>
and see what going on.<br>
<br>
Hope that helps,<br>
<br>
Uli<br>
<br>
<br>
<br>
<br>
On Mon, Jan 25, 2021 at 8:50 PM Robert Kudyba <<a href="mailto:rkudyba@fordham.edu" target="_blank" rel="noreferrer">rkudyba@fordham.edu</a>> wrote:<br>
><br>
> I posted a similar issue back in Nov, 2020 at <a href="https://www.mail-archive.com/x2go-dev@lists.x2go.org/msg06284.html" rel="noreferrer noreferrer" target="_blank">https://www.mail-archive.com/x2go-dev@lists.x2go.org/msg06284.html</a><br>
><br>
> rpm -qa|grep -i x2go<br>
> x2goclient-4.1.2.2-3.fc33.x86_64<br>
> x2goserver-common-4.1.0.3-9.fc33.noarch<br>
> perl-X2Go-Server-4.1.0.3-9.fc33.noarch<br>
> perl-X2Go-Log-4.1.0.3-9.fc33.noarch<br>
> perl-X2Go-Server-DB-4.1.0.3-9.fc33.x86_64<br>
> x2goagent-4.1.0.3-9.fc33.x86_64<br>
> x2goserver-xsession-4.1.0.3-9.fc33.noarch<br>
> x2goserver-4.1.0.3-9.fc33.x86_64<br>
><br>
> nxagent -display :55<br>
> NXAGENT - Version 3.5.99.25<br>
><br>
> Jan 25 14:14:29 pascal /usr/bin/x2gostartagent[39654]: no free display number available, cannot start new session. Retrying (run 1).<br>
> Jan 25 14:14:30 pascal /usr/bin/x2gostartagent[39663]: no free display number available, cannot start new session. Retrying (run 2).<br>
> Jan 25 14:14:30 pascal /usr/bin/x2gostartagent[39672]: no free display number available, cannot start new session. Retrying (run 3).<br>
> Jan 25 14:14:30 pascal /usr/bin/x2gostartagent[39681]: no free display number available, cannot start new session. Retrying (run 4).<br>
> Jan 25 14:14:30 pascal /usr/bin/x2gostartagent[39690]: no free display number available, cannot start new session. Retrying (run 5).<br>
> Jan 25 14:14:30 pascal /usr/bin/x2gostartagent[39699]: no free display number available, cannot start new session. Retrying (run 6).<br>
> Jan 25 14:14:30 pascal /usr/bin/x2gostartagent[39708]: no free display number available, cannot start new session. Retrying (run 7).<br>
> Jan 25 14:14:30 pascal /usr/bin/x2gostartagent[39717]: no free display number available, cannot start new session. Retrying (run 8).<br>
> Jan 25 14:14:31 pascal /usr/bin/x2gostartagent[39726]: no free display number available, cannot start new session. Retrying (run 9).<br>
> Jan 25 14:14:31 pascal /usr/bin/x2gostartagent[39736]: no free display number available, cannot start new session. Retrying (run 10).<br>
> Jan 25 14:14:31 pascal /usr/bin/x2gostartagent[39737]: Unable to find free display port or insert new session into database; parameters: port (50), hostname (<a href="http://pascal.dsm.fordham.edu" rel="noreferrer noreferrer" target="_blank">pascal.dsm.fordham.edu</a>) and session name ().<br>
> Jan 25 14:14:31 pascal kernel: kauditd_printk_skb: 21 callbacks suppressed<br>
><br>
> Let me to <a href="https://unix.stackexchange.com/questions/467507/x2go-unable-to-find-free-display-port-or-insert-new-session-into-database" rel="noreferrer noreferrer" target="_blank">https://unix.stackexchange.com/questions/467507/x2go-unable-to-find-free-display-port-or-insert-new-session-into-database</a> so I ran x2godbadmin --createdb<br>
><br>
> Then I tried with another use and got:<br>
> Connection failed.<br>
> /usr/lib64/x2go/x2gocheckport: line 131: connect('dbname=/var/lib/x2go/x2go_sessions','',...): syntax error in expression (error token is "('dbname=/var/lib/x2go/x2go_sessions','',...)")<br>
> /usr/lib64/x2go/x2gocheckport: line 131: connect('dbname=/var/lib/x2go/x2go_sessions','',...): syntax error in expression (error token is "('dbname=/var/lib/x2go/x2go_sessions','',...)")<br>
> /usr/lib64/x2go/x2gocheckport: line 131: connect('dbname=/var/lib/x2go/x2go_sessions','',...): syntax error in expression (error token is "('dbname=/var/lib/x2go/x2go_sessions','',...)")<br>
> /usr/lib64/x2go/x2gocheckport: line 131: connect('dbname=/var/lib/x2go/x2go_sessions','',...): syntax error in expression (error token is "('dbname=/var/lib/x2go/x2go_sessions','',...)")<br>
> /usr/lib64/x2go/x2gocheckport: line 131: connect('dbname=/var/lib/x2go/x2go_sessions','',...): syntax error in expression (error token is "('dbname=/var/lib/x2go/x2go_sessions','',...)")<br>
> /usr/lib64/x2go/x2gocheckport: line 131: connect('dbname=/var/lib/x2go/x2go_sessions','',...): syntax error in expression (error token is "('dbname=/var/lib/x2go/x2go_sessions','',...)")<br>
> /usr/lib64/x2go/x2gocheckport: line 131: connect('dbname=/var/lib/x2go/x2go_sessions','',...): syntax error in expression (error token is "('dbname=/var/lib/x2go/x2go_sessions','',...)")<br>
> /usr/lib64/x2go/x2gocheckport: line 131: connect('dbname=/var/lib/x2go/x2go_sessions','',...): syntax error in expression (error token is "('dbname=/var/lib/x2go/x2go_sessions','',...)")<br>
> /usr/lib64/x2go/x2gocheckport: line 131: connect('dbname=/var/lib/x2go/x2go_sessions','',...): syntax error in expression (error token is "('dbname=/var/lib/x2go/x2go_sessions','',...)")<br>
> /usr/lib64/x2go/x2gocheckport: line 131: connect('dbname=/var/lib/x2go/x2go_sessions','',...): syntax error in expression (error token is "('dbname=/var/lib/x2go/x2go_sessions','',...)")<br>
> Unable to find free display port or insert new session into database; parameters: port (50), hostname (<a href="http://oudomain.edu" rel="noreferrer noreferrer" target="_blank">oudomain.edu</a>) and session name ().<br>
><br>
> How does one start X2Go Windows with debug enabled? I only found for Mac you can add the --debug flag.<br>
><br>
> My colleague also had this error:<br>
><br>
><br>
> XSession-x2go: X session started for moniot at Mon Jan 25 09:01:13 EST 2021<br>
> ** Message: 09:01:15.605: couldn't access control socket: /run/user/1200/keyring/control: No such file or directory<br>
> SSH_AUTH_SOCK=/run/user/1200/keyring/ssh<br>
><br>
> ** (mate-settings-daemon:1436112): WARNING **: 09:01:16.172: Could not open RFKILL control device, please verify your installation<br>
> SSH_AUTH_SOCK=/run/user/1200/keyring/ssh<br>
> SSH_AUTH_SOCK=/run/user/1200/keyring/ssh<br>
> vmware-user: could not open /proc/fs/vmblock/dev<br>
> Error: /usr/bin/vmtoolsd must be run inside a virtual machine on a VMware hypervisor product.<br>
> SSH_AUTH_SOCK=/run/user/1200/keyring/ssh<br>
><br>
> (caja:1436133): Gtk-WARNING **: 09:01:17.552: Failed to register client: GDBus.Error:org.gnome.SessionManager.AlreadyRegistered: Unable to register client<br>
> *** ERROR ***<br>
> TI:09:01:17     TH:0x56299587f960       FI:gpm-manager.c        FN:gpm_manager_systemd_inhibit,1786<br>
>  - Error in dbus - GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: Permission denied<br>
> Traceback:<br>
>         mate-power-manager(+0x1d474) [0x562995487474]<br>
>         mate-power-manager(+0x136ab) [0x56299547d6ab]<br>
>         /lib64/libgobject-2.0.so.0(g_type_create_instance+0x248) [0x7f04c0b72498]<br>
>         /lib64/libgobject-2.0.so.0(+0x19205) [0x7f04c0b58205]<br>
>         /lib64/libgobject-2.0.so.0(g_object_new_with_properties+0x1dd) [0x7f04c0b596ad]<br>
>         /lib64/libgobject-2.0.so.0(g_object_new+0xc1) [0x7f04c0b5a331]<br>
>         mate-power-manager(+0x15f16) [0x56299547ff16]<br>
>         mate-power-manager(+0xb20a) [0x56299547520a]<br>
>         /lib64/libc.so.6(__libc_start_main+0xf2) [0x7f04c0708082]<br>
>         mate-power-manager(+0xb58e) [0x56299547558e]<br>
> Failure: Module initialization failed<br>
> SELinux Troubleshooter: Applet requires SELinux be enabled to run<br>
> Initializing caja-open-terminal extension<br>
> Initializing caja-xattr-tags extension<br>
> Initializing caja-image-converter extension<br>
> ICE default IO error handler doing an exit(), pid = 1436318, errno = 32<br>
><br>
> (mate-settings-daemon:1436112): GLib-GIO-WARNING **: 09:02:44.229: Error releasing name org.mate.SettingsDaemon.Rfkill: The connection is closed<br>
> [1611583276,000,xklavier.c:xkl_engine_start_listen/]    The backend does not require manual layout management - but it is provided by the application<br>
><br>
><br>
><br>
</blockquote></div>