ConfigMgr : OSD : How To Create a Bootable USB Windows 7 Build Disk



The following are required to build the Windows 7 USB Media:

  • Windows 7 Machine
  • USB Removable Drive


Step by Step: How to prepare the USB

The USB device must be prepared prior to generate the stand alone media.

  1. On a Windows 7 PC, Insert the USB device and launch the command line in administrator mode
  2. Enter: “Diskpart” from a command line
  3. In disk part, Enter: “List Disk” – to view the disk number
  4. Select the device with the command “Select Disk 1” and substitute the number 1 with the correct device ID on your system. Make sure you select the correct device as the next step WILL DESTROY ALL DATA on the device selected.
  5. Enter: “clean” in the diskpart command line and hit “enter”
  6. Enter “create partition primary” in the diskpart command line and hit “enter”
  7. Enter “select partition 1” in the diskpart command line and hit “enter”
  8. Enter “format quick fs=ntfs” in the diskpart command line and hit “enter”
  9. Enter “active” in the diskpart command line and hit “enter”
  10. Enter “assign” in the diskpart command line and hit “enter”
  11. Enter “exit” in the diskpart command line and hit “enter”


For easy reference please check the below screen shot


Now copy the content  of the ISO .


ConfigMgr : Creating queries, collections and reports for Window Server 2008 Core in System Center Configuration Manager 2007


System Center Configuration Manager 2007 SP2 allows client installation on Windows Server 2008 Core systems* but it does not differentiate between Windows Server 2008 and Windows Server 2008 Core machines in either queries, collections or reports.

* Configuration Manager 2007 SP2 Supported Configurations:

To determine which SKU a particular machine is running, you can use the following command:

wmic OS get OperatingSystemSKU

SKUs for Windows Server 2008:

  • 12 = Windows Server 2008 Datacenter Edition (core)
  • 13 = Windows Server 2008 Standard Edition (core)
  • 14 = Windows Server 2008 Enterprise Edition (core)
  • 40 = Windows Server 2008 Standard Edition without Hyper-V (core)


This field is only present on Windows Vista / Server 2008 upwards.  Running the command above on a Windows XP or Windows Server 2003 computer will result in the following error:

Node – Machine1
Code = 0x80041017
Description = Invalid query
Facility = WMI

NOTE The table and field in SQL are:

Column – OperatingSystemSKU0

In WMI it is:



Property – OperatingSystemSKU

The first step is to modify the sms_def.mof by adding a section in Hardware Inventory to collect the version information from the clients within their WMI repository.  Modify the mof file at \<SCCM Server Install Folder>\inboxes\clifiles.scr\hinv\ sms_def.mof to include the following:

[ SMS_Report     (TRUE),
SMS_Group_Name (“Operating System”),
add >
[SMS_Report (TRUE)     ]
uint32     OperatingSystemSKU;

Once complete, you can do the following to speed up the process of the client reporting this information back to Configuration Manager.

– On the ConfigMgr console: Modify the hardware inventory agent to run at quicker interval.

– On the client: Trigger a ‘hardware inventory cycle’ on the client via the Configuration Manager applet in Control Panel

To verify that the collection took place, open the ConfigMgr admin console and navigate to Computer Management > Collections and right click on the client machine.  Click Start and then Resource Explorer > Hardware and click on Operating System.  A new column named  ‘OperatingSystemSKU’ should appear.

Creating a WQL Query

Once the OS information is being collected, you can use the query below to search for all Windows Server 2008 Core or Windows Server 2008 R2 Core systems only. To query for just Windows Server 2008 you can change %Server 6.% to %Server 6.0% or for Windows Server 2008 R2 you can change it to %Server 6.1%.

select SMS_R_System.Name, SMS_R_System.SMSAssignedSites, SMS_R_System.IPAddresses, SMS_R_System.IPSubnets, SMS_R_System.OperatingSystemNameandVersion, SMS_R_System.ResourceDomainORWorkgroup, SMS_R_System.LastLogonUserDomain, SMS_R_System.LastLogonUserName, SMS_R_System.SMSUniqueIdentifier, SMS_R_System.ResourceId, SMS_R_System.NetbiosName from  SMS_R_System join  SMS_G_System_OPERATING_SYSTEM on SMS_R_System.ResourceID=SMS_G_System_OPERATING_SYSTEM.ResourceID where SMS_R_System.OperatingSystemNameandVersion like “%Server 6.%”
and SMS_G_System_OPERATING_SYSTEM.OperatingSystemSKU IN (12,13,14,40)


Creating a Collection

A new Collection can be created by importing the WQL Query Statement we used above.


Creating a Report

The SQL statement below will search for all unique Windows Server 2008 or Windows Server 2008 R2 machines:

select distinct v_R_System.Name0 as ‘Machine Name’, v_HS_OPERATING_SYSTEM.caption0 as ‘OS Type’, CSDVersion0 as ‘Service Pack Level’, case v_HS_OPERATING_SYSTEM.OperatingSystemSKU0 when 12 then ‘Yes’ when 13 then ‘Yes’ when 14 then ‘Yes’ when 40 then ‘Yes’ else ‘No’ end as ‘Windows Core’ from v_R_System join v_HS_OPERATING_SYSTEM on v_R_System.resourceID = v_HS_OPERATING_SYSTEM.resourceID where v_HS_OPERATING_SYSTEM.OperatingSystemSKU0 is not null

The SQL statement above  will exclude all machines that have NULL in the SKU field and display a column indicating if the machine is Core or not.


source ( my own post ) :

ConfigMgr : OSD : Build failure Troubleshooting and Logs gathering


During the Build process if you encounter any issues you can perform further investigation with the below mandatory information

  • Machine model
  • Error code with snapshot
  • Error stage with snapshot (may be hiding behind the Task Sequence error window)
  • Single system failure OR multiple systems failures
  • Build Failure Logs (as described below)
  • Mention if any HW component has been replaced on the machine

Troubleshooting Steps

  1. Do not restart the system when the build failure occurs and shows the Task Sequence error
  2. Please note the error code with snapshot
  3. Note the error stage – the stage build got failed (may be behind the Task Sequence error window)
  4. Press F8 key for Command Prompt
  5. Refer the below table OSD Logs Path for logs location based on failure stage
  6. Copy all the log files to the USB drive connected to System
  7. Attach the gathered logs with incident / email to us for investigation

OSD Logs Path

Smsts.log is found in different locations depending on the stage of failure:

Build Failure Stage Log file location
WindowsPE, before HDD format x:\windows\temp\smstslog\smsts.log
WindowsPE, after HDD format x:\smstslog\smsts.log
Windows, SCCM agent not installed c:\_SMSTaskSequence\Logs\Smstslog\smsts.log
Windows x64, SCCM agent installed c:\windows\sysWOW64\ccm\logs\Smstslog\smsts.log
Task Sequence completed x64 c:\windows\sysWOW64\ccm\logs\smsts.log

Network Setup and Domain Join

For issues related to Build failure at domain joining step please gather the below logs

% SystemRoot %\debug\netsetup.log