Start another GUI on different TTY

For some reason I want to have 2 GUIs open at different TTYs.

the commands

sudo service lightdm stop/start

will stop/create a new GUI at TTY7. but how can I do the same at different TTYs or redirect its output?


Solution 1:

  1. Press Ctrl+Alt+F1(Desired Function key) this way you will switch to another tty

  2. After logging in to this console (Entering username and password) run this command: tty this will show you the number of current tty.

  3. To start Xserver also run this command (place value of returned tty number in place of n) and for your knowledge :2 is number of the $DISPLAY instance.

    startx -display :2 -- :2 vtn &
    

    Like I'm doing this for tty1 here:

    startx -display :2 -- :2 vt1 &
    

    at this point you can launch your graphical application though you can use this alternative instead of previous command:

    xinit session -- :1 -xf86config config.conf
    
  4. Next step is running a graphical program in TTYn:(like VirtualBox in Virtual terminal n)

    Start a detached X server (again replace n with tty number like:vt1):

    sudo X -quiet -nolisten tcp -noreset :4 vtn
    
  5. Run wathever application you want like VirtualBox, for example:

    DISPLAY=:4 virtualbox &
    

Note: Don't forget the you should enter all these commands just in dedicated tty (Ctrl+Alt+F1) and not in your graphical console.

Solution 2:

I just tested the above answer in response to jasonszhao's comment that it does not work. Using Ubuntu 16.04.2 LTS there were no issues with the commands.

Note:

sudo X -quiet -nolisten tcp -noreset :4 vtn

"n" in "vtN is the tty number you want to run the graphical display. So in my case I ran

sudo X -quiet -nolisten tcp -noreset :4 vt8

to start another X session on tty8 and then I used

DISPLAY=:4 virtualbox &

to start the program I wanted to run on DISPLAY:4.