Serge Chegorian's System Center Blog

Serge Chegorian's System Center Blog

SCCM Distribution Point Groups Audit

July 29th, 2013

In a complex SCCM environment when you’re dealing with a large number of Distribution Point Groups it is always good to run a periodic audit. There is no out of box report so here are some reports I use.

1. List of all DP groups and group members:

select distinct sGroupName, SUBSTRING(NALPath,
CHARINDEX(‘\\’, NALPath) + 2,
CHARINDEX(‘”]’, NALPath) – CHARINDEX(‘\\’, NALPath) – 3 ) as [DP Name] from v_DistributionPointGroup where NALPath not like ”* order by sGroupName asc, “DP Name” asc

*) – the first record is always a blank ‘placeholder’

2. The list of Members of Specific DP Group – Secondary

select SUBSTRING(NALPath,
CHARINDEX(‘\\’, NALPath) + 2,
CHARINDEX(‘”]’, NALPath) – CHARINDEX(‘\\’, NALPath) – 3 ) as [DP Name] from v_DistributionPointGroup where sGroupName=@DPGroupName* and NALPath not like ” order by “DP Name” asc

*) Prompted value

3. List of all DP groups DP belongs to – Secondary

select sGroupName as [DP Group Name] from v_DistributionPointGroup where NALPath like ‘%’+@DPName+’%’ and NALPath not like ” order by “DP Group Name” asc

*) Prompted value

How to populate SCCM collection with the members of subcollection

July 18th, 2013

In some situations you may want to populate your collection with the members of all its subcollections. For example you want to assign the same maintenance window to several dynamically populated collections and to minimize the administrative overhead. If your child collection ID’s are for example ABC000A1 and ABC000A2, your parent collection query will be:

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.ResourceId in (select ResourceID from SMS_CM_RES_COLL_ABC000A1) or SMS_R_System.ResourceId in (select ResourceID from SMS_CM_RES_COLL_ABC000A2)

Controlled bulk SCCM agent deployment

July 16th, 2013

In some situation, for example, when you roll out SCCM in the existing environment, you might need to take a staged approach deploying a large nuber of clients at the same time but not to entire fleet at once. Push method is not good because when you enable it it is attempting to deploy client to every discovered system at once.

The method we will use manually creates Client Configuration Record (CCR) file for each system we want to deploy the agent to. CCR file is a simple text file with the following content:

[NT Client Configuration Request]
  Client Type=1
  Forced CCR=TRUE
  Machine Name=COMPUTERNAME

All you need to do is to replace COMPUTERNAME with your discovered system name, name this file as YOURSSYTEM.CCR (this file name could be random, only the file content is important) and copy it to inboxes\ccr.box folder on SCCM site server. Few seconds later SMS Spool service will pick it up and initiate client push to YOURSSYTEM.

Now you can schedule a task which will create as many CCR files as you want in inboxes\ccr.box folder. You may also place a delay between cycles in order to minimize an impact to your network.

The blog is back

July 13th, 2013

Now after several weeks of silence my blog is back online, unfortunately with a new host name. My old an well-known domain name chegorian.com, which I registered 15 years ago has been hijacked and stolen. It is currently “owned” by the company called Aplus.Net. I have raised several complaints with ICANN but I do not really believe I will ever reclaim this domain name again. However I will keep my old logo on the top of the page.

Anyway I had to start this site from scratch. So be it…

Serge Chegorian's System Center Blog

Serge Chegorian's System Center Blog