How do I... run Linux/UNIX clients on Windows with XWin32 Live?

Jack Wallen wrote previously about how you can open (and use) Linux applications in Windows using a combination of PuTTY and XWin32. He is happy to report that XWin32 Live reduces previous complications with this application.

Recently I wrote about how you can open (and use) Linux applications in Windows using a combination of PuTTY and XWin32. This system was fairly easy but a bit cumbersome. With a recent update to XWin32 Live, PuTTY has been removed from the equation and the setup/use is now easier than ever.

How XWin32 Live makes this easier is with the simple integration of PuTTY into XWin32. And it's not just easier now -- it's also cleaner. Gone is the unsightly (and unwieldy at times) full-screen gray X Windows box that had to remain open during your session. Now everything is packed tightly into one small window.

Let's take a look at how this is done.

This blog post is also available in PDF format in a TechRepublic download.

Getting and installing

To get the latest XWin32 Live download, head over to the download page on StarNet and download the file that fits your version of Windows. Once the file is downloaded, install it by double-clicking the icon.

Running XWin32 Live

Now that XWin32 Live is installed, you need to first run the X-Config application from the XWin32 X.X menu on the Start menu (where X.X is the release number). When you open this window, you will be greeted by the main configuration window (Figure A) that contains everything you need to get your XWin32 instance set up.

Figure A

Here you see a session already set up (monkeypantz), which was quickly created using the Wizard.
The first thing you need to do is click on the Wizard button. This wizard will walk you through the setup of your XWin32 session. The first step in the Wizard is to select the session type and give the session a name (Figure B). Select SSH and enter a name for the session.

Figure B

In order to use the Live session type, you must have the Live server set up on your Linux machine.

Once you have completed this step, click Next.

The second step is to enter the host you will be connecting to (Figure C.) This can be either an FQDN or an IP address. Once you have completed this step, click Next to move on.

Figure C

When using SSH, the SSH daemon must be running on the host machine.
The third step is to enter the username and password you will use to connect with (Figure D). This username and password must be a valid username/password combination that exists on the host machine. Once you have completed this step, click Next.

Figure D

If you allow root ssh login, you can use the root user -- but I wouldn't suggest it.
The final step in the configuration is to select the command to run on the remote host (Figure E). Now don't worry, you don't have to know the actual Linux command. In fact, all you need to do is select from the list. Select Linux (unless you know you are connecting to a different type of machine that requires a different terminal listing command or the addition of X auth). Once you have completed this configuration, click Finish and you're ready to start a session.

Figure E

As you click on each type, the command will appear in the Command line. Or you can just enter the command manually.

Starting an XWin32 Live session

Once you have finalized your configuration, you will notice the XWin32 Live Icon in the System Tray (Figure F). If you right-click on that icon, you will notice a "My Session" entry in the menu. Click on that to reveal the configured sessions you have. Select the session you want to connect to and fairly quickly that X session will connect. The only thing you will see is the equivalent of the Windows command window (Figure F) and a message window telling you the session has successfully connected (Figure G).

Figure F

This window is actually an Aterm instance running in the Windows command window.

Figure G

You can safely close this window once you have connected.
Once you are connected, you can issue the command to run the Linux application you want to run. As you can see in Figure H, I have Konqueror running in Windows XP. Konqueror runs exactly as it would in Linux (with the exception that Konqueror cannot, through XWin32, copy or move files from the host to the client).

Figure H

You can navigate around the Linux system, and you can move files from one location on the host to another (just not from host to client).

Once you close the XWin32 session and the XWin32 icon is no longer in the System Tray, you will need to go back to the Start Menu, open the X-Win X.X submenu, and select X-Win32 to place the start-up icon back in the System Tray.

Other configuration options

There are a number of other configuration options in the X-Config window. In the Security tab you will notice a section for Allow By XAuth Cookie and Allow By Address. If you choose to use Allow By XAuth Cookie, you will need to import the ~/.Xauthority binary file from the Linux host to the Windows client machine. Once using this, you will be sure that only connections to machines that match that cookie will be allowed. The same thing, in a simpler manner, is enabled when you configure XWin32 to connect to only specific hosts.

Final thoughts

StartNet has made tunneling Linux/UNIX applications onto Windows machines even easier. Gone is the clutter of the unsightly X Windows screen as well as the need for a separate SSH client. So if you have a need to run Linux/UNIX applications on your Windows machine, this is truly the best option.