April 25, 2006
Remote XP Desktops on Linux
Like many enthusiast I've got several computers in various states of functionality in my house. Most of them run some flavor of Linux, but one has
to run Windows because crappy DirecWay requires it for use with their old hardware. DirecWay will sell you their new hotness hardware that lets you run the OS of your choice, but DirecWay is right next to Microsoft on my list of companies I hate to give money to. Plus my wife appears to be one of those people who likes Windows because it's what she knows; so she uses the XP machine that serves my house's internet connection.
Due to the order in which our computers were acquired XP is installed on the "cool" computer: best monitor, best graphics card, fastest proc, severely overclockable, etc. Because I'm such a good husband, she also gets the "cool" desk chair, but that's beside the point. The "cool" computer also has the best speakers, nothing an audiophile would love, but it's a Creative setup with a subwoofer, so compared to the machine I use, the "cool" computer also sounds good.
After a couple of the CDs I love (Short Bus and October Rust) were recently destroyed by my children (whom I love somewhat less now) I have been going through and ripping any CDs I consider priceless. I've been using ogg, I know it's lossy and not the best way to archive music, but it's good enough and I have yet to meet anyone who can tell the difference between a CD and a good ogg rip when given the Pepsi challenge. So after a couple day's work I've got a few gigs music on my computer. Many of these songs I haven't heard in a long time and have been looking for a way to play them and control them on the "cool" computer from my linux machine across the room. A CLI mp3 player like mp3blaster would be great if it ran on XP.
So off I went to see if I could find something to fit my needs and somehow ended up with the idea of using remote desktop to run Winamp to play the ogg files. I thought this sounded cool because I'd also be able to use IE from my linux machines (for those damn sites that require IE and switching the user-agent doesn't work) as well as perform any maintenence on the XP machine (I'm always asking my wife to run Windows update, change the file sharing properties on something, etc.). So while this may not be the easiest way to play music on a nearby XP machine from Linux, it solved some other problems and I wanted to try it.
XP's Remote Desktop lets you have visual access to all XP's features. It's as if you're sitting at the machine. It's like a remote X session for Linux (I wouldn't know because I always feel less manly at the thought of accessing a remote Linux machine without using the command line) Scott Morris has some information about running GUI apps remotely with SUSE. So XP acts as the server and you just need a client to pull it off, you can use this on your LAN or elsewhere if you've got an internet connection. To set up the XP machine, just follow these instructions (except the "The remote computer must be running Windows 95 or later" thing is nonsense, we're going to do it with Linux). To set up the Linux box (client), you'll need rdesktop (RPMs available on the SUSE CDs or common YaST sources). Rdesktop is a CLI app, so if you want a GUI, you can try tsclient or GNOME-RDP. I tried the generic RPM on the tsclient site and it worked on my SUSE 10.0 machine, but complained of a dependancy issue that I could never fix on my 9.3 machine, I didn't try any other GUI's because I just set up a menu item in my Fluxbox menu that launched rdesktop with all the options I wanted (run
man rdesktop to see what's available). Do some googling and I'm sure you'll find a GUI that suits you if you must.
So far so good? You should now be able to launch rdesktop or the GUI front-end of your choice. If it does not work it might be the GUI you're using, so try rdesktop by itself to if that's working. If you're still having problems, your next step should be checking all the firewalls between you and the host machine. Then make sure you set up XP correctly; I think the XP machine will need to have a password associated with the account you are trying to use.
The problem with this is that whenever you log in you'll kick the local XP user out to the login screen. This is because Microsoft only wants one user on there at a time. However, the whole reason I decided to make this long-winded blog post is that today I happened across a Digg story that explains how to hack XP Pro to allow up to three users at once. TFA explains that this is done by installing an old dll, changing some options, and making some registry tweaks. In the comments I also found this post that provides an .exe that does all the installing and hacking for you. In any case, you'll have to offer a certain amount of trust to the authors because you're installing a dll that could have been potentially modified to do "bad things". I've tried both methods mentioned above and have yet to find any problems. Also, you'll need to set up a second account on the XP machine because two people can't be logged in as the same user at the same time, if you try it the first user will be kicked to the login screen.
I have no idea if this hack violates the XP EULA or any laws and these things cary a certain amount of risk, so you're on your own if you end up in jail or with a broken machine. Additionally, the next time you install any MS patches, your hack may be undone or break the hack alltogether.
Did this solve my "music-on-the-'cool'-computer" issue? No. Though you can specify if you want the sounds to come from the server or host, for some reason that's still not working right now, but I'm convinced the theory is sound (forgive the pun), so I'll keep working on it. Update: Sound works now.
Posted 9 years, 6 months ago on April 25, 2006
The trackback url for this post is http://www.suseroot.com/blog/bblog/trackback.php/62/