Wednesday, January 9, 2013

SCCM DCM Symantec Backup Exec.Cloud

The intention this article is to provide an overview of DCM within SCCM and more importantly for some, the ability to create a baseline for Symantec Backup Exec.Cloud and generate a KPI.

The DCM node within SCCM is made up of two parts Configuration Baselines and Configuration Items. 

Right click on Configuration Items > New > Application configuration Item
  1. Identification: Provide a name and categor
  2. Detection Method: Select Use custom script (VBScript)
Option Explicit
                If(IsNWMInstalled()) Then
                End If
                Function IsNWMInstalled()
                Dim objWMIService
                Dim Query
                Dim NWMInstalled
                Set objWMIService = GetObject("winmgmts:root/cimv2")
                Query = "SELECT * FROM Win32_Product WHERE IdentifyingNumber = '{735EF746-77A8-44E8-821F-4C77F038AA90}'"
                Set NWMInstalled = objWMIService.ExecQuery(Query)
                IsNWMInstalled = (NWMInstalled.Count > 0)
                Set objWMIService = Nothing
                Set NWMInstalled = Nothing
                End Function
3. Objects: Assembly, File/folder, registry key

4. Settings: WQL Query, Registry

5. Applicability: Select “All Windows platforms”.
6. Click next and Close on the following screens. Summary, Progress, Confirmation.
At this stage you have successfully created your Configuration item.  Next you will need to attach it to a Baseline.
Right click on Configuration Baselines > New Configuration Baselines
1. Identification: Provide a name
2. Set Configuration Baseline Rule: Select Application and General
a. Choose Configuration items: select the name that corresponds to the Configuration item we just created.  Click OK
3. Click Next and Close on Summary, Progress, and Confirmation.
4. Right click the baseline and click “View XML definition”
a. Make a note of the ScopeID near the top of the file.  The first instance of LogicalName will follow a string starting="Baseline_#######".  This is needed later in the post.
At this stage your Baseline has been created and should be assigned to a collection.  This simply means the baseline will look at the collection of computers and report whether the machines are compliant.
Going back to SCCM it is possible to create two sub-collections that will populate with compliant and non-compliant systems.  This way a program could be advertised to non-compliant systems to force them to be compliant.  A report can be generated on the back of this populated collection for KPI.

1. Create a collection called “Symantec” and two sub collections for “Compliant” and “non- compliant”
Right click the baseline and select “Assign to a collection”
1. Choose Baseline: the baseline will already be present as you right clicked it.
2. Choose collection: Browse to the Symantec collection, a group of machines you wish to run the baseline against.
3. Set Schedule: Simple schedule, Run every 1 days
4. Click Next and Close for Summary Progress and Confirmation.
If you connect to one of the client computers and open the Configuration Manager item within the control panel you will see the advertised baseline as well as the State “Compliant” “Non-Compliant” on the Configuration tab.

With the baseline run we can now look to the two sub collections and the query statement.
1. Right click on the collection “Complaint” and go to properties.
2. Select the membership tab and the generate a new SQL query.
3. Query Rule Statement:
a. Provide a name
b. Limit the collection to “Symantec” (the root collection)
c. Click on ‘Edit Query Statement’ and the Criteria tab
d. Add the following criteria 
i. The value “ScopeID” can be easily confirmed from the baseline XML file previously discussed.
4. Add another criteria item 

At this stage the "compliant" sub collection will only look at the “Symantec" root collection of computers for the baseline ScopeID defined; The compliance state must equal 1 (or compliant)
in order for the collection to populate.
The second sub collection "non-compliant" use the same logic as above but with a compliance state of 4 (or non-compliant).

Tuesday, January 8, 2013

Wordpress to Blogger migration; Publish to personal domain name 1and1

How to migrate from Wordpress to Blogger and to publish your address to your personal domain name - e.g. publishing at

NOTE: Work in progress
  1. Log in to blogger, select your Blog
  2. Select Settings > Basic > Publishing
  3. Click Advanced settings and enter your personal domain name and hit save.

    • You will receive an error message since you do not have proven ownership of the domain
  5. If you have your domain name registered with (basic account) you will not be able to follow the instructions as the CNAME is too long (more than 32 characters).
  6. I suggest you change your NameServer to point at You will not only be able to take full control of long CNAMES but you will be able to add 5 domains and share 1000MB for free.
1and1 nameserver instructions:

  1. Login to 1and1 and go to the "Domain Overview"
  2. Select the domain name and edit the DNS settings to point to

Byethost Setup instructions:
  1. Register a free account with
(More to follow)

    Thursday, January 3, 2013

    Script Windows 7 Library

    Question: What is the best way to script the creation of a Window 7 Library item within Explorer?


    Set oShell = CreateObject( "WScript.Shell" )
    strFolder = "" & userp & "\Documents\SymantecCloudBackup"
    set objFSO = createobject("Scripting.FileSystemObject")

    if objFSO.FolderExists(strFolder) = False then
     objFSO.CreateFolder strFolder


    end if
    WScript.Sleep 3000
    set objShell = wscript.createObject("")
    shlib1 = "cmd.exe /C C:\ProgramData\1E\NomadBranch\LDC0032F_Cache\shlib create %userprofile%\AppData\Roaming\Microsoft\Windows\Libraries\SymantecCloudBackup.library-ms"
    shlib2 = "cmd.exe /C C:\ProgramData\1E\NomadBranch\LDC0032F_Cache\shlib add %userprofile%\AppData\Roaming\Microsoft\Windows\Libraries\SymantecCloudBackup.library-ms " & strFolder & ""
    objShell.Run shlib1
    objShell.Run shlib2