ubuntu 14.10 multiple Simultaneous independent remote (desktop like ) connections

60,708

Solution 1

Here are the things worked for me.. (success using this tute http://www.howtoforge.com/how-to-install-vnc-server-on-ubuntu-14.04 and kudose for Charles Tassell for right directions and advice)

What I did is as follows,

(1) run sudo apt-get update && sudo apt-get upgrade

(2)run sudo apt-get install gnome-core xfce4 vnc4server

(3)then add users (vncserver/unix)

sudo adduser test1   

(you will have to fill details afterwards for the user, I have added 3 users (test1, test2, test3 etc for vnc server)

(4)Then you have to switch users one by one and run vncserver and add password for vncuser login (I have three vnc users, so that i had to repeat this for all three user test 1, test2, test3)

su - test1

then run

vncserver

out put will be like this prompting for a vnc password..

You will require a password to access your desktops.

Password:
Verify:

xauth:  file /home/test1/.Xauthority does not exist
New 'server1:1 (test1)' desktop is server1:1
Creating default startup script /home/test1/.vnc/xstartup
Starting applications specified in /home/test1/.vnc/xstartup
Log file is /home/test1/.vnc/server1:1.log

(5) Important : you will have to replace /home/test1/.vnc/xstartup content with below (Else you will not get the desktop, instead you will stuck with blank screen without user interfaces or menus )

vim /home/test1/.vnc/xstartup

and add

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
startxfce4 &

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &

(6) startup script for the vncserver was created using "Further I will make the startup script for the vncserver like this" section of this tute

sudo vim /etc/init.d/vncserver

and add below content..

#!/bin/bash

unset VNCSERVERARGS
VNCSERVERS=""
[ -f /etc/vncserver/vncservers.conf ] && . /etc/vncserver/vncservers.conf
prog=$"VNC server"
start() {
 . /lib/lsb/init-functions
 REQ_USER=$2
 echo -n $"Starting $prog: "
 ulimit -S -c 0 >/dev/null 2>&1
 RETVAL=0
 for display in ${VNCSERVERS}
 do
 export USER="${display##*:}"
 if test -z "${REQ_USER}" -o "${REQ_USER}" == ${USER} ; then
 echo -n "${display} "
 unset BASH_ENV ENV
 DISP="${display%%:*}"
 export VNCUSERARGS="${VNCSERVERARGS[${DISP}]}"
 su ${USER} -c "cd ~${USER} && [ -f .vnc/passwd ] && vncserver :${DISP} ${VNCUSERARGS}"
 fi
 done
}
stop() {
 . /lib/lsb/init-functions
 REQ_USER=$2
 echo -n $"Shutting down VNCServer: "
 for display in ${VNCSERVERS}
 do
 export USER="${display##*:}"
 if test -z "${REQ_USER}" -o "${REQ_USER}" == ${USER} ; then
 echo -n "${display} "
 unset BASH_ENV ENV
 export USER="${display##*:}"
 su ${USER} -c "vncserver -kill :${display%%:*}" >/dev/null 2>&1
 fi
 done
 echo -e "\n"
 echo "VNCServer Stopped"
}
case "$1" in
start)
start $@
;;
stop)
stop $@
;;
restart|reload)
stop $@
sleep 3
start $@
;;
condrestart)
if [ -f /var/lock/subsys/vncserver ]; then
stop $@
sleep 3
start $@
fi
;;
status)
status Xvnc
;;
*)
echo $"Usage: $0 {start|stop|restart|condrestart|status}"
exit 1
esac

to make it an executable run the following..

chmod +x /etc/init.d/vncserver

(7) To make vnc desktop sessions allocated for users at start up automatically, create following script in /etc/vncserver

sudo mkdir -p /etc/vncserver
sudo vim /etc/vncserver/vncservers.conf

add this in vncservers.conf (this is because i have my users as test1, test2, test3 change it according to )

VNCSERVERS="3:test3 2:test2 1:test1"
VNCSERVERARGS[1]="-geometry 1024x768"
VNCSERVERARGS[2]="-geometry 1024x768"
VNCSERVERARGS[3]="-geometry 1024x768"

(8) Then run

sudo `update-rc.d vncserver defaults 99`

(9) reboot server (you are almost done by now) step 10 and the rest is how to login part

(10)download http://www.realvnc.com/download/viewer/

enter servername/ipaddress and session id for example my server is 172.16.70.17 and if i use 172.16.70.17:2 it will login to test2 user desktop.. and 172.16.70.17:3 will login to test3 user desktop like wise

make sure encryption to be selected "Prefer off"

pic

pic

Then you can access your desktop and applications in this manner..

pic

Solution 2

Oh, btw, VNC can offer multiple independent sessions, it's just a pain to setup. You basically run multiple copies of Xvnc on different ports. The issue is that there is no automatic "bounce me to the next unused desktop" option, so you need to give each user that is going to be using the system remotely their own port.

Solution 3

As an alternative to VNC, you might want to install XRDP which uses the Microsoft RDP protocol.

I've found it to be much easier to install and use, and the protocol is said to be much more efficient. However, it requires the use of Microsoft Remote Desktop client (available for Windows and Mac) or another Microsoft RDP compatible client.

This the link that was originally almost all in this answer:
http://c-nergy.be/blog/?p=5305 It's for LTS, but it should work with 14.10 as well.

However, I found it so useful, so I added some more info. Just in case the above link gets outdated, here's how to install in short:

Install XRDP

sudo apt-get install xrdp

Install the xfce4 Desktop environment

sudo apt-get install xfce4

Configure xrdp to use xfce desktop

echo xfce4-session >~/.xsession

Restart the xrdp service

sudo service xrdp restart

Now you can test your RDP connection. In your client machine, start remote Desktop client and enter the ip address/name of your ubuntu machine. You will be asked to login, and then you should see the Linux desktop.

Share:
60,708

Related videos on Youtube

Aravinda
Author by

Aravinda

Updated on September 18, 2022

Comments

  • Aravinda
    Aravinda over 1 year

    Can anyone please suggest a free server (that works just like terminal server which allows multiple rdp-like independent sessions) that is compatible for ubuntu 14.10?

    I have tried: Simultaneous remote connections

    I googled FreeNX but most of the tutorials available are not working for ubuntu 14.10 and also NOMACHINE does not allow multiple sessions.. NOMACHINE works great but restricted to only one session.. when I connect from second account it get disconnected..

    https://www.nomachine.com/AR10K00703 "NoMachine (free) allows one connection. Hence it is for individual use."

    And also I have tried http://www.xrdp.org using this tutorial https://www.youtube.com/watch?v=gFdBSyy4xcM

    It's also not working.. stuck in a blank rdp screen..

    VNC is not what I'm looking for since it cant offer independent sessions..

    Most of the tutorials are for old Ubuntu versions and not working for me Any help would be greatly appreciated!! Any basic current tutorial 14.10 or anything which shade light please!

    PS What worked ultimately was VNC

  • Aravinda
    Aravinda about 9 years
    Still could not deploy your suggestion.. I will be back and give feedback on this so that it can be helpful for some one..
  • Charles Tassell
    Charles Tassell about 9 years
    As an example, say you have three people who are going to login to the box remotely (user1, user2, user3) you could add the following lines to /etc/rc.local after creating the accounts with useradd:
  • Charles Tassell
    Charles Tassell about 9 years
    Apparently you can't press enter in the comment box... Here's the full text: As an example, say you have three people who are going to login to the box remotely (user1, user2, user3) you could add the following lines to /etc/rc.local after creating the accounts with useradd: su -c "vncserver :1 user1" ; su -c "vncserver:2" user2 ; su -c "vncserver :3" user3 ; That creates 3 unique desktops on ports 5901, 5902 and 5903
  • Aravinda
    Aravinda about 9 years
    Everything seems to be fine.. I will update the thread when i have time with what i did exactly.. hopefully nextweek.. Thanks Charles for you advice..
  • Aravinda
    Aravinda about 9 years
    updated.. and marked it as the answer so that someone can see it easily
  • realtebo
    realtebo almost 8 years
    sudo update-rc.d vncserver defaults 99 insserv: warning: script 'vncserver' missing LSB tags and overrides
  • user153245
    user153245 over 6 years
    @Aravinda, Thanks. Is it possible to set geometry settings by the user? For example user set the geometry in a file (say in .vnc folder,) then server read it from the file, instead of vncservers.conf. This way the user can set his/her preferences without needing sudo permissions. Thanks.
  • B.D.
    B.D. about 4 years
    a similar, yet more detailed answer may be found here
  • Marcel Valdez Orozco
    Marcel Valdez Orozco about 2 years
    These instructions worked almost as-is for me in Ubuntu 20.04. Main issue: vnc4server is no longer available for Ubuntu 20.04, but tigervnc-standalone-server has the same command line flags.