Showing posts with label SCCM 2007. Show all posts
Showing posts with label SCCM 2007. Show all posts

Thursday, 27 February 2014

Enable Verbose Logging on the SCCM Client for Application Deployment Troubleshooting

You might need to enable verbose logging on the SCCM client for application deployment troubleshooting to be able to see what is happening in more detail.

The default logging level for the client logs information, error and warning level messages. And this is set by a registry value named LogLevel which can be found under

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\CCM\Logging\@GLOBAL\LogLevel (For x86 SCCM Client)

or

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\CCM\Logging\@GLOBAL\LogLevel

default value of LogLevel is 1, so you can change it 0 (Zero) and restart the SMS Agent service to enable verbose logging. (You'll need to change Administrators permissions to Full on @GLOBAL before changing this value)

SCCM Enable Verbose Logging

Client-side debug logging

If you need more detail you can also enable debug level logging by creating a new key named DebugLogging and a value named Enabled REG_SZ (String) = True under the

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\CCM\Logging\@GLOBAL\ (For x86 SCCM Client)

or

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\CCM\Logging\@GLOBAL\

SCCM Enable Verbose Logging New Key

Creating new key named DebugLogging

SCCM Enable Verbose Logging New String

Creating new REG_SZ (String) named Enabled

SCCM Enable Debug Logging

Thursday, 16 January 2014

SCCM Failed to create task sequence media errors

I'd like to share some errors and their solutions those worked for me during creating task sequence media in SCCM.

Error 1: Error creating media. Error message is : The hash value is not correct. 0x8(Hash could not be matched for the downloaded content. ) Please refer to CreateTsMedia.log to get details.

Open CreateTsMedia.log file (<ConfigMgrInstallationPath>\AdminUILog\AdminUILog)

The error in my case was:

Staging package CAM0011D
Before executing state - fsVolumeSpaceRemaining= 6844 Mb
Staging package CAM0011D
Hash could not be matched for the downloaded content. Original ContentHash = 37EF10E36133D3F00B3A18D36AAC6ED36F38DBC3, Downloaded ContentHash = F641FD184FA74E192FBED1F72B4CD19FA3683216
Failed to stage package CAM0011D (0x80091007)
Failed to create media (0x80091007)
CreateTsMedia failed with error 0x80091007, details="CAM0011D"
MediaGenerator::~MediaGenerator()

To fix: Select the Task Sequence you are about the create Task Sequence Media, then click references in the tabs below and locate the package mentioned in logs, it was CAM0011D in my case. Then refresh the package on failing DP, if it won't help you can delete the PCK from the DP and refresh it again to send it again. Or you can directly update the package (Update Distribution Points) and try again when new source version installed to DPs.

 

Error 2: Error creating media. Error message is : The hash value is not correct. 0x80091007 (Hash could not be matched for the downloaded content. ) Please refer to CreateTsMedia.log to get details.

Open CreateTsMedia.log file (<ConfigMgrInstallationPath>\AdminUILog\AdminUILog)

The error in my case was:

Finished adding client config policies and policy assignments
Setting up Install Toolkit
Hash could not be matched for the downloded content. Original ContentHash = C..., Downloaded ContentHash = 5...
Failed to create media generator (0x80091007) 
CreateTsMedia failed with error 0x80091007, details=""

To fix: The problem of this error is lack of details. Because it doesn't say which package caused the problem as the Error1 above. What I found is from the temporary working folder is it generates this error just after retrieving the boot image associated to Task Sequence. So refreshing boot image (actually I had to remove it and add the DP again because of another problem.) is helps as in Fix1 above.

 

 

Error 3: Failed to create media

This time the error in my case was:

Beginning media generation
Failed to find the volume for system partition, it might be drive letterless
Marking partitions active is only supported for MBR disks.
Unable to activate partition (0x80004001)
Error formatting volume G:\ (0x80004001)
Failed to create media (0x80004001)
CreateTsMedia failed with error 0x80004001, details=""
MediaGenerator::~MediaGenerator()

To fix: We need to re-partition the USB media and be sure it has marked as active. I used diskpart to do that. Steps are below.

Run diskpart with administrative rights

diskpart
list disk (find your USB disk number)
select disk 2 (2 here is the number of the USB disk listed in list disk command)
WARNING: The next command (clean) will wipe the disk you have just selected above.
Please be sure you have selected the correct disk.
clean (to clean partitions)
create partition primary size=16384 (to create a 16GB primary partition)
list par (to list partitions in the selected disk)
select partition 1 (select the partition you have just created, there should be only one)
active (mark the partition as active)
assign letter=G (any avail. letter)
format fs=ntfs quick label=”TSMedia” (format the partition quickly with NTFS and naming (label is up to you))
exit (done)

usbtsmediadiskpart

usbtsmediapar

 

Now you can try to create your USB media again.

Hope it helps or gives an idea.

Friday, 11 January 2013

Propagating SCCM DB for "Hardware 2A - Estimated computer age by ranges within a collection" report

As you know or have just found Microsoft hasn't been updating the LU_CPU table in SCCM since 2006. So running a computer age report  "Hardware 02A - Estimated computer age by ranges within a collection" shows Not Available for computers have CPUs launched after 2006.

But you can update this data manually if you really need to run these reports. I did it in 1 day, it was boring but seeing the result was a big relief. Now I know I will not have to import hundreds of records again.

Result :

11-01-2013 13-29-47

Steps? Here : )
1. Find discovered CPU information in v_GS_Processor, and exclude CPUs already exist in LU_CPU table.
SELECT DISTINCT
.[v_GS_PROCESSOR].CPUHash0 AS CPUHash,
.[v_GS_PROCESSOR].Manufacturer0 AS Manufacturer,
.[v_GS_PROCESSOR].BrandID0 AS BrandID,
.[v_GS_PROCESSOR].PCache0 AS PCache,
.[v_GS_PROCESSOR].NormSpeed0 AS NormSpeed,
.[v_GS_PROCESSOR].IsMobile0 AS Mobile,
.[v_GS_PROCESSOR].Name0 AS Name
FROM
.[v_GS_PROCESSOR]
LEFT JOIN
.[LU_CPU] as LC
ON
.[v_GS_PROCESSOR].CPUHash0 = LC.CPUHash
WHERE
LC.CPUHash is null

After running query and seeing the results you might want to add something like these to make it shorter by excluding bad looking ones to check them at the and.
AND
.[v_GS_PROCESSOR].Name0 Like '%[0-9]%' /* Exclude rogue entries */
AND
.[v_GS_PROCESSOR].Manufacturer0 Like '%Intel%'
AND
.[v_GS_PROCESSOR].Name0 Not Like '[" "]%' /*Exclude duplicates and rogues*/

Now you have as much as usable data from the view, Column names match the LU_CPU as well.
 11-01-2013 13-42-49

 2. Now you can take the query output to excel or to a temporary sql table to work on it, choice is yours. I used Excel to trim some information, because CPU names don't have a standard pattern to automatize parsing/filling.

11-01-2013 13-46-26

I duplicated the Name Column and deleted all information by Find/Replace to leave CPU Model alone.

11-01-2013 13-48-37

 3. Then visited Intel's ARK ( http://ark.intel.com/search/advanced/ ) website to obtain a detailed CPU list, and imported it to another sheet.

 11-01-2013 13-53-08

 4. Converted Launch dates to yyyy-mm-dd format, I written this to do that.
" DATE((CONCATENATE(20,RIGHT(B3,2))),(3*(MID(B3,2,1)))-2,1) "
  11-01-2013 13-56-45

 5. Copied values of Processor Number and CPU_Birth to the Sheet I created at first with data from the first query. (VLOOKUP caused me problem when I used it in multiple sheet)

I added a column next to Name and with " =VLOOKUP(H2,P:Q,2,FALSE) " formula, P:Q here is the two columns from ARK table.
  11-01-2013 14-01-24

 6. And added other necessary columns, also checked models names with eye and corrected names like M 430 to 430M etc. (Boring bit)
  11-01-2013 14-04-56

7. Rest is the inserting the table to LU_CPU, you can do that as you wish. You can concatenate columns and use with SQL's Insert Into.
   11-01-2013 14-09-47

This is lazy - non-creative way but very useful for future updates, as you can only add a new cpu and run it's command on SQL to add it. You can try to import from Excel file directly to LU_CPU too.
   SCCM Computer Age

For remaining CPUs don't have CPU_Birth information you can use the SCCM reporting to find machines by clicking the Not Available on the top of the report, search machine with the query below
 SELECT * FROM v_GS_PROCESSOR where SystemName0 = 'JK04-LT'

Add your findings to your table and find birth date manually on the web, ( I recommend http://www.cpu-world.com/ ) then insert you DB LU_CPU again.

You can also query LU_CPU table for NULL CPU_Births
SELECT DISTINCT [LU_CPU].Name 
From [LU_CPU] where CPU_Birth is NULL

then find the Launch date manually on the web and update the column via Name
UPDATE [LU_CPU]            
SET CPU_Birth = '2005-03-01'
Where Name = 'Intel(R) Celeron(R) M processor 1.50GHz'

Good luck !

Friday, 16 November 2012

How to disable password requirement in SCCM PXE Service Point

You set a password before and unset by removing the tick, but it still asks for a password, the problem here is removing the tick is not enough to disable password protection, so delete passwords first then remove the tick, apply settings and click ok.

Monday, 16 May 2011

SMS/SCCM Report - Access Denied / ASP 0178 : 80070005 Error

If you have got a SMS 2003 Server which runs on Windows Server 2003 with SP1 installed and if you gave access rights to a non-administrator user for SMS Reports , probably you are getting Error : Access is Denied error on IE. If you have already added this user to SMS Reporting Users local group on the SMS Server and if you are getting the error below
SMS_Rep_Error_2
Server object error 'ASP 0178 : 80070005'
Server.CreateObject Access Error
/SMSReporting.SiteCode/Report.asp, line 64
The call to Server.CreateObject failed while checking permissions. Access is denied to this object.
The reason is hardened DCOM settings in Windows 2003 SP1

To resolve this problem run Component Services which is under Administrative Tools and find the SMS_REPORTING_POINT as shown below

SMS_Rep_Error_3

Now select Security tab

SMS_Rep_Error_4

Select Customize option for Launch and Activation Permissions then select Edit

SMS_Rep_Error_5

Now add SMS_Reporting_Users local group and clear Local Launch option and select Allow for Local Activation, then aprrove all setting by click OK.

If you want to read more information about DCOM changes in Windows 2003 SP1 I recommend you to visit DCOM Security Enhancements site.