Virtual Network Computing
Once you have WinVNC running on a Windows server, try connecting to it from your Linux desktop by typing (within X) the following command, followed by the password you gave when configuring WinVNC (if any):
> vncviewer vncviewer: VNC server supports protocol version 3.3 (viewer 3.3) Password: vncviewer: VNC authentication succeeded vncviewer: Desktop name "boxster" vncviewer: Connected to VNC server, using protocol version 3.3 vncviewer: VNC server default format: 16 bits per pixel. Least significant byte first in each pixel. True color: max red 31 green 63 blue 31 shift red 11 green 5 blue 0 Using default colormap and translating to BGR233 Creating window depth 8, visualid 0x22 colormap 0x21
If you typed the password correctly, several lines of information will appear and a new large window will pop up showing the entire remote Windows desktop. When you are finished using the VNC viewer, simply close the viewer's window to close the connection. The remote Windows desktop will be left in the last state the viewer left it in.
Figure 3 shows a sample Linux desktop with a newly opened VNC viewer connection “viewing” a Windows NT desktop.
A nice feature available in recent VNC releases is the ability to send the infamous ctrl-alt-del key sequence to the Windows desktop shown in a VNC viewer. This feature has distinct advantages when the VNC server is installed as a service:
If the VNC server is installed as a service under Windows NT, you don't need to have a user logged on all the time with the VNC server running as a Windows application. When it comes time to use that server remotely, simply connect to it with a VNC viewer, press ctrl-alt-del to get the NT login Window, and log on as you normally would to the NT box.
If you need to stay logged on to the NT server but want to exit your local X session, you can type ctrl-alt-del to get the “Windows NT Security” pop-up window, click on “Lock Workstation” to lock the console, close the VNC viewer connection, then exit your X session. You will still remain logged on to the NT server; its screen is now locked.
The VNC protocol has several advantages. The main one is that it is stateless. A user can close a connection to a remote desktop from one VNC viewer and later reconnect to that same remote desktop from the same or different VNC viewer, and it will be in the same state.
When using the Java VNC viewer, a system administrator can control a Windows 95/NT, Macintosh, or UNIX desktop from anywhere in the world using a Java-enabled browser. The VNC server can be configured so that all incoming viewer connections will be able to see the desktop but will not be able to move the mouse or type anything (a read-only connection). This option comes in handy in a teaching environment, where each student in a class connects to the instructor's “desktop” and watches a demonstration on his own computer rather than on an overhead connected to the instructor's computer.
At work, I have an Alpha running Digital UNIX and a P133 running Windows NT 4.0. Although I am strictly a UNIX systems administrator, my company's e-mail standard is based on Microsoft Exchange. Therefore, I am required to have a Windows desktop on my desk in order to read Exchange e-mail. However, at home I run only Linux. I was looking for a way to read my Exchange e-mail from home. After reading about VNC, I knew I had found what I was looking for.
I use the Linux VNC viewer at home to connect to the Windows NT box on my desk at work over a PPP connection. Figure 4 shows me reading my Exchange e-mail with such a setup. While VNC performance over a PPP line isn't spectacular, it is very usable and solves my problem of not being able to read Exchange e-mail from home.
Free DevOps eBooks, Videos, and more!
Regardless of where you are in your DevOps process, Linux Journal can help!
We offer here the DEFINITIVE DevOps for Dummies, a mobile Application Development Primer, and advice & help from the expert sources like:
- Linux Journal
- October 2014 Issue of Linux Journal: Embedded
- Encrypt Your Dog (Mutt and GPG)
- Practical Tiny Core in the Fire Service
- Tech Tip: Really Simple HTTP Server with Python
- DevOps for Dummies
- Python Scripts as a Replacement for Bash Utility Scripts
- New Products
- Open Axiom
- RSS Feeds
- Returning Values from Bash Functions