Setting up GUI Desktop on a VM
This is not a complete article: This is a Draft, a work in progress that is intended to be published into an article, which may or may not be ready for inclusion in the main wiki. It should not necessarily be considered factual or authoritative.
These instructions are for the Ubuntu operating system:
- install MATE
[name@server ~]$ sudo apt update [name@server ~]$ sudo apt upgrade -y [name@server ~]$ sudo apt install ubuntu-mate-desktop
During the installation of the
ubuntu-mate-desktoppackage it will ask you to choose the default display manager, a good option is
lightdm. Installing the
ubuntu-mate-desktoppackage can take a fair amount of itme (maybe something like 15-30 mins?).
- install tightvncserver
[name@server ~]$ sudo apt install tightvncserver
For details about using VNC servers and clients see our docs on VNC.
- configuring tightvncserver
[name@server ~]$ vncserver -> enter a password -> enter "n" for view-only password
vncpasswdcommand can be used to change your password later.
- Open port
5901and test connection (see OpenStack#Security_Groups security groups for more information about opening ports to your VMs with OpenStack). However, this is not secure as the data sent to and from your VM will not be encrypted.
- Connect using an SSH tunnel (see SSH_tunnelling). There is an example of creating an SSH tunnel to a VNC server running on a compute node of one of our clusters here: VNC#Compute_Nodes.
- Instructions for connecting using an SSH tunnel for linux or mac:
- Open your terminal
- type the following: SSH -i filepathtoyoursshkey/sshprivatekeyfile.key -L5901:localhost:5901 ubuntu@ipaddressofyourVM
- Download and run the latest tigerVNC-x.y.z.dmg package installer. Configure the default viewer settings by clicking the desktop TigerVNC Viewer icon. In the "VNC Viewer: Connection Details" window that appears click "Options -> Security" then tick all boxes. To save the settings click OK and then click Connect. If Connect is not clicked, the settings will not be saved.
- open the tigervnc viewer application and in the VNC server field enter: localhost:5901.
- your GUI desktop for your remote session should now open
- Close port 5901. Once you are connected to your VNC server using an SSH tunnel, you no longer require port 5901 open so it is recommended that you remove this rule from your security groups. (see OpenStack#Security_Groups security groups for more information).
- To stop the vncserver
[name@server ~]$ vncserver -kill :1