Its Friday the weekend is coming up and what I don’t want is a day filled errors . On the other hand, errors can be a cool way to start the weekend – if you get them solved! The first 10 minutes at the customer site went according to my plan. I got some coffee and began to distribute a new package. The coffee was black and strong (which is good) but my package never made it to the distribution point (which is not good).

The error

The status in the console was stuck in Install Pending. I looked at the distmgr.log file on the site server and saw these entries:

RDC:This is a Share Type DP. Will use the Share Name smssoftware$ for RDC signature    SMS_DISTRIBUTION_MANAGER    29-01-2010 12:56:47    5308 (0x14BC)
Cannot create NAL path for the distribution point ["Display=\\sccmDP\smssoftware$\"]MSWNET:["SMS_SITE=DK1"]\\sccmDP\smssoftware$\    SMS_DISTRIBUTION_MANAGER    29-01-2010 12:56:47    5308 (0x14BC)
STATMSG: ID=2323 SEV=E LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=sccmDP SITE=DK1 PID=7992 TID=5308 GMTDATE=Fri Jan 29 11:56:47.052 2010 ISTR0="" ISTR1="" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=2 AID0=400 AVAL0="NS100027" AID1=404 AVAL1="["Display=\\sccmDP\smssoftware$\"]MSWNET:["SMS_SITE=Dk1"]\\sccmDP\smssoftware$\"    SMS_DISTRIBUTION_MANAGER    29-01-2010 12:56:47    5308 (0x14BC)
Error occurred.    SMS_DISTRIBUTION_MANAGER    29-01-2010 12:56:47    5308 (0x14BC)

Notice the NAL path error. I have seen this error many times before but always related to missing permissions on the distribution point.

Investigating the error

For a brief moment I thought about reapplying ConfigMgr. SP2 but somehow that always seems to be an act of desperation. In stead I enabled NAL logging and started to dig deeper into the distmgr.log file.

NAL logging

NAL logging is enabled in registry on the site server. For more information about NAL logging check http://support.microsoft.com/kb/243385/

  1. Navigate to HKLM\Software\Microsoft\NAL
  2. Create a new Key called Logging

    image

  3. Create two new DWORD values log To with a value of 3 (decimal) and Verbosity with a value of 7 (decimal). The value 7 will give you warnings, errors and information messages.
    image
  4. Once NAL logging is enabled I went back into the distmgr.log file (along with a fresh cup of coffee).

What the distmgr.log file revealed

With NAL logging enabled I refreshed the distribution point for one of my packages and saw these new entries:

Attempting to add or update a package on a distribution point.    SMS_DISTRIBUTION_MANAGER    29-01-2010 13:31:51    4256 (0x10A0)
for ["Display=\\sccmDP\smssoftware$\"]MSWNET:["SMS_SITE=DK1"]\\sccmDP\smssoftware$\, no connection account is available    SMS_DISTRIBUTION_MANAGER    29-01-2010 13:31:51    4256 (0x10A0)
STATMSG: ID=2342 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=sccmDP SITE=DK1 PID=7964 TID=4256 GMTDATE=Fri Jan 29 12:31:51.601 2010 ISTR0="Acrobat Reader" ISTR1="["Display=\\sccmDP\smssoftware$\"]MSWNET:["SMS_SITE=DK1"]\\sccmDP\smssoftware$\" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=2 AID0=400 AVAL0="NS100027" AID1=404 AVAL1="["Display=\\sccmDP\smssoftware$\"]MSWNET:["SMS_SITE=DK1"]\\sccmDP\smssoftware$\"    SMS_DISTRIBUTION_MANAGER    29-01-2010 13:31:51    4256 (0x10A0)
RDC:This is a Share Type DP. Will use the Share Name smssoftware$ for RDC signature    SMS_DISTRIBUTION_MANAGER    29-01-2010 13:31:51    4256 (0x10A0)
NAL[4] – Call to the Abnetwork DLL’s DllGetClassObject function succeeded.    SMS_DISTRIBUTION_MANAGER    29-01-2010 13:31:51    4256 (0x10A0)
NAL[2] – Provider list is already initialized.    SMS_DISTRIBUTION_MANAGER    29-01-2010 13:31:51    4256 (0x10A0)
NAL[4] – Attempting to create path for MSWNET:["SMS_SITE=DK1"]\\sccmDP\smssoftware$\.    SMS_DISTRIBUTION_MANAGER    29-01-2010 13:31:51    4256 (0x10A0)
NAL[2] – CreatePath, wrong provider: ABEXPRT. Trying next provider…    SMS_DISTRIBUTION_MANAGER    29-01-2010 13:31:51    4256 (0x10A0)
NAL[2] – CreatePath, wrong provider: LOCAL. Trying next provider…    SMS_DISTRIBUTION_MANAGER    29-01-2010 13:31:51    4256 (0x10A0)
NAL[1] – ERROR: could not create the path.    SMS_DISTRIBUTION_MANAGER    29-01-2010 13:31:51    4256 (0x10A0)

That’s the error, the distribution manager component is trying to create the folder using a wrong provider.

The solution

Now when I knew what was causing the error I could start fixing it. The NAL providers are stored in Registry and all 4 providers (LOCAL, MSWNET, NWNDS, NWBIND) was found the HKLM\Software\Microsoft\NAL\Providers\Active Orders key. I did discover that the HKLM\Software\Microsoft\NAL\Server\Connections\Operational Active Order was missing an important value.

image 

As you can see the only provider listed is Local. I added MSWNET to the list and restart the SMS_executive service.

image

I refreshed one of my packages while reading distmgr.log (with trace32.exe). As you can see in the log the problem is fixed and I can start my weekend with a smile on my face 🙂

NAL[2] – Provider list is already initialized.    SMS_DISTRIBUTION_MANAGER    29-01-2010 13:50:50    2516 (0x09D4)
NAL[4] – Attempting to create path for MSWNET:["SMS_SITE=DK1"]\\sccmDP\smssoftware$\.    SMS_DISTRIBUTION_MANAGER    29-01-2010 13:50:50    2516 (0x09D4)
NAL[2] – CreatePath, wrong provider: ABEXPRT. Trying next provider…    SMS_DISTRIBUTION_MANAGER    29-01-2010 13:50:50    2516 (0x09D4)
NAL[2] – CreatePath, wrong provider: LOCAL. Trying next provider…    SMS_DISTRIBUTION_MANAGER    29-01-2010 13:50:50    2516 (0x09D4)
NAL[4] – CreatePath, MSWNET is the correct provider.    SMS_DISTRIBUTION_MANAGER    29-01-2010 13:50:50    2516 (0x09D4)
NAL[4] – Provider MSWNET successfully got objects for path MSWNET:["SMS_SITE=DK1"]\\sccmDP\smssoftware$\.    SMS_DISTRIBUTION_MANAGER    29-01-2010 13:50:50    2516 (0x09D4)
NAL[4] – Successfully created the path: MSWNET:["SMS_SITE=DK1"]\\sccmDP\smssoftware$\.    SMS_DISTRIBUTION_MANAGER    29-01-2010 13:50:50    2516 (0x09D4)