Monday, June 21, 2010

Windows Deployment Service not starting

One of our ConfigMgr PXE Service points was not functioning as it should, was not servicing any clients.
When I went to restart the WDS Service, I received the following error:


Very odd. I enabled Tracing on the WDS Service (by switching the EnableFileTracing key located here - HKLM\Software\Microsoft\Tracing\WDSSERVER - from a 0 to a 1) and reviewed the log generated when I tried to restart the service again.

I was receiving errors such as :
[5108] 10:30:04: [d:\rtm\base\ntsetup\opktools\wds\wdssrv\server\src\wdsprovhdl.cpp:169] Expression: , Win32 Error=3238332162
[5108] 10:30:05: [1762][WDSPXE] [d:\rtm\base\ntsetup\opktools\wds\wdssrv\wdspxe\src\pxeprov.cpp:172] Expression: , Win32 Error=2
[5108] 10:30:05: [1762][WDSPXE] [SMSPXE] Initialization failed (rc=2)
[5108] 10:30:05: [1762][WDSPXE] [d:\rtm\base\ntsetup\opktools\wds\wdssrv\wdspxe\src\pxeprovhdl.cpp:481] Expression: , Win32 Error=2
[5108] 10:30:05: [1762][WDSPXE] -> CBannedGuids::Shutdown
[5108] 10:30:05: [1762][WDSPXE] <- CBannedGuids::Shutdown=0
[5108] 10:30:05: [1762][WDSPXE] [d:\rtm\base\ntsetup\opktools\wds\wdssrv\wdspxe\src\pxeprovhdl.cpp:598] Expression: , Win32 Error=2
[5108] 10:30:05: [1762][WDSPXE] [d:\rtm\base\ntsetup\opktools\wds\wdssrv\wdspxe\src\pxemain.cpp:201] Expression: , Win32 Error=2
[5108] 10:30:05: [d:\rtm\base\ntsetup\opktools\wds\wdssrv\server\src\wdsprovider.cpp:147] Expression: , Win32 Error=2
[5108] 10:30:05: [WDSPXE] Initialization Failed (rc=2)

Error code 2 is a file not found error. Something had gone seriously amiss with the SMSPXE provider.
This had to be up and running ASAP, so I did not have time to remove the packages off the PXE point, remove the PXE role, Re-add the role, and redistribute the images.

To resolve, I ran PXE.MSI on the affected server (this is located [SMSINSTALLDIR]\Bin\PXE.MSI).

This repaired the PXE setup on that machine, re-registered providers etc. The service would then start, and the server is now servicing pxe clients.

Tuesday, June 8, 2010

ConfigManager Task Sequence not continuing - Clients in Provisioning Mode

Recently we had a problem where a lot of clients were not completing their OSD Task Sequence, instead showing up in reporting as still running.
These clients were unable to be managed, and would often be in Provisioning Mode.

Turns out this was due to one of the steps in the task sequence requiring a reboot. The software (in this case it was Cisco VPN Client) would install, and then reboot after about 2-3 minutes of installing. This reboot was not handled by the TS and was unhandled. This would cause the client to stop running the TS, boot into windows and leave the client in provisioning mode.

To resolve: suppresed the reboot in the software installation package, and clients would then finish running TS.

The easiest way to find the trouble software is look for the step before the stuck running step. In my case, client would stay running step 79. Step 78 was the troublesome package.

Hope this helps anyone, took me a long time to figure out.