Linux optimize

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.

About

Jack Wallen is an award-winning writer for TechRepublic and Linux.com. He’s an avid promoter of open source and the voice of The Android Expert. For more news about Jack Wallen, visit his website getjackd.net.

5 comments
pgit
pgit

This is good news, I have wondered for years why this was such a complicated mess. Now if you do want to move files between the client and host you can do this with ssh-fuse. (the sshfs) The way it would work if you're sitting at the windows machine would be log in as the article states, then initiate a sshfs connection back to yourself from the Linux machine. Then run konqueror, and in the Linux machine's /home/user directory somewhere is the folder you mounted the windows machine in. I use konqueror's window--->split right-left view, leave the windows file system on one side and move about the (remote in this case) Linux side in the other. Moving files between the two is drag-n-drop. I'm going to play with this to see if it alone can handle the sshfs return connection. At the moment I'm running copssh on the windows side, which configures perfectly just by installing. I use password-less ssh keys. I'm guessing xwin32live is a client only. But nevertheless it'll be an integral part of this file moving scheme. Right now I have to configure several components separately in order to get started, that is to run a Linux X app on windows. Tapping windows from Linux has been a breeze since the advent of copssh. Looks like between xwin32live and copssh, windows will finally be ushered into the 21st century!

dain
dain

Why would anyone pay over $200 for XWin32 when this is done, more easily, with opensource vnc?

markwin
markwin

If you are familiar with the Linux/Unix environment then cygwin/X is the way to go. Its free and you can even setup local xinetd services. Why bring back an entire Linux desktop when you can run whatever single X app in a local Xwindow? Granted, cygwin is not for the windows only point and click crowd.

pgit
pgit

I find x over ssh faster, more stable and less prone to visual artifacts than vnc. And unless you channel vnc over ssh your connection is unencrypted, in the clear. The scenario I was thinking of in my other post is doctor's offices that archive files (like x-rays) remotely on a Linux server. Retrieving something must be done encrypted, ftp and the like doesn't cut it. Same goes with the archiving in the first place. I could do it with a bunch of scp scripts, but each one will authenticate. with sshfs I authenticate once and get the added bonus that the entire file system is at hand and encrypted; invisible to any third party. When personnel need to retrieve something, a critical step is getting a Linux X app running on windows. Using open source this has been a MAJOR pain in the butt. If this makes that step easy, I'm sure the doctors, dentists and such I know will find 200 bucks to be worthwhile. It takes more than that in the form of my time to get it working right otherwise...

rex.basham
rex.basham

Cygwin is definitely not for the point and click crowd but for a Unix/Linux bigot who runs Windoze to track his checkbook in Quicken (why Intuit never ported that app to Linux is beyond my thought processes), Cygwin is perfect. Granted, you need to actually know how to type (as opposed to wiggling a mouse) and remember a few commands (ls, ssh, sftp, locate, find, grep, etc...). :-) ciao, rexb