Could not connect to session bus

I use Open Ondemand v2.0.20 on our cluster system. The CPU of the compute node is an ARM architecture. I create a Singularity image for ARM and install it Mate Desktop, and register it as an interactive app.

A strange phenomenon occurred. If I SSH login to a compute node, the Mate Desktop works fine on that compute node. However, when I do not SSH login to a compute node, I get the following error message:

Could not connect to session bus: Failed to connect to socket /run/user/1015/bus: No such file or directory

Of cause, the Mate Desktop is executed by Open Ondemand. Through ssh, I’m not doing anything. I’m just logged in.

I compare the results in output.log with and without success. The following line of bc_desktop/template/desktops/mate.sh was causing an error.

# Run Mate Terminal as login shell (sets proper TERM)
dconf write /org/mate/terminal/profiles/default/login-shell true

if I do not SSH login to the compute node, the above line output the error message “error: Could not connect: No such file or directory”.

I read Launch Desktop issue: Could not connect to session bus - #3 by jimcost. But I do not install conda.

Could you give me some advice?

Best regards,

Perhaps, I solve this problem.

The cause of the problem was that the /run/user/${UID} directory was missing. This directory is usually created when the user logs in. To be precise, it is created by pam_systemd at the start of a user session. However, this directory was not created in my environment when running a process via slurm.

I referred to Re: /run/user/$UID not created and solved the problem.

I write the following in prolog of slurm.

loginctl enable-linger $ SLURM_JOB_USER

And write the following in epilog of slurm.

loginctl disable-linger $SLURM_JOB_USER

Thanks,

Hi Masahiro.

Thank you for posting this information. This is very helpful.

-gerald