Ubuntu lets you share your desktop with remote computers. From the Gnome control panel, select System | Preferences | Remote Desktop. Then access the machine from any VNC client, such as Vinagre (Applications | Internet | Remote Desktop Viewer).

But it didn’t work for me initially, although VNC has been around for years and runs on just about every platform. The symptom was that I could log in but then the desktop appeared frozen, and nothing happened when I pressed the keyboard or mouse.

The problem appears to have been the Nvidia binary drivers on the computer sharing its display. My graphics card used an onboard Nvidia 6150SE chipset. Ubuntu had installed the 173 series drivers, which are older than the ones issued for most of its recent graphic cards. If I watched the monitor connected to that machine instead of the one on the remote computer, I could see that the keyboard and mouse actions were getting through. The inputs for the connection were obviously working; the remote display wasn’t.

A few Google searches later, I’d found the problem and the fix. It appears related to this bug logged against Ubuntu 9.10, and from my experience I’d say it’s still present in Ubuntu 10.04, at least for old chipsets.

The workaround is to disable the fancy Visual Effects on the server. Again, from the Gnome control panel, select System | Preference | Appearance | Visual Effects, and select None.

Turn off Visual Effects if your desktop is invisible to a remote VNC client

Now you can connect remotely, at the cost of slower performance locally. If you’re not satisfied with the display speed, you might want to look at replacing Nvidia’s proprietary drivers with the Nouveau open source drivers.