You are browsing the archive for ConfigMgr 2007.

ConfigMgr : Windows 7 SP1 and Windows Server 2008 R2 SP1 now Supported

5:47 am in ConfigMgr, ConfigMgr 2007, ConfigMgr 2007 R2, ConfigMgr SP2, ConfigMgr2007 R3, R3, SCCM 2007, SCCM 2007 R2, SCCM 2007 R3, SCCM 2007 SP2, Windows 7, Windows 7 SP1, Windows7 by Kenny Buntinx [MVP]

Configuration Manager 2007 SP2, R2 and R3 supports Windows 7 SP1 and Windows Server 2008 R2 SP1:

System Center Configuration Manager 2007 SP2, R2 and R3 now supports the Windows 7 SP1 and Windows Server 2008 R2 SP1 operating systems for client installation. The Configuration Manager console and branch distribution point are supported on these platforms. Windows Server 2008 R2 SP1 is supported for all core and feature-specific site system roles.

The following software update is required to add Windows 7 SP1 and Windows Server 2008 R2 SP1 to the Supported Platforms list:

  • KB 2489044 – Update rollup for System Center Configuration Manager 2007 SP2 to add support for Windows Server 2008 R2 SP1 and Windows 7 SP1 clients
  • KB 977203 – User state migration is unsuccessful on a SCCM 2007 SP1 client or on a SCCM 2007 SP2 client

 

Hope it Helps ,

Kenny Buntinx

Configmgr 2007 and how to automate Windows 7 Backup Activation thru a task sequence

11:43 am in ConfigMgr, ConfigMgr 2007, ConfigMgr 2007 R2, ConfigMgr SP2, ConfigMgr2007 R3, Deployment, Installation, Operating System Deployment, OSD, sccm, SCCM 2007, SCCM 2007 R2, SCCM 2007 R3, SCCM 2007 SP2, sccm2007, Task Sequence, Windows 7, Windows 7 SP1 by Kenny Buntinx [MVP]

One of my customers is using a GHOST principle on their laptops, to restore an original image from a restore partition. This partition is right now visible for the end user. Now that we are migrating towards SCCM we want to do the same thing thru Configmgr.

To accomplish this, we only focus on the integrated windows 7 backup tools as they have a native build in wizard to restore as well .

Scenario to accomplish :

  1. We want to do a full backup at the end of the deployment task sequence , including the standard applications and save it locally. This one allows you to restore the machine as it was at the end of the task sequence.
  2. We want to let any user restore that image on an easy way with helpdesk support . Mainly this scenario is for end users that are sitting somewhere in the “bush bush” and no direct connection to a nearby office .
  3. We want to schedule for those kind of users a backup when he is working on his machine , based on VSS technology . ( impossible with ghost ).

Steps to accomplish the scenario :

First of all I want to thank Kim Oppalfens and George Simons ( both MVP ConfigMgr ) for helping me accomplish this scenario. We had some offline discussions to accomplish this scenario and it is not yet perfect .

The initial process we have in mind during the Operating system deployment phase when we stage an image to a machine for a user:

1. Creating the necessary partitions :

  • System partition (+/- 500 mb) that will hold the bootloader (think of Bitlocker ) and the WINRE environment. ( hidden )
  • C:\ OS partition
  • D:\ Data partition
  • E:\ IMAGE system image backup partition (drive letter will be removed in the process)

2. Create local admin user f.e. RECOVERY and added the local admins group. We have tested this with a power user or backup operator , however you need local admin rights to restore the image. For security purposes we investigate later to have a daily/weekly/monthly password changer based upon an algorithm.

3. Run the windows 7 built-in WBADMIN tool, with the following parameters : “wbadmin START BACKUP –BackupTarget:E: -include:c: -AllCritical –Quiet”

4. Remove drive letter of the “Image”Partition , in this case E:\ 

 

We don’t care about hiding the volume. Standard users have no permissions to reassign a drive letter, and hence won’t be able to see or use the partition. That is more than enough for us. Hiding the partition just complicates matters for us from an admin perspective.

The additional process we could have in mind is to send down a task sequence to back up his system when a user requests it. This could be performed with or without  any user interaction.

Task Sequence example :

</group>
      <group name="Backup" description="">
        <step type="SMS_TaskSequence_RunCommandLineAction" name="Create Admin Recovery User" description="" timeout="900" runIn="WinPEandFullOS" successCodeList="0 3010">
          <action>smsswd.exe /run: net user recovery Helpdesk123 /add</action>
          <defaultVarList>
            <variable name="CommandLine" property="CommandLine" hidden="true">net user recovery Helpdesk123 /add</variable>
            <variable name="SMSTSDisableWow64Redirection" property="DisableWow64Redirection">false</variable>
            <variable name="_SMSTSRunCommandLineAsUser" property="RunAsUser">false</variable>
            <variable name="SuccessCodes" property="SuccessCodes" hidden="true">0 3010</variable>
          </defaultVarList>
        </step>
        <step type="SMS_TaskSequence_RunCommandLineAction" name="Add Recovery User to Local Admin" description="" timeout="900" runIn="WinPEandFullOS" successCodeList="0 3010">
          <action>smsswd.exe /run: net localgroup "Administrators" recovery /add</action>
          <defaultVarList>
            <variable name="CommandLine" property="CommandLine" hidden="true">net localgroup "Administrators" recovery /add</variable>
            <variable name="SMSTSDisableWow64Redirection" property="DisableWow64Redirection">false</variable>
            <variable name="_SMSTSRunCommandLineAsUser" property="RunAsUser">false</variable>
            <variable name="SuccessCodes" property="SuccessCodes" hidden="true">0 3010</variable>
          </defaultVarList>
        </step>
        <step type="SMS_TaskSequence_RunCommandLineAction" name="Create Backup" description="" timeout="1200" runIn="WinPEandFullOS" successCodeList="0 3010">
          <action>smsswd.exe /run: wbadmin START BACKUP -BackupTarget:e: -include:c: -AllCritical -Quiet</action>
          <defaultVarList>
            <variable name="CommandLine" property="CommandLine" hidden="true">wbadmin START BACKUP -BackupTarget:e: -include:c: -AllCritical -Quiet</variable>
            <variable name="SMSTSDisableWow64Redirection" property="DisableWow64Redirection">false</variable>
            <variable name="_SMSTSRunCommandLineAsUser" property="RunAsUser">false</variable>
            <variable name="SuccessCodes" property="SuccessCodes" hidden="true">0 3010</variable>
          </defaultVarList>
        </step>
        <step type="SMS_TaskSequence_RunCommandLineAction" name="Hide Drive Letter" description="" timeout="900" runIn="WinPEandFullOS" successCodeList="0 3010">
          <action>smsswd.exe /run: Mountvol e: /D</action>
          <defaultVarList>
            <variable name="CommandLine" property="CommandLine" hidden="true">Mountvol e: /D</variable>
            <variable name="SMSTSDisableWow64Redirection" property="DisableWow64Redirection">false</variable>
            <variable name="_SMSTSRunCommandLineAsUser" property="RunAsUser">false</variable>
            <variable name="SuccessCodes" property="SuccessCodes" hidden="true">0 3010</variable>
          </defaultVarList>
        </step>
      </group>

End user experience :

1.When your Windows 7 machine gets broken it will automatically jump to the window shown below , otherwise Press F8 during boot :

image

2. When you start “Repair your computer” , WinRe will start up .

image

3. Once “WinRe”is loaded it will ask for your keyboard layout :

image

4. Fill in your credentials

image

5. Select “System Image Recovery”

image

6. Select the image that you want to restore and wait until the process has been completed .

image

 

Remarks / Improvements to make :

  1. The complete process works only once with a hidden drive letter…….until you do the restore. After the restore the drive letter is back and then a user could mess around and delete stuff. I have tried to remove the driveletter before running wbadmin , but I have no success to use the GUID as my drive is MBR and not GPT. Anyway the basic principle works .
  2. User security : We need a algorithm to change the custom local admin restore user  on a daily/weekly/monthly basis as a default password just isn’t secure enough .
  3. Now I am testing to get a function key on a Lenovo to do his magic ( Press F5 and it launches auto magically the recovery environment ) . More on that in a later blog post .

 

Hope it Helps ,

Kenny Buntinx

Configmgr 2007 : Windows 7 and Windows 2008 R2 Service Pack 1 (SP1) supportability

9:22 pm in ConfigMgr, ConfigMgr 2007, ConfigMgr 2007 R2, ConfigMgr SP2, ConfigMgr2007 R3, FEP2010, Operating System Deployment, OSD, R3, sccm, SCCM 2007, SCCM 2007 R2, SCCM 2007 R3, SCCM 2007 SP2, sccm2007, Windows 7 SP1 by Kenny Buntinx [MVP]

Hi Guys ,

 

News is traveling fast about the availability of Service Pack 1 (SP1) for Windows 7 and Windows 2008 R2, as it is already available on TechNet ,  MSDN and MVLS site .

 

However it is NOT certified and therefore NOT SUPPORTED for Configuration Manager 2007 SP2 R2 or R3 yet by the Product Group. If you already use it in production , don’t expect Premier Support to help you .

Certification and support statements will take official 90 days after Release To Web ! However , if it is sooner , I will let you know .

 

Now my personal experiences :

 

In our Lab environment everything works OK along with FEP 2010 client, even in our Acceptance Production environment where 500 clients are sitting , but we aren’t moving unless we have an official support statement !

 

Hope it Helps

 

Kenny Buntinx

Mpsetup.log: Setup was unable to create ccm_incoming on a Windows 2008 (non R2) Box after installing a patch

6:40 pm in ConfigMgr, ConfigMgr 2007, ConfigMgr 2007 R2, ConfigMgr SP2, ConfigMgr2007 R3, MP, R3, sccm, SCCM 2007, SCCM 2007 R2, SCCM 2007 R3, SCCM 2007 SP2, sccm2007 by Kenny Buntinx [MVP]

Issue : During a necessary patch installation it denied installing the Configmgr client hotfix package on the site server because it told us another install was already occurring . After rebooting the server , the server had issues with reinstalling the component called the Management point . It always failed with error 1603 ( Install Failed , unknown error ).

The following error was found in the eventlog or MPMSI.log  :

Error 25006. Setup was unable to create the Internet virtual directory CCM_Incoming.The error code is 800CC801
CustomAction CcmCreateIISVirtualDirectories returned actual error code 1603

 

Note that the failures are observed on Standard, Enterprise, x86, and x64 versions. The failures are observed in the following circumstances:

  • After performing a site repair of a site server running on Windows 2008 with a local MP already installed
  • Initial install of an MP on a machine running Windows 2008
  • After removing and attempting to reinstall an MP on a machine running Windows 2008

 

Steps to we tried to resolve the issue :

· Looked at the error and it seemed related to a bits error and task scheduler service .We looked at the permissions and if the task scheduler service was started. Everything was green so , no luck .

· I uninstalled the SCCM client as we have seen other customers suffering reinstalling Management points on their servers when sitting on the same box . No Luck either .

· My last resort was a BITS corruption , de-installed BITS and the reinstalled it . Solved the issue !.

 

At the same time I de-installed BITS , I found a quick fix article describing the exact issue : http://support.microsoft.com/default.aspx?scid=kb;en-us;2419559&sd=rss&spid=12769

This is problem described is only valid for Windows 2008 environments , not for Windows 2008 R2 . Took us a half a day figuring out what was going on .

 

Solution :

As of right now, the easiest way to resolve this issue is to remove and reinstall the BITS component. If the ConfigMgr 2007 Management Point role was already installed then it will also be necessary to remove and reinstall that role once you’ve done the same with BITS.

You could find the same answer on http://support.microsoft.com/default.aspx?scid=kb;en-us;2419559&sd=rss&spid=12769

 

Hope it Helps ,

Kenny Buntinx

ConfigMgr on xendesktop with the usage of provisioning server : Unique GUID issue and the smscfg.ini

8:25 am in citrix, ConfigMgr, ConfigMgr 2007, ConfigMgr 2007 R2, ConfigMgr 2012, ConfigMgr SP2, ConfigMgr V.next, configmgr2007, ConfigMgr2007 R3, Deployment, PVS, R3, sccm, SCCM 2007, SCCM 2007 R2, SCCM 2007 R3, SCCM 2007 SP2, SCCM 2012, SCCM v.Next, sccm2007, Xenapp, Xendestop by Kenny Buntinx [MVP]

Have you ever tried to manage your XENDesktop or PVS target devices using Configuration Manager in combination with an App-V integrated scenario ? I have a few customers that started to use Citrix Provisioning services and where faced with some issues when they wanted to pre-cache there App-V packages with Configmgr 2007 SP2 R3 . In some ways, managing the devices using SCCM is irrelevant due to the nature of how PVS works, but I’ve run into a few companies that insist on using SCCM for inventory management  ,  License reporting and virtual application targeting. The ConfigMgr client, is not designed to work well in a streamed OS environment. 

Citrix Provisioning Services allows for multiple servers to stream their boot disk from the same master image (vDisk). During the boot process, PVS will make sure each server has a unique SID and dynamically apply the computername together with some other tasks to make those systems unique.

If you tried installing the SCCM client on a PVS image, you will notice that SCCM shows new machines with the same name every time a PVS target device reboots in standard mode. This is because the SCCM client changes the GUID when an image is pushed to new hardware. ConfigMgr  uses the GUID to keep track inside his database.

ConfigMgr uses an ID that is generated on the Client to identify a machine inside the ConfigMgr hierarchy. This ID, also known as SMS GUID is generated during ConfigMgr Client installation.
An Algorithm, which combines the Timestamp (Time of ConfigMgr Client Installation) and the Universally Unique Identifier (UUID) is used to generate a unique Identifier.
A Client generates a new SMS GUID if the following things change

  • the SMBIOS serial number
  • the Machine SID
  • the Hardware ID (see appendix)

Appendix
Criteria for Hardware ID monitoring:

  • FirstDriveSerial
  • MACAddress
  • CDROMDevice
  • DisplayAdapter
  • HwidVersion
  • ProcessorSerial
  • DiskDevice
  • SCSIAdapter
  • DiskAdapter
  • ProcessorType
  • RAMSizeMb
  • Dockable

 

This GUID is stored in the c:\windows\SMSCFG.ini file. You can read this value out by a vbscript

The problem we see is in a Citrix Provisioned desktop, this file comes up with a duplicate GUID each time. This causes the SCCM client t re-generate the GUID and create a new file on every boot.
You can find this information here http://support.microsoft.com/kb/837374

The Fix ( I got this content and script from Rick Rohne – citrix guru )

In order to persist the computers GUID, you must be using “cache to targets hard drive” when you place your systems in standard mode. We will use the hard drive to save the SCCMCFG.ini file after each reboot.
This also means that "cache to RAM" or "cache to Server" will not be sufficient because the cache will be purged on every reboot.

Step 1 :

To resolve this, first, you have to run a script when switching from private mode to standard mode. This is done by the XENDesktop Admin after he modifies the default image…

This script stops the SCCM service and deletes the c:\windows\SCCMCFG.ini file.

‘————————— SCCM Cleanup.vbs————————————–
‘Stop SCCM client strServiceName = "CCMExec"
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Set colListOfServices = objWMIService.ExecQuery("Select * from Win32_Service Where Name =’" & strServiceName & "’")
For Each objService in colListOfServices objService.StopService() Next ‘ Cleanup SCCM Set fso = CreateObject("Scripting.FileSystemObject") Set aFile = fso.GetFile("c:\windows\SMSCFG.ini") aFile.Delete
—————————————————————————————-

Step 2 :

Now, you have to run a shutdown script and startup script that basically places the ‘c:\windows\SCCMCFG.ini’ file on the Cache drive on shut down. When the computer boots up, it will check to see if the file exists on the cache drive.

If it does not, the SCCM client will register itself to the SCCM server and create a new c:\windows\SCCMCFG.ini file. Upon shutdown, the c:\windows\SCCMCFG.ini file is copied to the cache drive.

This is a simple batch file script that can be loaded into active directory as a computer startup script for the OU where XENDesktop computers reside.

Startup Script

IF EXIST G:\SMSCFG.ini COPY G:\SMSCFG.ini C:\Windows\SMSCFG.ini /y > c:\smserror.txt

Shutdown Script

COPY c:\windows\SMSCFG.ini G:\SMSCFG.ini /y > g:\smserror.txt

Conclusion :

PVS images that are managed by SCCM will show up as unique entries in the SCCM database. This will at least make sure that systems will keep their own SCCM computer record and not generate a new one on every boot, but still it requires management overhead as there is no way to tell that those systems will get the same SCCM configuration / advertisements if something will go wrong in the middle of this process !

Therefore I expect since Citrix and Microsoft SCCM are allianced together in the V-Alliance , we would also like to see that the integration between ConfigMgr 2010 and Citrix Provisioning services  and that there will be "PVS-Awareness" in Configmgr 2012.

 

Hope it Helps ,

Kenny Buntinx

FEP 2010 with ConfigMgr Integration : Computers are no longer accessible remotely

1:25 pm in ConfigMgr, ConfigMgr 2007, ConfigMgr 2007 R2, ConfigMgr SP2, configmgr2007, ConfigMgr2007 R3, FE, FEP, FEP2010, Installation, R3, SCCM 2007, SCCM 2007 R2, SCCM 2007 R3, SCCM 2007 SP2 by Kenny Buntinx [MVP]

Hi ,

When migrating slowly at a customer from Symantec Endpoint protection to FEP 2010 we encountered the following issue :

After the FEP client has been installed, the computer is no longer remotely accessible , even with RC.exe from System Center Configuration Manager

Problem Description : In some cases, after the FEP client has been installed, the computer is no longer remotely accessible using any form of remote control utility or Computer Management tools, including but not limited to Windows Computer Management, ConfigMgr Remote Control utility, DameWare, VNC. The cause has been found to be the Windows Firewall/ICS service that cannot be started. When an attempt is made to start the service, the resulting error is: Error 0x80004015: The class is configured to run as a security id different from the caller.

Possible solutions ( I say possible because it was linked to our environment) :

  • This appears to be the same error as reported in MS Support Article ID 892199, applicable to Windows XP SP2. The FEP client however is only installed on XP SP3 machines. When we used method 1 of the support article applied on the conflicting machine, the issue is resolved and is remotely accessible again. However we where not convinced and digged some deeper into it

 

  • I went with the default descriptor D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)

The Authentic Users group only gets read permissions, not start/stop permissions as I feared, so I’m fine with that. I just left out the Power Users group as it’s not used in our environment.

It is imperative that you test this on one or two systems before rolling it out, and make sure it works well in your environment. I used this KB to identify Local Service and Network Service: http://support.microsoft.com/kb/243330

     

    Hope it Helps ,

    Kenny Buntinx

Configmgr 2007 OSD : Using Lenovo Update Retriever to install all your drivers without importing them in the ConfigMgr driver catalog

11:00 pm in ConfigMgr, ConfigMgr 2007, ConfigMgr 2007 R2, ConfigMgr SP2, configmgr2007, ConfigMgr2007 R3, Deployment, Drivers, Installation, Operating System Deployment, OSD, sccm, SCCM 2007, SCCM 2007 R2, SCCM 2007 R3, SCCM 2007 SP2, sccm2007, script, Task Sequence, Windows 7 by Kenny Buntinx [MVP]

Did you also think that driver management  in OSD could be more simplified ? For example when you have Lenovo devices , you need to also install a lot of “bad” drivers en also in a very specific way or features such as “hotkeys”does not work .Let’s look at the process right now:

1. Search drivers from the internet manually

2. Unpack them in a correct folder structure

3. Import drivers and categorize

4. Handle duplicate drivers

Problems often seen :

1. Not all drivers work with the import ( there are drivers that simply do not work with the export method , they need to run thru setup.exe ) HP is a king in that area with the sound card & Quick launch buttons. This means that the admin need to create packages , programs and multiple steps in the TS to let it work.

2. For getting some drivers you need to install the vendor msi on your test laptop , go to the install folder and find the extracted drivers there.After that you could import.

3. HP & Lenovo needs certain additional software such as HP quick launch , HP power manager , Lenovo Hotkeys , Lenovo think vantage , etc . A lot of those packages needs to be installed in a very specific order or it just don’t work .

4. You test your deployment and damn it seems you forgot 2 drivers . Find out by HWguid , download and import again …

 

Lenovo Update Retriever – Thinstaller solution :

If you don’t want to spent hours on searching, downloading and importing drivers for you LENOVO computer when going to build a Win7 image , read on . I have found a better way to accomplish this with thanks to Karel Serroels.

It normally takes so much time for an admin , while with the HP / IBM solution it is a 5 minutes job per HW model :

 

1. Install and run the Lenovo update retriever, select your model and software /drivers you want to install , download the drivers into a pre-defined file share . Nice , quick and easy .

2. Create a package with the Lenovo Thinstaller source files , copy the Lenovo Thinstaller files to the local disk & run it thru your TS

 

The advantage here is that I as an admin does not need to worry about the right install sequence , prerequisites , number of needed drivers or even OS type .The Thinstaller tool will do it for you .

Prerequisites :

Get the following software’s online from the Lenovo site as you will need it

  1. Link thininstaller: http://www-307.ibm.com/pc/support/site.wss/TVAN-ADMIN.html#ti
  2. Link update retriever: http://www-307.ibm.com/pc/support/site.wss/TVAN-ADMIN.html#ur

 

Step 1 : Install Lenovo Update Retriever on your server and follow instructions to create a share for the repository , etc .

image

Step 2 : Launch the Lenovo Update Retriever and select your Model an Operating System. Download all files to the repository.

image

Step 3 : Modify your Task Sequence and add Run Thinstaller Trustzone. It needs to work with Dot.net 2.0 .

If you run Lenovo Thinstaller via Configuration Manager task sequence , you cannot run the installation program, because it is a .NET executable and the default policy is to disallow running it from a network share or distribution point. You must therefore change the  following ipadress and sharename with the one from your environment!

image

Step 4 : Create the Lenovo thinstaller package in Configuration Manager.

image

Step 5 : Copy the Lenovo Thinstaller directory to C:\Windows\Thinstaller

image

Step 6 : Run Thinstalle with the following commend line . You must therefore change the  following ipadress and sharename with the one from your environment!

image

Step 7 : Remove the Thinstaller source files . Do a nice cleanup .

image

 

There you go .. The only disadvantage from using this , is the fact that your sourcefiles need to be always to one spot . You can solve this by using Sysvol , DFS or other technologies . However , Most companies have a team that will build the initial image on site and than replicate the images across the company .

Hope it helps ,

Kenny Buntinx.

OSD Deployment : TSMBOOTSTRAP.exe – Corrupt FILE : The file or directory C:\_SMSTaskSequence is corrupt ad unreadable. Please run the CHKDSK utility.

9:31 am in ConfigMgr, ConfigMgr 2007, ConfigMgr 2007 R2, ConfigMgr SP2, configmgr2007, ConfigMgr2007 R3, Deployment, migration, OSD, sccm, SCCM 2007, SCCM 2007 R2, SCCM 2007 R3, SCCM 2007 SP2, sccm2007, Task Sequence, Windows 7 by Kenny Buntinx [MVP]

Issue:

Recently when I tried to PXE boot to image a machine, when I boot and select my task sequence , I am given a TsmBootstrap.exe error. 

——- The error ——-

The file or directory c:\_SMSTaskSequence is corrupt and unreadable.  Please run the Chkdsk utility.

——- The error ——-

Now, I can’t deploy any task sequence from boot media without getting the error.

 

Solution :

The solution for the BAD computer is with “diskpart” to remove all partitions and create a new small with a clean bootable partition ‘C’.

The problem for the bad computer is that the folder C:\_SMSTaskSequence is already present, but it has gone corrupt and I didn’t had the permission to delete or rename this folder.

After erasing all partitions, it works again like a charm.

 

Hope it Helps ,

 

Kenny Buntinx

How to retrieve the Lenovo Modelname (Full name) instead of TypeNumber within Configmgr

2:56 pm in ConfigMgr, ConfigMgr 2007, ConfigMgr 2007 R2, ConfigMgr Dashboards, ConfigMgr Reporting, ConfigMgr SP2, configmgr2007, ConfigMgr2007 R3, Reporting, sccm, SCCM 2007, SCCM 2007 R2, SCCM 2007 R3, SCCM 2007 SP2, SCCM Dashboards, sccm2007, SQL Reporting services by Kenny Buntinx [MVP]

A customer of mine wanted a readable report on the different machine that existed in his country.

Right now it apears as the typenumber , witch frankly a manager does not care about and I can totally understand it.

You will see what I mean . This is what you get if you use the default report :

image

This is what management wants to see :

image

To get to this result , please follow the guidelines below :

Now to tried and  find out where it was stored  , we used wmiexplorer . We show you where to find it below :

wmi

Lenovo’s store their “ModelName” in a different WMI class that others (Win32_ComputerSystemProduct as opposed to Win32_ComputerSystem ).  By default that class is not enabled in the SMS_DEF.MOF file.

Go to your SMS_DEF.MOF file and enable it as followed

<div>
<div>
[ SMS_Report 
SMS_Group_Name ("Computer System Product")
<!--CRLF-->
<pre><span style="color: #606060;">   3:</span>   SMS_Class_ID   (<span style="color: #006080;">"MICROSOFT|COMPUTER_SYSTEM_PRODUCT|1.0"</span>) ]</pre>
<pre><span style="color: #606060;">   4:</span></pre>
<pre><span style="color: #606060;">   5:</span> <span style="color: #0000ff;">class</span> Win32_ComputerSystemProduct : SMS_Class_Template</pre>
{
[SMS_Report (TRUE)     ]
string</span>     Caption;
<pre><span style="color: #606060;">   9:</span>     [SMS_Report (<span style="color: #0000ff;">TRUE</span>)     ]</pre>
<pre><span style="color: #606060;">  10:</span>         <span style="color: #0000ff;">string</span>     Description;</pre>
<pre><span style="color: #606060;">  11:</span>     [SMS_Report (<span style="color: #0000ff;">TRUE</span>), key]</pre>
<pre><span style="color: #606060;">  12:</span>         <span style="color: #0000ff;">string</span>     IdentifyingNumber;
<pre><span style="color: #606060;">  13:</span>     [SMS_Report (<span style="color: #0000ff;">TRUE</span>), key]</pre>
<pre><span style="color: #606060;">  14:</span>         <span style="color: #0000ff;">string</span>     Name;</pre>
<pre><span style="color: #606060;">  15:</span>     [SMS_Report (<span style="color: #0000ff;">TRUE</span>)     ]</pre>
<pre><span style="color: #606060;">  16:</span>         <span style="color: #0000ff;">string</span>     SKUNumber;</pre>
<pre><span style="color: #606060;">  17:</span>     [SMS_Report (<span style="color: #0000ff;">TRUE</span>)     ]</pre>
<pre><span style="color: #606060;">  18:</span>         <span style="color: #0000ff;">string</span>     UUID;</pre>
<pre><span style="color: #606060;">  19:</span>     [SMS_Report (<span style="color: #0000ff;">TRUE</span>)     ]</pre>
<pre><span style="color: #606060;">  20:</span>         <span style="color: #0000ff;">string</span>     Vendor;</pre>
<pre><span style="color: #606060;">  21:</span>     [SMS_Report (<span style="color: #0000ff;">TRUE</span>), key]</pre>
<pre><span style="color: #606060;">  22:</span>         <span style="color: #0000ff;">string</span>     Version;</pre>
<pre><span style="color: #606060;">  23:</span> };</pre>

Now that the HW inventory is modified , we still need to update our reporting .Below you will find the code for the report :

Here’s the fun part… win32_computersystemproduct is somehow hard coded into inventory to be resolved into v_gs_client0 , so go look there for the results (once you’ve made the changes)  . Thanks Sherry Kissinger for the tip !!!

<pre><span style="color: #606060;">   1:</span> <span style="color: #0000ff;">select</span>  distinct</pre>
<!--CRLF-->
<pre><span style="color: #606060;">   2:</span>  v_R_System_Valid.ResourceID,</pre>
<!--CRLF-->
<pre><span style="color: #606060;">   3:</span>  v_R_System_Valid.Netbios_Name0 <span style="color: #0000ff;">AS</span> [Computer Name],</pre>
<!--CRLF-->
<pre><span style="color: #606060;">   4:</span>  v_R_System_Valid.Resource_Domain_OR_Workgr0 <span style="color: #0000ff;">AS</span> [Domain/Workgroup],</pre>
<!--CRLF-->
<pre><span style="color: #606060;">   5:</span>  [Top Console User] = <span style="color: #0000ff;">CASE</span></pre>
<!--CRLF-->
<pre><span style="color: #606060;">   6:</span>  <span style="color: #0000ff;">when</span> (v_GS_SYSTEM_CONSOLE_USAGE_MAXGROUP.TopConsoleUser0 <span style="color: #0000ff;">is</span> NULL <span style="color: #0000ff;">or</span> v_GS_SYSTEM_CONSOLE_USAGE_MAXGROUP.TopConsoleUser0 = <span style="color: #008000;">'-1') </span></pre>
<!--CRLF-->
<pre><span style="color: #606060;">   7:</span>  <span style="color: #0000ff;">then</span> <span style="color: #008000;">'Unknown' </span></pre>
<!--CRLF-->
<pre><span style="color: #606060;">   8:</span>  <span style="color: #0000ff;">Else</span> v_GS_SYSTEM_CONSOLE_USAGE_MAXGROUP.TopConsoleUser0</pre>
<!--CRLF-->
<pre><span style="color: #606060;">   9:</span>  <span style="color: #0000ff;">End</span>,</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  10:</span>  v_GS_OPERATING_SYSTEM.Caption0 <span style="color: #0000ff;">AS</span> [Operating System],</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  11:</span>  v_GS_OPERATING_SYSTEM.CSDVersion0 <span style="color: #0000ff;">AS</span> [Service Pack Level],</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  12:</span>  v_GS_SYSTEM_ENCLOSURE_UNIQUE.SerialNumber0 <span style="color: #0000ff;">AS</span> [Serial Number],</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  13:</span>  v_GS_SYSTEM_ENCLOSURE_UNIQUE.SMBIOSAssetTag0 <span style="color: #0000ff;">AS</span> [Asset Tag],</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  14:</span>  v_GS_COMPUTER_SYSTEM.Manufacturer0 <span style="color: #0000ff;">AS</span> [Manufacturer],</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  15:</span>  v_GS_COMPUTER_SYSTEM.Model0 <span style="color: #0000ff;">AS</span> [Model],</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  16:</span>  v_GS_Client0.Version0 <span style="color: #0000ff;">AS</span> [ModelName],</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  17:</span>  v_GS_X86_PC_MEMORY.TotalPhysicalMemory0 <span style="color: #0000ff;">AS</span> [Memory (KBytes)],</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  18:</span>  v_GS_PROCESSOR.NormSpeed0 <span style="color: #0000ff;">AS</span> [Processor (GHz)],</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  19:</span>  (<span style="color: #0000ff;">Select</span> sum(Size0)</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  20:</span>  from v_GS_LOGICAL_DISK inner join v_FullCollectionMembership <span style="color: #0000ff;">on</span> (v_FullCollectionMembership.ResourceID = v_GS_LOGICAL_DISK.ResourceID )</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  21:</span>   where v_GS_LOGICAL_DISK.ResourceID =v_R_System_Valid.ResourceID <span style="color: #0000ff;">and</span></pre>
<!--CRLF-->
<pre><span style="color: #606060;">  22:</span>   v_FullCollectionMembership.CollectionID = @CollectionID) <span style="color: #0000ff;">As</span> [Disk Space (MB)],</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  23:</span>  (<span style="color: #0000ff;">Select</span> sum(v_GS_LOGICAL_DISK.FreeSpace0)</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  24:</span>  from v_GS_LOGICAL_DISK inner join v_FullCollectionMembership <span style="color: #0000ff;">on</span> (v_FullCollectionMembership.ResourceID = v_GS_LOGICAL_DISK.ResourceID )</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  25:</span>  where v_GS_LOGICAL_DISK.ResourceID =v_R_System_Valid.ResourceID <span style="color: #0000ff;">and</span> v_FullCollectionMembership.CollectionID = @CollectionID) <span style="color: #0000ff;">As</span> [Free Disk Space (MB)]</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  26:</span>  from v_R_System_Valid</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  27:</span>  inner join v_GS_OPERATING_SYSTEM <span style="color: #0000ff;">on</span> (v_GS_OPERATING_SYSTEM.ResourceID = v_R_System_Valid.ResourceID)</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  28:</span>  left join v_GS_SYSTEM_ENCLOSURE_UNIQUE <span style="color: #0000ff;">on</span> (v_GS_SYSTEM_ENCLOSURE_UNIQUE.ResourceID = v_R_System_Valid.ResourceID)</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  29:</span>  inner join v_GS_COMPUTER_SYSTEM <span style="color: #0000ff;">on</span> (v_GS_COMPUTER_SYSTEM.ResourceID = v_R_System_Valid.ResourceID)</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  30:</span>  inner join v_GS_Client0 <span style="color: #0000ff;">on</span></pre>
<!--CRLF-->
<pre><span style="color: #606060;">  31:</span> ( v_GS_Client0.ResourceID = v_R_System_Valid.ResourceID)</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  32:</span>  inner join v_GS_X86_PC_MEMORY <span style="color: #0000ff;">on</span> (v_GS_X86_PC_MEMORY.ResourceID = v_R_System_Valid.ResourceID)</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  33:</span>  inner join v_GS_PROCESSOR <span style="color: #0000ff;">on</span> (v_GS_PROCESSOR.ResourceID = v_R_System_Valid.ResourceID)</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  34:</span>  inner join v_FullCollectionMembership <span style="color: #0000ff;">on</span> (v_FullCollectionMembership.ResourceID = v_R_System_Valid.ResourceID)</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  35:</span>  left  join v_Site <span style="color: #0000ff;">on</span> (v_FullCollectionMembership.SiteCode = v_Site.SiteCode)</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  36:</span>  inner join v_GS_LOGICAL_DISK <span style="color: #0000ff;">on</span> (v_GS_LOGICAL_DISK.ResourceID = v_R_System_Valid.ResourceID) <span style="color: #0000ff;">and</span> v_GS_LOGICAL_DISK.DeviceID0=SUBSTRING(v_GS_OPERATING_SYSTEM.WindowsDirectory0,1,2)</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  37:</span>  left join v_GS_SYSTEM_CONSOLE_USAGE_MAXGROUP <span style="color: #0000ff;">on</span> (v_GS_SYSTEM_CONSOLE_USAGE_MAXGROUP.ResourceID = v_R_System_Valid.ResourceID)</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  38:</span>  Where v_FullCollectionMembership.CollectionID = @CollectionID</pre>
<!--CRLF-->
<pre><span style="color: #606060;">  39:</span>  Order by v_R_System_Valid.Netbios_Name0</pre>
<!--CRLF-->

Hope it Helps ,

Kenny Buntinx

Belgian System Center Day : ConfigMgr R3 – Lessons learned from the field Presentation online

8:39 pm in Belgian System Center Day, ConfigMgr, ConfigMgr 2007, configmgr2007, ConfigMgr2007 R3, R3, sccm, SCCM 2007 R3 by Kenny Buntinx [MVP]

Hi there ,

I have recently deployed Configuration Manager 2007 RTM in production at my TAP customer. Those who attended my Presentation at the Belgian System Center Day “http://scug.be/blogs/sccm/archive/2010/09/30/announcement-system-center-day-in-belgium.aspx” have seen already the best practices & lessons learned .

 

clip_image001

 

I want to thank everyone that has attended our event as it was a great success.

The presentation and the links to the recordings could be viewed by clicking on the following link below :

 

kennyscug

 

http://technet.microsoft.com/nl-nl/edge/system-center-day-configuration-manager-r3-lessons-learned-from-the-field.aspx

 

Hope it Helps ,

 

Kenny Buntinx