Monthly Archives: December 2013

SCCM 2012 R2 HealthCheck toolkit – Pre-beta version

Hi All, As Christmas is approaching, what best to receive presents, istn’t it? Thinking on all of you that supported us during the year, we are releasing a “pre-beta” version of the SCCM 2012 R2 HealthCheck toolkit (you can download it form here). This release has lots of changes from its predecessor (the SCCM 2007 HealthCheck toolkit). As it is still in “pre-beta” stage, we only tested it remotely from a w7/w8.1 machines against a single primary site (cm12 sp1 cu3 and another cm12 r2) with admin rights to the CM12 box without any problem (we haven’t run it locally on the server) Anyway, how to use it: 1-      CollectData.ps1 (This script will collect information from a CM12/R2 Infrastructure). Open the powershell (64 bits) and run with an account that has admin rights on the cm boxes as it will connect remotely to registry, wmi, etc. CollectData.ps1 -smsprovider servername (ie. CollectData.ps1…

SCCM 2012 – Console Namespace GUID

Hi All, Lately i’ve been doing lots of powershell “integration” with the SCCM 2012 console (and i’ll continue), but you may be wondering, where do I get the SCCM 2012 console. Well, i’ve been using a tool called AdminUI.ConsoleBuilder.exe that you find under <CM12ConsoleInstallationPath>\bin and even it is a nice to tool to know about, it unfortunately did not gave me all ID’s i wanted. Based on this i asked to other MVP’s and Microsoft Project Group and Kaido helped me with his script that you can find here. This script gave me an idea of what to look for and after a while,but his script did not work with few id’s where the XML file was created only with DefaultHomeTabContextMenu   ContextMenuDefaultHomeTab and nothing else. well, based on this, i’ve created a new script (below is the code) that will create a folder under <CM12ConsoleInstallationPath>\XmlStorage\Extensions\Actions with the NamespaceID and will create a file…

SCCM 2012 R2 – Superseded by

Hi All, have you ever tried to discover what update supersed the one you are looking now? it is easy, don’t it. You only need to open the update properties and select supersedence information. Once done it, you’ll see the below once you have the information, you then need to discover if the update that supersede is being deployed or not..and this is not an easy task… based on this, i’ve created a powershell script as well as a console extension that will allow you to see updates that supersede the one you selected as well as the deployment group they are with 1 click. To do it, download the Supersededby zip file, extract and add the files to the following places: RFL-SUP.xml to <CM12R2Console Installation Path)\XmlStorage\Extensions\Actions\5360fd7a-a1c4-428f-91c9-89a4c5565ce1 and <CM12R2Console Installation Path)\XmlStorage\Extensions\Actions\6c1e9a78-cb88-4180-b861-b91f5e9792a9  and <CM12R2Console Installation Path)\XmlStorage\Extensions\Actions\7b1c9fea-1e2b-458c-84e6-406cbea827fa (change the CM12R2Console to the path of the console :)) Supersededby.ps1 to C:\Scripts\CM12R2Console on the same computer where you installed the…

Workshop day – We want hear from you

Hi All, We are thinking to create a new type of event called “workshop day” and we’d like to hear from you want you think about this. This is what we’re thinking: 1-  Saturday 2- Central London 3- Small crowd (maybe up to 20/30 people) 4- Paid what you’ll get 1- real life scenarios 2- exclusive content 3- documentation and/or recording  of the sessions (when we are able to record) 4- we are your voice…it means, you’ll be part of the sessions, bring your scenario 5- refreshments and lunch 6- networking 6- prizes For the 1st workshop, we selected the theme: “Scripting and Automation for CM 2012, the basics”, it means, let’s use powershell, wmi, sql, etc…it means that we’ll not be teaching you CM12 (you need to know it) and it would be nice to know (at least the basics) or related technologies, such as Active Directory, SQL, WQL and…

SCCM 2012 R2 – Collection Per Computer

Hi All, have you ever tried to discover the collections a specific device is member of while selecting the device on the devices node? it is not easy is it? we normally create a query to do it. based on this, i’ve created a powershell script as well as a console extension that will allow you to see all collections a device is member of with 1 click. To do it, download the CollectionPerComputer zip file, extract and add the files to the following places: RFL-Devices.xml to <CM12R2Console Installation Path)\XmlStorage\Extensions\Actions\ed9dee86-eadd-4ac8-82a1-7234a4646e62 and <CM12R2Console Installation Path)\XmlStorage\Extensions\Actions\3fd01cd1-9e01-461e-92cd-94866b8d1f39 and <CM12R2Console Installation Path)\XmlStorage\Extensions\Actions\2b646eff-442b-410e-adf3-d4ec699e0ab4 and <CM12R2Console Installation Path)\XmlStorage\Extensions\Actions\64db983c-10bc-4b47-8f2d-cfff48f34faf (change the CM12R2Console to the path of the console :)) CollectionPerComputer.ps1 to C:\Scripts\CM12R2Console on the same computer where you installed the CM12 R2 Console Once you have done it, restart the console and you’ll see a new action group called RFL Systems and once you right click any device, you’ll also be able to see the action (see…

SCCM 2012 R2 – SW Update Group to Baseline

Hi All, have you ever tried to create a baseline based on a Software Update? Yes, it is really painful as there is no “good” way to do it. The default screen is like the following and as you can see, there is not easy way to do it and you cannot filter per baseline… based on this, i’ve created a powershell script as well as a console extension that will allow you to create a baseline based on a sw update group. To do it, download the CreateBaseline zip file, extract and add the files to the following places: RFL-SUP Deployment Group.xml to <CM12R2Console Installation Path)\XmlStorage\Extensions\Actions\2853886b-cce5-4ed4-af43-df69efb2e7d8 and <CM12R2Console Installation Path)\XmlStorage\Extensions\Actions\bb1a22d4-816f-438c-b6e7-51cbc210112f (change the CM12R2Console to the path of the console :)) CreateBaseline.ps1 to C:\Scripts\CM12R2Console on the same computer where you installed the CM12 R2 Console Once you have done it, restart the console and you’ll see a new action group called RFL Systems and once…

SCCM 2012 – Group Discovery

Hi All, Have you ever wondered what the group discovery does? Well…it is easy, it discover Groups, isn’t it? Well, many people, including myself, had this impression, as on CM07 it only discovered extra information regarding existing resources. let me give you a bit of history about this…few days ago a client of mine called in asking me why their CM database was always full of “non-wanted” computer records if they have the system discovery disabled. While troubleshooting, i saw the below information on 1 of the “non-wanted” resources: Agent Name is SMS_AD_SECURITY_GROUP_DISCOVERY_AGENT Well..this was a bit odd for me, and looking at the documentation (http://technet.microsoft.com/en-us/library/gg712308.aspx) i could see this: Use Configuration Manager Active Directory Group Discovery to search Active Directory Domain Services (AD DS) to identify the group memberships of computers and users. and why it is discovering computers? i went to the Group discovery properties and they were using the…

SCCM 2012 R2 – Free disk space report

Hi All, a customer of mine called today and asked my help to build a report that shows machines with low disk space… it is a really simple and i had already the query all machines with Low Disk space (below 10%) as well as critical disk space (below 1GB). I created the report and while testing, it was not working. Looking on the database, the FreeSpace0 column was null… an easy fix was to change the hardware inventory, logical disk class and selecting Free Space (MB). Once it was done and the client sent the new inventory, the report started working SQL Query: SELECT distinct SYS.Name, LDISK.Description0, LDISK.DeviceID0, LDISK.VolumeName0, LDISK.FileSystem0, LDISK.Size0, LDISK.FreeSpace0, sys.SiteCode FROM v_FullCollectionMembership_Valid SYS join v_GS_LOGICAL_DISK LDISK on SYS.ResourceID = LDISK.ResourceID WHERE LDISK.DriveType0 = 3 AND ((LDISK.FreeSpace0 <= ((LDisk.Size0 * 10)/100)) or (LDISK.FreeSpace0 <= 1024)) and sys.CollectionID = ‘SMS00001’  

SCCM 2012 R2 & MDT 2013 – Pausing task sequence

Hi All, have you ever wonder why and how to pause a task sequence?? well…the why is simple, troubleshooting…but how, that is the complicated part… Actually not, and if you stop a bit and think, there are many ways: 1- create a script to wait many minutes (lets say, 120min), i think this is enough to do any troubleshooting 🙂 2- create a script to look for something (ie. a file) and when the file exist, it deletes and continue… 3- create a script… 4- create a script… as you can see, everything is down to a script, unfortunately, there is no “out-of-the-box” step to do it… but now that you know how to pause a TS (ok, you still don’t know how to create a script, do you?) let’s look at the options 1- create a script that waits for 120min… and if you finish your troubleshooting before?!?!!? you…