How to obtain a 2nd graphical login screen/session on the same machine

Hello everyone / Dear forum members:

still considering me as Linux newbie -- using Manjaro Deepin for 3 weeks now and having a phenomenal(!) experience with it, w/o any problems that I wasn't able to solve -- yesterday I ran into a question concerning an login effect/feature that I find quite handy but wasn't able to reproduce.

Situation: After having started up Manjaro Deepin and logged in with my <username 1> at (default) tty1, I updated the system and then switched over to tty2 (by pressing Ctrl+Alt+F2, as usual) and -- to my surprise -- a 2nd graphical Deepin login screen appeared (instead of a terminal in text mode). Therewith I was able to login to a 2nd graphical session with <username 2> and to switch between these 2 running sessions back and forth by pressing Ctrl+Alt+F1 and Ctrl+Alt+F2, respectively.
As stated above, after a system restart I wasn't able to this again -- i.e. to run 2 simultaneous GUI-based user sessions. Thus my question:

Can this behavior be reproduced somehow?
I mean, is there a key combination that I pressed unintentionally and I wasn't aware of?
Otherwise, how can I start a 2nd graphical session on tty2 (or another tty number)?

Thank you very much for any clarification and/or suggestions on this issue in advance.

You could use xrdp or xdmcp to create multiple sessions.

Deepin is currently not supported and I think your experience is caused by a glitch somehow in the deepin window manager - as you state you couldn't reproduces the behaviour.

1 Like

Here's a script I use, you can run a DE session or a single program(some anyway). I modified it to include deepin but I'm not sure if that's the correct path/name, can't find much online. So check and alter if needed.

Put it somewhere in your $PATH such as /home/$USER/.local/bin (it's in mine by default anyway) and make sure it's executable. Then login on a tty and run it like nses deepin or nses /usr/bin/something (assuming you called it nses like I did).

You can have more than 2 graphical sessions, I use the same user for both my main DE and urban terror (an FPS), and separate users if it's a different DE.

#!/bin/bash 

# Get path to session
case "$1" in 
	xfce) ses="/usr/bin/xfce4-session" ;;
	mate) ses="/usr/bin/mate-session" ;;
	urt)  ses="/opt/UrbanTerror43/Quake3-UrT.x86_64" ;; 
        deepin) ses="/usr/bin/startdde";;
	*) ses="$1" ;;   
esac

# Check it exists, exit if not
[[ ! -e $ses ]] && echo "Invalid session" && exit

# Get tty number
# Use for display number as well, easy way to avoid conflicts
ttyn=$(tty)
vtn=${ttyn#*tty}

# startx /path/to/session -- :DISPLAYNUM vtn  (vtn = vt folowed by ttynumber)
startx "$ses" -- :$vtn vt$vtn

@linux-aarhus and @drunkenmonkey: Thank you both very much for your quick support.

I've tried out the bash script provided by @drunkenmonkey and in the case of Deepin it worked instantly and nearly 100% -- nearly perfect because it starts the DDE GUI w/o problems BUT, for some inexplicable reasons, some of the dock icons do NOT react to a mouse click -- e.g. the Deepin "Start Menu", "Time/Calendar" and "Power On/Off" do NOT react at all. In consequence of the last-mentioned button I cannot logout from the just started DDE session (have to terminate it from my 1st regular DE session in tty1 via 'loginctl terminate-session ').

Possible SOLUTION: During my several respective tryouts I finally found a built-in method (an undocumented one???) to start a 2nd graphical session for a username distinct to the one already logged in to tty1. For me it works as follows:

  1. Log in with <user 1> as usual. This will start a DE session at tty1 (Ctrl+Alt+F1).
  2. In this 1st session, press "Power On/Off" button and then "Switch User" icon.
    On the appearing login screen select <user 2> and before typing in his/her password press Ctrl+Alt+F2. If you now type in the correct password for <user 2>, you get logged in to tty2 in graphical mode.
  3. Now, you can switch back and forth between the 2 graphical sessions via Ctrl+Alt+F1 and Ctrl+Alt+F2, respectively.

EXPERIENCED "LOGIN RULES":

  1. with 2 created users you only have tty1 and tty2 available for graphical login AND tty2 only can be assigned if tty1 already is used by another user. Trying to specify tty3 through tty6 as "session target" does not work because in these cases the it switches immediately to the respective tty and shows its text mode.
    I don't know if tty3 comes into play if you have 3 users created in your system -- haven't tried it out yet.

  2. The 2nd DDE session only works for a DIFFERENT user as <user 1> (the one logged in to tty1). Otherwise, the system immediately switches over to the tty number where this user is already logged in.

  3. As already indicated in rule 1, tty1 (the default one) has to be already user by a user before you can assign a 2nd user to tty2.
    I.e., if you boot up Manjaro and try to start your first DDE session on tty2 (by pressing Ctrl+Alt+F2 before entering the password), the system directly switches over to tty2 but in text mode. Consequence: you first have to log in to tty1 with <user 1> for being able to use a 2nd DDE session with another user identity at tty2.

I hope that these experiences made with this issue are also valuable for other Manjaro Deepin users that occasionally want to use 2 simultaneous DDE logins.

1 Like

Beaten by a :bug: :frowning: not even a :heart: :sob: :grin:

You are using a different user aren't you? I presume so. Sounds like deepin is pretty buggy. Maybe restarting the dock might help. Ctrl + Alt + Backspace to kill the x server if it locks up.

Never heard of anything that has that feature before. Is it a feature, or a :bug:?

I currently have mate on tty7 (default gui tty on mate, and xfce) cinnamon on tty4, xcfe on tty3, and urban terror on tty2 (mate and urt under my main user and cinnamon and xfce under another). They all run fine without issues, I don't run all of them often though so YMMV.

The script is here for anyone who doesn't use deepin (or doesn't want two of the same thing), or for when you choose to get rid of the :bug: deepin :bug: :grin:

You are using a different user aren't you? I presume so.

Yep, two different users -- well, in reality same physical user but 2 different user identities :slightly_smiling_face:

Background: Nowadays in "home office" (i.e. "tele office") times I wanted to run two graphical sessions, one for "business issues" and the other for "private ones", both clearly separated from one another but quickly accessible by a keyboard shortcut.

  • Running your bash script with the same user on a different tty results in a black screen which I have to terminate from within tty1 (the default one).

  • Whereas running your script on tty2 (through tty6) starts the Deepin DE but, as stated in my previous post, with some icons not working. Then restarting the DE via Ctrl + Alt + Backspace (following your tryout suggestion) terminated the Xserver and printed some errors on the tty2 screen (due to underlying misconfigurations, I guess). The first one being (manually typewritten from the screen because they do NOT appear in the mentioned log file "/var/log/Xorg.2.log"):

    [...]
    (==) Log file: "/var/log/Xorg.2.log", Time [...]
    (==) Using config directory "/etc/X11/xorg.conf.d"
    (==) Using system config directory "/usr/share/X11/xorg.conf.d
    The XKEYBOARD keymap compiler (xkbcomp) reports:
     > Internal error: Could not resolve keysym XF86FullScreen
          Errors from the xkbcomp are not fatal to the X server
              <info> manager.go:630: [updateMonitors] add monitor: DVI-I-2 00 1920 1200
                   No xresources [...]
    [...]

So I'll have to learn/read more about the system-foundational components to really understand what's going on under the hood.

For the coming days I'll be using my found Deepin "hack" ("feature", ... or whatever it is) to login with a 2nd graphical session.

1 Like

Fair enough, I wasn't suggesting you try to troubleshoot it, except maybe restart the dock to see if it will start working.

I was just pointing out that this is a limited solution that will not work or be suitable for all. If it isn't intentional then it may stop working too. However for your purposes it's clearly the best option and fits your use case quite nicely. :smile:

Whilst the script should work for most systems and is more versatile.

That key combo kills the x server, so there will be errors about stuff not being available etc as things won't shut down gracefully. I missed the bit about loginctl :man_facepalming: , I'd forgotten about that since logging out normally works for me I have no need for it, that will be best way.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.

Forum kindly sponsored by