I got this question from my good friend Matt the other day (edited for brevity):
I was just thinking about taking an old box or two […] and use it as a thin client to connect to […] Microsoft Terminal Server. […] I know there are RDP clients included with OpenSUSE, but I want to make something seamless, so that the machine boots right into it. […] Any ideas how I could do that?
Though I’d not previously needed that myself, I can see how it could be a clever solution to many problems. It’s a great way to re-use machines that do not have a chance to be Vista or 7 machines, and have better control over the Windows environment through Terminal Server, etc….
Fortunately, it’s also VERY easy to do in Opensuse. The following examples were all done on Opensuse 11.1 with a Gnome desktop, but should be similar for other distros and such.
Step 1: Enable auto-login for a user
In order to get all the way booted up to the Windows log in, you have to get past the Gnome desktop login. In Suse this is easy; just launch Yast or Yast2, and in “User and Group Management”, under “Expert Options”, and “Login Settings”, check the box for “Auto Login”, and select the appropriate user (I assume that user already exists).
Step 2: Create a “Launcher”
Here’s an easy example to create a Launcher (but not the only way!): On the desktop of the auto-login user from Step 1, right-click and choose “Create Launcher…”. For the Name, call it “autolaunch” or something. For the Command, enter “
rdesktop -f <hostname or IP>” (of course, without the quotes and specify your hostname or IP). You can even choose and Icon, though you’ll never see it…
Step 3: Add Launcher to Main Menu
In the Gnome desktop, click “Computer”, and “Control Panel”. Then, under “Look and Feel”, click “Main Menu”. Next, you have to decide which section you want your Launcher under (I chose “Utilities), and just click-and-drag the item from your desktop into that section. Make sure it has a check mark next to it.
Step 4: Enable Auto-Launch
Now that your Launcher is in the Main Menu, click on “Computer” again, and the “More Applications” button. Find your Launcher, and right-click on it, and choose “Add to Startup Programs”.
That’s it! Now reboot, go get some coffee, and when you com back you will think you booted into windows. You poor unfortunate soul…
Now for some more advanced addendum notes:
Optionally, Step 2 can be side-stepped by just creating the “New Item” in Step 3.
Optionally, Step 3 and Step 4 can be side-stepped by just creating and/or linking the Launcher manually. What I mean is that when you perform step 4, it basically copies your “launcher” into a subdirectory in your home directory, for example:
The file contents of the file are pretty standard, so you could even build them by hand (thereby skipping Step 3) and distribute them to a bunch of machines with a script (thereby skipping Step 4)… that way you could easily change the destination server for maintenance, etc…. Anyway, here are those Launcher file contents:
Exec=rdesktop -f your.server.com
I hope that helps!
One funny thing is that I got a follow-up note from Matt, explaining that he decided to use ThinStation in the end anyway, and is quite pleased…. But I’ll let him explain to you what he had to go through to make it work in his environment…