The following instructions show how our research team setup Remote display from Linux machines which doesn’t have a real physical display!!!
We are using BeagleBoard, BeagleBone and other Linux friendly boards. In many cases there wont be any display attached to these boards, but still want to run and debug complex image processing algorithms in it. So a remote display can be used, instead of the real physical one, so that any host system running Windows or Linux can be used to view the remote display. This tutorial can even be used for any Linux based Desktop distros. Both the target and host should be connected through LAN or WAN.
First we would need to install following packages in our target machine(from where display is needed). It can be any Linux distro which provides the following packages namely.
We have tested it with BeagleBoards, running Ubuntu 12.04, Arch Linux, and Desktops running Ubuntu 12.04, Linux Mint 15.
Sorry Angstrom users, a package called xvfb cant be find in its repository, so the method probably doesnt work in Angstrom Linux. If there is another way please notify us and we will update the post accordingly.
So Ubuntu users run the following commands
sudo apt-get update
sudo apt-get install x11vnc xvfb
Arch Linux users run the following commands
pacman -S x11vnc xorg-server-xvfb
Now we want to set the remote desktop server in our target machine.
Find the ip-address of the host machine by ifconfig.
optionally add a secure password to the session
x11vnc -display :0 -forever -create
This will create a PORT to open the remote display. The default port is 5900.
In host system install a freesoftware called “TightVNC”.
For windows users get the installer from here. Run TightVNC Viewer application and specify the <target ip>:<port>
Ubuntu and Mint users do sudo apt-get install xtightvncviewer
Then run vncviewer <ip>:<port> // eg: vncviewer 192.168.1.66:5900
Now you can see a display from target machine which is opened in vncviewer. The terminal opened inside the vncviewer can be used to run image processing algorithms, or capture and display images from Camera using no physical display!!!