Archive for the ‘Thin Client’ Category

Windows 2008 R2 RDS: Print Spooler Stops

Wednesday, June 2nd, 2010

We have two servers running Windows Server 2008 R2 Remote Desktop Services. On both servers the Print Spooler service kept randomly stopping. In the Application event log, we noticed this error keep appearing:

Faulting application name: spoolsv.exe, version 6.1.7600.16385, timestamp: 0x4a5bd3d1
Faulting module name: ntdll.dll, version 6.1.7600.16385, timestamp: 0x4a5bd3d1
Exception code: 0xc0000374

After trying to replicate the problem, we found that it only occurred when certain groups of users, all with the same login script, logged in to the server. Part of this login script adds some network printers for the user.

Turns out, we had just updated one of the print drivers for the printers, and whenever the user logged in, it was unable to install the new print drivers, because of the user’s access rights. Instead of it popping up asking for an administrators credentials to add the driver, the print spooler service was just failing.

The fix in this case was to simply log in as an administrator, add the printer, so that the driver gets installed.

Other fixes that I found on the internet all relate to driver issues, so do check that the drivers you are using are suitable for Windows Server 2008 and are WHQL.

Login Script Not Running Windows 2008 Remote Desktop Services (Terminal Services)

Monday, May 24th, 2010

Call today: User has not got any network drives when logging on to the thin clients.

The setup for this is as follows:

  • 2 x Windows Server 2008 R2 servers running RDS, DNS round robin, load balanced.
  • 56 x ThinStation 2.2.2 clients

A VBS login script is applied using Group Policy. All student users have a Mandatory Roaming Profile.

Any user that was not the user that I used to create the template could not run the login script. Took quite a while to work out that the mandatory profile was the cause.

To solve the problem:

  1. Open Registry Editor
  2. Select HKEY_USERS, then click File –> Load Hive
  3. Select the mandatory profile file (NTUSER.MAN) and give it a name.
  4. Right click on the key that you typed in in step 3 and select Permissions.
  5. Remove the user that you used to create the Mandatory Profile
  6. Add in the Authenticated Users (or a different group if you want to restrict access further) and assign it Full Control.
  7. Propagate the permissions to all child objects.
  8. Select the hive that you added in step 3, click File –> Unload Hive
  9. Test.

I suggest creating a backup of the original hive before you make any changes. Just in case.

Now, whenever a user logs in the script should run, and create all of the necessary network drives that you have defined in your script.

Reconnect Just Flickers & Returns

Monday, September 28th, 2009

After all that work sorting out my user profiles, and reducing my logon time as far as I can (record is 12 seconds from entering password to a working desktop :-) ) I have found another problem.

The clients are booting up fine, pulling the config files from the network and running the right applications. However, once they have been logged out and returned to the Shutdown/Reconnect dialog, there is no way to reconnect to the server.

When you click it, it starts to try to reconnect, and then flickers, and then returns to the Shutdown/Reconnect dialog, just going round and round in a circle. If I shutdown and reboot, it all works fine.

That’s tomorrow’s challenge now I feel.

Group Policy Client Service Failed the Login: Access is Denied

Monday, September 28th, 2009

This error has been annoying me for nearly 4 hours now.

We have a terminal server for students. All students use a mandatory profile, located on a share so that it can be accessed by all of the servers in the farm.

I thought this would be easy to set up, so I did the following:

  1. Log in as a user (that does not have the profile path set) to create a local profile on the machine.
  2. Configure the profile as you require and then log off.
  3. Log on as an administrator.
  4. Open up System Properties –> Advanced –> User Profiles
  5. Select the profile that you created in steps 1 -3 and select Copy To.
  6. Specify the location and a security group and the intended user. Click OK and verify that the folder exists in the new location.
  7. Go to the location and rename NTUSER.DAT to NTUSER.MAN to make it mandatory.
  8. Set the user profile location for all your desired users.
  9. Log in and test.

All was going well. I was at step 8, and failure struck. Group Policy Client Service Failed the Login: Access is Denied.

Check the following first, as simple solutions:

  • The user has read access to the share.
  • The user profile is owned by the DOMAIN\Administrators group.
  • Ensure the desired group has got read access to the entire profile (you can replace all permissions).

After checking this and repeating the whole process twice, I started looking at something else. The NTUSER.DAT file is a registry hive, which contains keys with their own security on them. So:

  1. Open up Registry Editor
  2. Select HKEY_USERS and then rtight click and Load Hive
  3. Browse to the location of the profile and open NTUSER.MAN
  4. Give the key a temporary name. e.g Profile.
  5. Right click the name you just gave and choose permissions.
  6. Make sure the desired group is listed and has Full Control permissions.
  7. Propagate all these permissions to all child objects.
  8. Unload the hive and close Registry Editor

This cured the problem for me. Now all of the intended users can pick up the profile and work as desired.

I understand from my Googling that this is a problem with some Vista users to. I have not tried this as a solution for them, but would be interested to hear if it does solve it.

4 people found this post useful.

ThinStation – Sound & USB!!

Tuesday, August 18th, 2009

Just sorted sound and USB device access with my ThinStation deployment.

I inserted the following lines to the thinstation.conf.buildtime file and it all started to work.

USB_STORAGE_SYNC=On USB_MOUNT_DIR=”/mnt/usbdevice” SESSION_0_RDESKTOP_OPTIONS=”-r disk:USBDrive=/mnt/usbdevice -r sound:local”

Make sure too that you have the necessary modules included for storage device and USB access in the build.conf file.

2 people found this post useful.

ThinStation Installer – Working!!

Monday, August 17th, 2009

As I am currently unable to get my Windows Installations to work correctly over RIS (note: this means the last attempt didn’t work…), I thought I would give a go to installing ThinStation using RIS, and for machine without PXE boot roms, a USB stick installer.

I thought from the outset that this would be quite a challenge. Little did I realise how easy it would be.

In 4 hours, I have managed to configure and test both methods of installing ThinStation. I’m so happy!!

Two bugs to sort out – most likely I removed a driver that I needed or haven’t enabled a package. 1. I cannot get any sounds that are playing on the Terminal Server to play on the client and 2. I cannot get any USB sticks inserted on the client to be registered on the server.

For those of you who are now wondering what ThinStation is and what I am jabbering on about, click the link below to find out more.

http://www.thinstation.org

A bit of time tomorrow sorting out the two bugs and configuring the user experience on the server will mean that we have our thin client network sorted.

Maybe later I will post how I got it all to work and the network configuration that we have. Will also post later on the outcome when it is in use. (This is a test implementation.)

Ought to look at my Windows RIS install again now…