Dec 12

when I advertise the TS on computers ,it failes because of various reasons and could not able to identify the reason for the faliure.So i decied to look into the SCCM default report for the particular Task sequence.the report doesnt give you all the full information just the task name where it failed.So later someother day fould an easy way to look into the smsts.log .Whenyou advertise the any Task sequence onto the computers in WIN PE environment ,you may encounter some of the tasks which fails in the begining.How do you identify the reason for the failure of Task.you can do the in the WIN PE session starts.But to view the logs and other stuff ,you should have enable “enable command prompt support (for testing only)” on theboot image that you select in booting up in SCCM.

Once the WINPE session starts ,press F8 and it gives you the command prompt support with the default path like x:\windows

Usually the logs will the stored in X:\Windows\Temp\SMSTSLog\ or C:\SMSTSLog or C:\_SMSTaskSequence.Now i want to see the smsts.log which is present in x:\windows\temp\smstslog.

Type cd temp\smstslog command prompt looks like below now x:\windows\temp\smstslog If you want to open the smsts.log which is present in smstslog folder ,just do notepad smsts.log,it will open the .log file in notepad which is not good to read /identify the errors.Lets move onto the next step by connecting the network share to copy the log files onto.

on the command prompt x:\windows\temp\smstslog  just type net use k: \\192.168.10.15\soft (Where k: drive letter to map and soft is folder on the share to copy the log files) .It prompt you for the use name and password. Provide user name(ex:eskon\xoluser) and password (which is invisble) where xsoluser should have write permission to the above share and eskon is a domian.when you enter the credentials,it gives you maessage connected successfully.In the commnd prompt i.e x:\windows\temp\smstslog type copy smsts.log  K:\ .you will see 1 file copied sucessgully.You can open the smsts.log with trace32.exe which you can get if you install SMS/SCCM tool kit from microsoft.

Tagged with:
Nov 12

There may be some of the issues which occrus due to process/remove of packages from retired DP’s.

Possible cause: The distribution point might not be accessible to SMS Distribution Manager running on the site server. Solution: If users are currently accessing the package files on the distribution point, disconnect the users first.

Package ID : C010011B

Distribution Point : ["Display=\\IND001\smspkgc$\"]MSWNET:["SMS_SITE=C01"]\\IND001\smspkgc$\
 
Here is the solution for this issue:
 
1.Select * from pkgservers where NALpath =path of NALpath
2.Select * from pkgstatus where pkgserver =Path of Pkgserv
Ex:Path: ["Display=\\IND001\"]MSWNET:["SMS_SITE=C01"]\\IND001\
 
If you find any entries related with above quiries then use the below to delete the same.
 
1.Delete from pkgservers where NALpath=path of NALpath
2.Delete from pkgstatus where pkgserver =Path of Pkgserv
 
Then try restart the SMS Distribution Manager component and monitor the distmgr.log for errors.It will resolve the issue.

If you are smart,you can idenntify the Bad Distribution points in your environment and take necessary actions before it triggers errors in component status node with the follwoing query report easily:

Report:

SELECT a.InstallStatus, a.LastCopied, a.PackageID,  a.ServerNALPath,
a.SiteCode,a.SourceNALPath, a.SourceVersion, a.State, a.SummaryDate
FROM
v_PackageStatusDistPointsSumm a

 WHERE a.ServerNALPath IN (SELECT
ServerNALPath
FROM
v_PackageStatusDistPointsSumm
WHERE ServerNALPath NOT IN (

 SELECT NALPath AS ‘ServerNALPath ‘
from v_SystemResourceList ))

Nov 05

If you are looking for a collection to query all the machines only from a particular OU not the SUB OU .Let say ,I have Top OU called Workstations\comp(120 systems) in eskon.net domain and in turn it has 3 sub OU’s OU1(10 systems),OU2(20 systems),OU3(49 systems).

Here is the simple query to get machines only from TOP OU called workstations.

SELECT sms_r_system.resourceid,
       sms_r_system.resourcetype,
       sms_r_system.name,
       sms_r_system.smsuniqueidentifier,
       sms_r_system.resourcedomainorworkgroup,
       sms_r_system.client
FROM   sms_r_system
WHERE  sms_r_system.systemouname = “eskon.net/workstations/comp” /*find all machines in that OU (but also finds machines in subOUs */
       AND sms_r_system.resourceID NOT IN (SELECT resourceID FROM sms_r_system where systemouname LIKE “eskon.net/workstations/comp/%”) /*remove records for machines in subOUs*/

The above collection should display only machines that are present in comp OU not from the SUB OU’s (like OU1,OU2,OU3).

Sep 25

I was searching for something to find the software update complaince to see if machines requires something to patch .as i couldnt find any such report from default reports ,so created one like below and gives me the compelet complaicne of software updates.

SQL Statement

select distinct
   sys.Name0,
   ui.BulletinID as BulletinID,
   ui.ArticleID as ArticleID,
   ui.Title as Title
from v_UpdateComplianceStatus css
join v_UpdateInfo ui on ui.CI_ID=css.CI_ID
join v_R_System sys on css.ResourceID=sys.ResourceID
join v_ClientCollectionMembers ccm on ccm.ResourceID=sys.ResourceID
where  css.Status=2 and
ccm.CollectionID=@CollID
order by sys.Name0, ui.ArticleID

Prompts

Name: CollID
Prompt text: Collection ID
Provide a SQL statement:
begin
 if (@__filterwildcard = ”)
  select CollectionID as CollectionID, Name as CollectionName from v_Collection order by Name
 else
  select CollectionID as CollectionID, Name as CollectionName from v_Collection
  WHERE CollectionID like @__filterwildcard or Name like @__filterwildcard
  order by Name
end

Sep 18

The below scripts works for only Win 2000 and XP not for other operating systems .Here are the simple steps that you can achive this(getting a report for local administrators).*******test it once before taking it to production*****************

1.Go to the X:\smsinboxes\clifiles.src\hinv\sms_def.mof where X is SMS installed Drive,edit SMS_DEF.MOF file (If you have already edited it ,not changes are required .If you are doing it in SCCM environment for the first time, u can still do the same in SMS_DEF.MOF file.)

2.At the very bottom ,Add these lines to the MOF file .

//***********************************Local  admins***********************

   //#pragma namespace (“\\\\.\\root\\cimv2\\sms“)

[ SMS_Report     (TRUE),
  SMS_Group_Name ("LocalAdmins"),
  SMS_Class_ID   ("MICROSOFT|LocalAdmins|1.0")]

class Win32_LocalAdmins : SMS_Class_Template
{
    [SMS_Report(TRUE), key]     
     string   AccountName;
    [SMS_Report(TRUE), key]     
     string    GroupName;
};

3.Keep monitoring the dataldr.log file and u can see the changes that have been done, given below for your reference: SMS_DEF.Mof change detected
Connected to SQL; waiting for Hinv action ID…
Done with wait for Hinv action ID.
Start of cimv2\sms-to-policy conversion
Resetting SMS_Report qualifier to FALSE on all classes and properties in cimv2\sms namespace
Running MOFCOMP on D:\SMS\inboxes\clifiles.src\hinv\sms_def.mof
MOF backed up to D:\SMS\data\hinvarchive\sms_def.mof.bak
End of cimv2\sms-to-policy conversion; returning 0×0 .
4.Create a folder on your media Drivewhich can used to source folder for package creation.

5.Create a MOF file and add the below lines into the file and save it as LocalAdmin.MOF  in the folder that you have created

// Local Administrators
// Requires Localadmins.MOF to be compile
#pragma namespace (“\\\\.\\root\\cimv2“)

 [union, ViewSources{"Select * from Win32_GroupUser where GroupComponent=\"Win32_Group.Domain='BUILTIN',Name='Administrators'\""},
 ViewSpaces{"
\\\\.\\root\\CIMV2"}, Dynamic : ToInstance, provider("MS_VIEW_INSTANCE_PROVIDER")]
 
 class Win32_LocalAdmins
 {
  [PropertySources("PartComponent"), key]  Win32_Account ref AccountName;
  [PropertySources("GroupComponent"), key] Win32_Group ref   GroupName;
 };

6.Crete a New package(ex:Local Admins) with the created folder as source files

7.Create program with a command Line MOFCOMP.EXE LocalAdmin.MOF

8.Create a advertisement and advertise it onto the collection (as per the needs).

9.Move onto the reporting node and create a report with the following Query:

select distinct Name0 as ‘Computer Name’, substring(AccountName0,charindex(‘Domain=’,Accountname0)+8,(charindex(‘Name=’,Accountname0)-charindex(‘Domain=’,Accountname0)-10)) as ‘Domain Name’, substring(AccountName0,len(AccountName0)-charindex(‘”‘,reverse(AccountName0),2)+2,charindex(‘”‘,reverse(AccountName0),2)-2) as ‘User Name’
from v_GS_SYSTEM INNER JOIN v_GS_LocalAdmins ON v_GS_SYSTEM.ResourceID = v_GS_LocalAdmins.ResourceID where (AccountName0 not like ‘%Administrator%’ AND AccountName0 not like ‘%Domain Admins%’)

If your orgamization has admin groups like admin or xxxxxx ,you can add few more lines to the above code like  AccountName0 not like ‘%Admin%’ .Just wait until computers ran the localadmin.MOF file and sends hinv to the siteserver. more information about this can be found here

Key difference between SMS_DEF.MOF and Configuration.mof file:

SMS 2003 has ONE MOF file, the SMS_DEF.MOF. This file contains both the data provider MOF’s and the reporting MOF’s as well handling registering new provider types.

 SCCM 2007 has TWO MOF files, the CONFIGURATION.MOF and SMS_DEF.MOF. The CONFIGURATION.MOF contains the data providers and the SMS_DEF.MOF contains the reporting MOF’s. For more information look at here

Sep 15

Here is the collection that gives you a list of machines with specific staus message ID:

select sys.ResourceID,sys.ResourceType,sys.Name,sys.SMSUniqueIdentifier,sys.ResourceDomainORWorkgroup,sys.Client from sms_r_system as sys inner join SMS_ClientAdvertisementStatus as offer on sys.ResourceID=offer.ResourceID  WHERE AdvertisementID = ‘GSA2035F’ and LastStatusMessageID = 10009

10009  is success, replace advertisementID with your advertisement ID.

With specific State name:

SELECT sys.ResourceID,sys.ResourceType,sys.Name,sys.SMSUniqueIdentifier,sys.ResourceDomainORWorkgroup,sys.Client FROM sms_r_system as sys inner join SMS_ClientAdvertisementStatus as offer on sys.ResourceID=offer.ResourceID WHERE AdvertisementID = ‘KBS00289′ and LastStateName = “Failed”

Below are the list of status messages with the discription:

SMS Status Message ID’s.

10050 Cache too small
10061 Download failed (retrying)
10003 Failed (bad environment)
0 No messages have been received
10054 Not enough space in cache
10045 Not enough space in cache
10034 Program cancelled by user
10022 Program completed successfully (reboot pending)
10009 Program completed with success
10008 Program completed with success
10004 Program failed
10007 Program failed
10006 Program failed
10057 Program failed (download failed – content mismatch)
10053 Program failed (download failed)
10058 Program failed (download/location failure)
10051 Program failed (no content)
10071 Program failed (retrying)
10072 Program failed (retrying)
10056 Program failed (retrying)
10070 Program failed (run time exceeded)
10021 Program failed (unexpected restart)
65535 Program received – no further status
10062 Program retrying (download/location failure)
10060 Program retrying (no content)
10005 Program started
10040 Program will not rerun
10055 Retry (Bad environment)
10037 Waiting for another program
10035 Waiting for content
10036 Waiting for user condition

Aug 09

Class Level Vs Instance Level

You can configure the security rights either the class level or the instance level.

These rights basically helpful in providing the access to the SMS objects like collection,packages,reports and many more too!

class security rights:It applies to the entire class like SMS site.Let say if you have collection called “All windows systems” and inturn it has child collection “All XP”,”All Vista” etc.If you apply class security rights on”All windows systems” it automatically applies to child collections.

Instance security rights:the name itself gives the answer,it is applied to an instance.If you want to provide rights only for “All Vista” no more to “all windows sysemts” and “all XP” .this can be helpful.

these rights might be helpful in giving rights to the helpdesk in terms of either particular collection,reports or packages.

More information can be found here

Aug 02

some times its hard to know the systems which are having issues in reporting their inventory and even some systems doesnt reporte anything to the site server though the client is installled on it.

Here is the collection which gives you all computers which doesnt report inventory for x days(taken 15days).

select SMS_R_System.ResourceID,SMS_R_System.ResourceType,SMS_R_System.Name,SMS_R_System.SMSUniqueIdentifier,SMS_R_System.ResourceDomainORWorkgroup,SMS_R_System.Client from SMS_R_System where ResourceId in (select SMS_R_System.ResourceID from SMS_R_System inner join SMS_G_System_WORKSTATION_STATUS on SMS_G_System_WORKSTATION_STATUS.ResourceID = SMS_R_System.ResourceId where DATEDIFF(dd,SMS_G_System_WORKSTATION_STATUS.LastHardwareScan,GetDate()) > 15) or ResourceId not in (select ResourceID from SMS_G_System_WORKSTATION_STATUS)

Good luck in troubleshooting why it doesnt report :)

Hints:

solution that i tried got worked.

1.check if you are able to connect to admin$ and see the log file i.e ccmexec.log( service is running or not)

2.check it the machine has problem with WMI repository, this is the most possible issue to resolve. you can the simple batch script to reolve WMI that i posted on my web(http://solodig.com/scripts/how-get-the-rid-of-systems-which-has-wmi-issue/) This can be done Via psexec on list of machines.the script will compile the MOF file with site server and it resolve most of the systems that failed in sending hinv .Use the collection commander tool (http://sourceforge.net/projects/smscollctr/) to intiate the hinv on list of machine single time.it should gives you the result that has been run or not ?

Jul 16

Below are the basic log files (more understandable way) that are helpful in troubleshooting the client issues if there are any application instllation failure/inventory and other issues.This information has been compiled from Microsoft Knowledge Base Article 867490

A list of windows update error codes can be found here.

CAS.log .”CAS” means “Content Access Service”. In this Log you will find the local Package Cache status. useful in Downloaded package issues and “cache out of space” errors. Make sure package content access is completed.

  • ccmexec.log .”CCMEXEC” means “Change Configuration Manager Executive” and it is nothing else that the SMS Service itself (ccmxec.exe) Log. One of the first logs where you should look when you are troubleshooting client issues.This service is reposible to track all the activities in the client. You can find here for example communication Problems from the client to the MP. Make sure that there are no errors, such as WinHTTP errors, listed.Very important Log!
  • ccmperf.log .  It contains information of the CCM Performance Counter. Not really a log that you will look at very often.
  • CertificateMaintenance.log. In this Log you will see if the Client got the right Certificate from the MP also tells if client cannot communicate with a management point or with Active Directory.
  • ClientIDManagerStartup.log. Each SMS Client has a unique ID, in case that the Client was deployed over a Image or Clone or you have a SMS ID Problem, the corresponding information will be logged here.
  • ClientLocation.log. Here you should look at when the Client is not sending informations to the SMS Server. You will also find on which SMS Site Server the Client is reporting to. Important Log
  • ContentTransferManager.log. In this Log you will find download activity of Packages to the local Cache like Package version issues or packages that are not available..
  • DataTransferService.log. Here you will see if there are any problems with the download of Policies from the MP and Records all BITS communication for policy or package access .To detemine if the client uses BITS or SMB, BITS downloads have a URL that starts with http://<distributionpoint> and SMB downloads with \\<distributionpoint>. Usually the Advanced Client will only use BITS to download software if the advertisement has been set to download and execute. If the advertisement has been set to run the program from the network, it always uses SMB.
  • EventLogForwarder.log. All entries done into the eventvwr are logged in this Log.
  • execmgr.log. Here you can see the Status of the Advertisements, how is the advertisement started and which are the results of it. It also helps yu in troubleshooting Package errors or packages that are unavailable. Make sure that the program command line has run successfully and that status is generated.
  • FileBITS.log. You will find here the Status of the downloads as also any reciving activity.
  • InventoryAgent.log. Here you will find any information related to the Hardware and Software Inventory.
  • LocationServices.log. This Log will show you how and which MP and DP are discovered.Very important Log!
  • mtrmgr.log. Software Metering Log. The Metering Agent monitors each Process that is started on the Client and compares it with the Metering Rules to very if one of the process needs to be tracked.
  • PatchInstall.log. Here you will see which patch was installed and with which parameter, when a Update Scan was done and which updates are missing. Very important Log!
  • PatchUIMonitor.log. This is the User Interface log of the Security Updates.
  • PolicyAgent.log. Any Policy request and Policy Download is logged here. Very important Log!
  • PolicyAgentProvider.log. Here you will see the most important tasks of the Policy Agent.
  • PolicyEvaluator.log. Each Policy is verified after ~2 Minutes after the download of the Policies is done, this verification is logged here. Important Log
  • RemCtrl.log . In this log you will find the Remote Tools agent installation.
  • ScanWrapper.LOG . This log corresponds to the “ITMU” Scanner. Every security update scan and installation is logged here. You can also see which wsusscan.cab is used and from where as also how and which parameters was the Scan started.
  • Scheduler.log . Here you can see what the SMS Scheduler has started and the result of it.
  • smscliui.log . Log for the SMS Client User Interface.
  • smscstat.log . Software Update Client Status Log.
  • SmsWusHandler.log . Another log related to ITMU, here you will find any Update Scan done on the PC.
  • SrcUpdateMgr.log . Every update of the Windows Installer Source Location Agent of SMS is logged here. Mor Infos about the Windows Installer Source Location Agent can be found here.
  • StatusAgent.log . Any new Status Message is logged here.
  • SWMTRReportGen.log . On aregular Basis the Metering Data is collected in a xml file and send to the SMS Server, in this log you will this process.
  • UpdateScan.log . It’s the log for the “SMS Extended Security Update Inventory Tool”. Some Updates that are not supported by ITMU and therefore this extended scan tool is required. More information about it can be found here.
Jul 16

Here are some webcasts related to ConfigMgr and deployment in general.

ConfigMgr – Prerequisites Before Installation

Installing SQL Server on a Server other than the ConfigMgr Primary

Installing SQL 2005 SP2 Local to the ConfigMgr Primary Server

In-Place Upgrade of SMS 2003 SP3 with the ITMU to ConfigMgr Mixed Mode

Virtual LABS for SCCM 2007

 http://technet.microsoft.com/en-us/virtuallabs/bb539977.aspx

 TechNet Virtual Lab: Configuring Configuration Manager 2007 Security including PKI TechNet

 TechNet Virtual Lab: Deploying System Center Configuration Manager (SCCM) 2007

TechNet Virtual Lab: Implementing Branch Distribution Points in System Center Configuration Manager (SCCM) 2007

TechNet Virtual Lab: Implementing Desired Configuration Management in System Center Configuration Manager (SCCM) 2007

TechNet Virtual Lab: Implementing Maintenance Windows for Software Distribution in System Center Configuration Manager (SCCM) 2007

TechNet Virtual Lab: Introduction to System Center Configuration Manager (SCCM) 2007

TechNet Virtual Lab: Managing Custom Application Updates using Systems Center Configuration Manager (SCCM) 2007

TechNet Virtual Lab: Managing Microsoft Updates with System Center Configuration Manager (SCCM) 2007

TechNet Virtual Lab: Upgrading SMS 2003 SP2 to System Center Configuration Manager (SCCM) 2007

TechNet Virtual Lab: Upgrading System Center Configuration Manager 2007 to Service Pack 1

Configuring PKI and Installing ConfigMgr in Native Mode

How to Properly Upgrade from ConfigMgr Base to SP1

First Steps After ConfigMgr Installation

Deploying and Configuring a Secondary Site

How to Deploy the ConfigMgr Client to Target Machines

How to Remove the ConfigMgr Client

Microsoft Deployment Toolkit – Zero Touch Screencast

SCUP – Installation Video

SCUP – Finding, Managing & Importing Catalogs

What’s coming in ConfigMgr

An Introduction to Microsoft Deployment Toolkit Tools (Level 200) Level 200

Configuration Manager SP1 and R2 Overview (Level 300) Level 300

Deploying and Upgrading to ConfigMgr (Part 1 of 2) Level 300

Deploying and Upgrading to ConfigMgr (Part 2 of 2) Level 300

Deploying Operating Systems with ConfigMgr (Part 1 of 2) Level 300 – With John Baker

Deploying Operating Systems with ConfigMgr (Part 2 of 2) Level 300 – With John Baker

Deploying Operating Systems with ConfigMgr (Part 1 of 2) Level 300 – With Keith Combs

Deploying Operating Systems with ConfigMgr (Part 2 of 2) Level 300 – With Keith Combs

Deploying Operating Systems with ConfigMgr 2007 Level 300 – With Ravi Kiran Chintalapudi

Deploying ConfigMgr 2007 Level 200

Deploying ConfigMgr 2007 Clients Level 300

Desired Configuration Management in ConfigMgr 2007 Level 300

Introduction to ConfigMgr 2007 Level 200

Lite Touch Installation Using Microsoft Deployment Toolkit Level 200

New License Options for ConfigMgr 2007 Level 100

New Tools to Streamline the Imaging and Deployment Process in Windows Server 2008 Level 300

Optimizing Desktop Management with ConfigMgr and Microsoft SoftGrid Application Virtualization Level 300

Overview of ConfigMgr 2007 Level 300

Software Distribution with ConfigMgr Level 300

Software Update Management with ConfigMgr Level 300

ConfigMgr: The Datacenter Level 300

Zero Touch Installation Using Microsoft Deployment Toolkit and ConfigMgr 2007 Level 200

SQL server 2005 Reporting Services:

Intro to SQL Server 2005 Reporting Services (Part 1 of 6) by Geoff Snowman

Intro to SQL Server 2005 Reporting Services (Part 2 of 6) by Geoff Snowman

Intro to SQL Server 2005 Reporting Services (Part 3 of 6) by Geoff Snowman

Intro to SQL Server 2005 Reporting Services (Part 4 of 6) by Geoff Snowman

Intro to SQL Server 2005 Reporting Services (Part 5 of 6) by Geoff Snowman

Intro to SQL Server 2005 Reporting Services (Part 6 of 6) by Geoff Snowman

Intro to SQL Server 2005 Reporting Services by Brain Welcker

Intro to SQL Server 2005 Reporting Services by John Weston

Intro to SQL Server 2005 Reporting Services  by John Weston

more links will be posted soon..

preload preload preload