VNC stands for Virtual Network Computing. It is remote control software which allows you to view and interact with one computer (the "server") using a simple program (the "viewer") on another computer anywhere on the Internet. The two computers don't even have to be the same type, so for example you can use VNC to view an office Linux machine on your Windows PC at home.
VNC comes to us from http://www.realvnc.com. Documentation is available at that site. You might like to start by reading a basic introduction to VNC and how it can be used.
VNC is already installed on our Unix servers. Each Windows or Mac user must install the software on their machine.
Documentation is provided at the web sites and with the applications. Here's the short form of the instructions. Which you'll need will depend on what role you are using (server or viewer) and whether you are on Unix, Windows or a Macintosh.
A VNC server is software running on a machine which copies a window (i.e. on a Mac or Windows, your entire screen) to a set of viewers somewhere on the net. A viewer is software running on the machine at your desk that displays the window of what is happening on the server. Every viewer, whether it is a Unix, Windows or Macintosh sees the same window -- on the server. If you are on a Windows machine and SSH to a Unix machine and start a server on the Unix machine, the server is not displaying a window from your Windows machine. In this example the server is only running Unix applications and application can only use Unix data.
Even if many people type in their viewer, ,the application they are really using is on the server. This means if the server is a Windows machine and you on a Macintosh select Word from the menu, you only have access to the files on that Windows machine. You should not expect to see your Macintosh files.
Most of the time, you will only use the VNC viewer. Exactly how this behaves depends on what machine you have at your desk. Viewers come in two modes:
This is the easiest part of the process. The model is a telephone conference call. The conference is set up (a server is started on a Unix machine) and you simply connect to the server.
You must know the name and display number of the server as well as the password. The answer to the prompt will often be 'mars.sph.umich.edu:1' or 'compute11.sph.umich.edu:1'. Note the ':1' -- it's important. No other number will work.
There are ways to control these two behaviors. Read how to share nicely.
This part is very easy for the viewer -- just start VNC up in 'listen mode'. You, the viewer, are not prompted for anything, as the server must contact you. This means you must tell the person running the server what your hostname (or IP address is), a real inconvenience to set up if there is more than one viewer involved. Here is one way you can figure out the name of your Windows or Macintosh computer.
We have a pre-defined VNC SERVER that we can all use on mars. The process for STARTING the server is simply:
This will automatically start vncserver on mars running under your uniqname and with your AFS tokens. Of course this means you must have an account on mars. When you enter Control-C to stop the brinupvnc.sh command, a second command is run on mars to terminate the VNC server. Only ONE server may run, so we must share. If this becomes a problem, I can set up another one of these.
Everyone else connects to this server as usual - use your VNC viewer to connect to 'mars.sph.umich.edu:1'. As usual, the person who started the server will tell the viewers the password.
Initially you'll see only one xterm window. Use the left mouse to launch applications - including the current set of Office-like apps like OpenOffice, Kword etc. There are a variety of possibly useful applications which can be changed with little effort.
I've tailored this for what a Windows user will likely prefer:
There might be a valid reason why VNC defaults to non-share mode (i.e. kick everyone off because you connect), but for our environment it is just plain dumb. Unfortunately, we cannot control this at installation time and even if you set 'share' in the options window, it is not remembered. This is very frustrating.
Not to worry, we have a work around. The key is to modify your Windows icon for the viewer and slightly change how the program is invoked. Sorry, Macintosh users, we have no documentation about how you might do this. The one-time steps are:
At this point your icon is set up to automatically bring up the VNC viewer in shared mode (you DID add this, didn't you?) and possibly viewonly mode (if you added this). The world rejoices.
In theory you can ask your Windows or Macintosh, but this is often far harder than it should be. Many times your IP address changes each time you boot up your machine, so it is pretty common for non-Unix users to not know the name of their machine. Here's a quick and dirty hack to figure out your machine name: