<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Xtreme Deployment &#187; System Center Configuration Manager</title>
	<atom:link href="http://deployment.xtremeconsulting.com/category/system-center-configuration-manager/feed/" rel="self" type="application/rss+xml" />
	<link>http://deployment.xtremeconsulting.com</link>
	<description></description>
	<lastBuildDate>Wed, 14 Jul 2010 08:00:49 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='deployment.xtremeconsulting.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://1.gravatar.com/blavatar/b9093c8c9e93cd7e588b4bcd70ac2032?s=96&#038;d=http://s2.wp.com/i/buttonw-com.png</url>
		<title>Xtreme Deployment &#187; System Center Configuration Manager</title>
		<link>http://deployment.xtremeconsulting.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://deployment.xtremeconsulting.com/osd.xml" title="Xtreme Deployment" />
	<atom:link rel='hub' href='http://deployment.xtremeconsulting.com/?pushpress=hub'/>
		<item>
		<title>Missing XML files when using USMT and ConfigMgr SP2</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/25/missing-xml-files-when-using-usmt-and-configmgr-sp2/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/25/missing-xml-files-when-using-usmt-and-configmgr-sp2/#comments</comments>
		<pubDate>Wed, 25 Nov 2009 20:09:34 +0000</pubDate>
		<dc:creator>tmintner</dc:creator>
				<category><![CDATA[System Center Configuration Manager]]></category>
		<category><![CDATA[USMT]]></category>
		<category><![CDATA[Windows 7]]></category>
		<category><![CDATA[MDT]]></category>
		<category><![CDATA[SCCM]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/2009/11/25/missing-xml-files-when-using-usmt-and-configmgr-sp2/</guid>
		<description><![CDATA[So you just upgraded all of your ConfigMgr 2007 Site Servers to Sp2 and you think you are all ready to deploy Windows 7.&#160; You integrate the latest MDT 2010 integration pieces and walk through the wizard to create your task sequence and create your new USMT 4.0 package.&#160; You then decide to deploy Windows [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&amp;blog=9840217&amp;post=235&amp;subd=tmintner&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So you just upgraded all of your ConfigMgr 2007 Site Servers to Sp2 and you think you are all ready to deploy Windows 7.&#160; You integrate the latest MDT 2010 integration pieces and walk through the wizard to create your task sequence and create your new USMT 4.0 package.&#160; You then decide to deploy Windows 7 to one of your existing Windows XP clients and it should migrate all of the user data and install the new OS…right?&#160; Well after the installation starts it quickly finishes and doesn’t install Windows 7.&#160; After looking through the smsts.log file, you will notice that the task sequence failed on the Capture User State Step with an error message that it cannot find miguser.xml.&#160; Closer examination shows that it is looking for the XML file at the root of the package.&#160; Looking at the contents of the USMT package, you will notice that the XML files are in the X86 folder or X64 folder.&#160; Easy enough to fix, those MDT guys must have pointed the package to the wrong directory.&#160; So you modify the package to point to the X86 folder and try it again.&#160; Does it work?&#160; NO!!&#160; This time it fails because it cannot find scanstate.exe.&#160; So what in the world is wrong?</p>
<p>Configuration Manager SP2 updates all of the executables that ConfigMgr uses for an OS Deployment.&#160; One of the files that is used during a USMT migration is called OSDMigrateUserState.exe.&#160; During an OS Deployment this file will be in one of two places.&#160; For a New Computer deployment the file will be on Windows PE.&#160; If you are doing a Refresh from an existing operating system the file will reside in the client’s local CCM directory.&#160; If you just upgraded your site servers to SP2 the client machines won’t have the upgrade OSDMigrateUserState executable.&#160; Prior to SP2, that executable had no knowledge of USMT 4 and the directory structure change of USMT.&#160; So if you want to use USMT 4 in your ConfigMgr deployments you are going to need to upgrade all of your clients to ConfigMgr Sp2 as well!</p>
<p>This is just one example where mismatched SP1 and SP2 versions on your client machines will cause issues with Windows 7 deployments.&#160; As a best practice always make sure you have SP2 fully deployed to all of your site systems AND all of your client computers before starting a Windows 7 deployment.</p>
<p>&#160;</p>
<p>-Tim Mintner</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/235/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&amp;blog=9840217&amp;post=235&amp;subd=tmintner&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/25/missing-xml-files-when-using-usmt-and-configmgr-sp2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/240858a50784c41cedfbc35048e21064?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tmintner</media:title>
		</media:content>
	</item>
		<item>
		<title>Understanding the MDT Configuration Database Part 1</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/24/understanding-the-mdt-configuration-database-part-1/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/24/understanding-the-mdt-configuration-database-part-1/#comments</comments>
		<pubDate>Tue, 24 Nov 2009 23:11:23 +0000</pubDate>
		<dc:creator>tmintner</dc:creator>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[System Center Configuration Manager]]></category>
		<category><![CDATA[MDT]]></category>
		<category><![CDATA[SCCM]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/2009/11/24/understanding-the-mdt-configuration-database-part-1/</guid>
		<description><![CDATA[The MDT Configuration Database has been around since MDT was called Business Desktop Deployment (BDD).  Since that time there have been numerous blog posts and articles on how to customize the database, extend the database, or use the database in specific ways to solve specific problems.  With all of those articles there doesn’t seem to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&amp;blog=9840217&amp;post=234&amp;subd=tmintner&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The MDT Configuration Database has been around since MDT was called Business Desktop Deployment (BDD).  Since that time there have been numerous blog posts and articles on how to customize the database, extend the database, or use the database in specific ways to solve specific problems.  With all of those articles there doesn’t seem to be a single article that explains what the database is or why you would even want to use it.  The MDT documentation even jumps right in and shows you all of the steps that you would do to configure the database and use it to do specific scenarios but the documentation doesn’t cover the basics of what it is or why use it?  This is a first in series of blog posts that I will be writing to cover the details of the MDT Configuration Database.  In this post, I will cover the basics of the database, why you would want to use it, some of the items that you can configure in the database, and how you will initially get the database installed.</p>
<h1>Dynamic Deployment</h1>
<p>The entire purpose of the MDT Configuration Database is make your deployments dynamic.  Now dynamic means many different things to many different people so lets define that a bit.  MDT’s goal is to reduce administrative overhead as much as possible.  There has been a lot of advancements in the past few years to allow you to reduce the number of images in your environment in many cases down to two images, one for X86 and one for X64, for your client and server operating systems.  Reducing the number of images of just one aspect to reducing the overall administrative overhead with a deployment.  With both MDT Lite Touch and System Center Configuration Manager OSD, the number of task sequences in many environments have expanded or the number of steps in the task sequence have increased as administrators add conditional statements in the task sequence for installing specific applications or installing drivers.  The MDT Configuration Database is meant to not only reduce the number of images but allow you to use a single task sequence and have that task sequence change dynamically during the deployment based on information retrieved from the database.</p>
<h1>Understanding MDT Variables</h1>
<p>Before we delve too deeply into the details of the database, we first need to understand how variables work inside of MDT.  Everything that is configured inside of the task sequence in MDT matches a variable that can be configured with a value.  Let’s take a look at the Validate step in the task sequence:</p>
<p><a href="http://tmintner.files.wordpress.com/2009/11/validate.png"><img style="display:inline;border:0;" title="Validate" src="http://tmintner.files.wordpress.com/2009/11/validate_thumb.png?w=244&#038;h=218" border="0" alt="Validate" width="244" height="218" /></a></p>
<p>In this step you can see that you can configure the minimum memory, minimum processor speed, the minimum hard drive space required, and whether or not to deploy the image based on if the existing system is running a Client or Server Operating System.  Each one of these configuration items can be configured as variables.  Respectively for these items the variables are:</p>
<ul>
<li>ImageMemory</li>
<li>ImageProcessorSpeed</li>
<li>ImageSize</li>
<li>VerifyOS</li>
</ul>
<p>So how was I able to determine which variable to use?  The MDT documentation does good job of listing all of the variables that can be set as well as limited descriptions of each of the variables.  However if you just want to get a quick list of a specific step in the task sequence you can open up your configured task sequence XML file and look at that specific step.  For example the validate step looks like the following in the XML file:</p>
<p>&lt;step type=&#8221;BDD_Validate&#8221; name=&#8221;Validate&#8221; successCodeList=&#8221;0 3010&#8243; description=&#8221;" startIn=&#8221;" disable=&#8221;false&#8221; continueOnError=&#8221;false&#8221;&gt;<br />
  &lt;defaultVarList&gt;<br />
    &lt;variable name=&#8221;ImageSize&#8221; property=&#8221;ImageSize&#8221;&gt;0&lt;/variable&gt;<br />
    &lt;variable name=&#8221;ImageProcessorSpeed&#8221; property=&#8221;ImageProcessorSpeed&#8221;&gt;800&lt;/variable&gt;<br />
    &lt;variable name=&#8221;ImageMemory&#8221; property=&#8221;ImageMemory&#8221;&gt;512&lt;/variable&gt;<br />
    &lt;variable name=&#8221;VerifyOS&#8221; property=&#8221;VerifyOS&#8221;&gt;CLIENT&lt;/variable&gt;<br />
  &lt;/defaultVarList&gt;<br />
  &lt;action&gt;cscript.exe &#8220;%SCRIPTROOT%\ZTIValidate.wsf&#8221;&lt;/action&gt;<br />
&lt;/step&gt;</p>
<p>Here you can see in the XML file all of the variables that are associated with the Validate Step.</p>
<p>So now that you have the variables how would you use them?  One possible way of using the variables would be to set them in the customsettings.ini file.  This is configured by going to the <strong>Rules</strong> tab in the properties of the Deployment Share or you can just edit the file using notepad by going to the Control directory in the DeploymentShare.</p>
<p>Let’s say that you wanted to set the minimum memory to 1 GB instead of 512 MB.  To do that you could edit the task sequence or you could add the following line to the customettings.ini file:</p>
<p>Properties = ImageMemory</p>
<p>ImageMemory = 1024</p>
<p>“<strong>Note</strong> – to see a full list of variables that MDT can configure open up the ztigather.xml file in the DeploymentShare\Scripts folder.  In this case <strong>ImageMemory</strong> is not defined in ztigather.xml so you can add it by adding <strong>ImageMemory</strong> to the Properties line in the customsettings.ini”</p>
<p>Now when the validate step runs it will use the value specified in the customsettings.ini instead of the value in the task sequence.  In most cases the first value for a variable that gets set will take precedence over any other value. </p>
<p>&nbsp;</p>
<p>Adding variables directly to the customsettings.ini is a good start to doing dynamic deployments but if you add in all of the variables you need for every scenario directly into the customsettings.ini you will quickly replace the administrative overhead of managing a huge task sequence with lots of conditional steps with the administrative overhead of managing a huge customsettings.ini file.  You also now have to worry about replicating the customsettings.ini out to many different sites, locations, or USB drives.  To simplify both the management of the task sequence and the customsettings.ini file you should use the MDT Configuration Database to store your variables.  So lets now look at how to set up the database.</p>
<h1>Creating the MDT Configuration Database</h1>
<p>To create the database you need to navigate to the Database node under the Advanced Configuration node in the Deployment Workbench.  Note if you are using ConfigMgr 2007 you will still need to create and manage the database using the Deployment Workbench.  MDT can use any Microsoft SQL Server from SQL Server 2000 – SQL Server 2008 including SQL Server Express.  To create the database right click on the Database and choose New Database.  You will be prompted for the following:</p>
<ul>
<li>SQL Server Name – name of your SQL server</li>
<li>Instance – only needed if you installed SQL without using the default instance or you are using SQL Server Express</li>
<li>Port – only needed if you are using TCP/IP sockets (not recommended)</li>
<li>Network Library – Named Pipes or TCP/IP sockets</li>
</ul>
<p>Let’s talk a little bit about the Network Library.  It is HIGHLY recommended that you use Named Pipes over TCP/IP sockets.  Unfortunately Windows PE does not have the ability to use integrated security with TCP/IP sockets.  That is if you want to use an Active Directory or Windows username and password to connect to the database you must be using Named Pipes.  If you use TCP/IP sockets you would need a SQL user account and password. </p>
<p>The next item you will need to provide is the SQL Share.  That is a share that MDT uses to authenticate to the server so that integrated security can be used.  The share does not need to contain anything, it just needs to exist on the SQL Server. </p>
<p>Now that you have created your database by completing the wizard.  You need to configure the CustomSettings.ini to use the database.  To do so again right click on the Database node and choose Configure Database Rules.  This will start another wizard. For right now just click on <strong>Next</strong> until you have completed the wizard and your customsettings.ini file will be fully configured to query the database during your deployment. Note if you are using ConfigMgr 2007 with MDT integration, you will need to take the customsettings.ini and place it in your settings package.</p>
<h1>Add items to the Database</h1>
<p>So now that you have created the database and configured the customsettings.ini to query the database.  Expand the Database node and you should see a screen like the following:</p>
<p><a href="http://tmintner.files.wordpress.com/2009/11/database.png"><img style="display:inline;border:0;" title="database" src="http://tmintner.files.wordpress.com/2009/11/database_thumb.png?w=244&#038;h=184" border="0" alt="database" width="244" height="184" /></a></p>
<p>MDT allows you to configure settings based on the following:</p>
<ul>
<li>Computers – identified by MacAddress, UUID, or Serial Number</li>
<li>Roles – arbitrary grouping computers (Accounting, Finance, IT, etc.)</li>
<li>Locations – defined by default gateways</li>
<li>Make and Model – Computer manufacturer and model specific settings</li>
</ul>
<p>So lets configure a setting in the database that states for all Dell Latitude E5500 computers the Display Resolution should be 1440 X 900.  To do that we would add an entry under Make and Model.  Right click on Make and Model and choose New.  Enter the following:</p>
<ul>
<li>Make – Dell Inc.</li>
<li>Model – Latitude E5500</li>
</ul>
<p>Click on the Details Pane and you should see a screen like the following:</p>
<p><a href="http://tmintner.files.wordpress.com/2009/11/displaysettings.png"><img style="display:inline;border:0;" title="displaysettings" src="http://tmintner.files.wordpress.com/2009/11/displaysettings_thumb.png?w=244&#038;h=184" border="0" alt="displaysettings" width="244" height="184" /></a></p>
<p>Find Xresolution and set the value to 1440.  Also set the Yresolution to 900.  By clicking on Apply the values will be set and now when the deployment occurs all Dell Latitude E5500 laptops will automatically get the display resolution set.  There is nothing to configure in the task sequence or in the customsettings.ini because we already configured the customsettings.ini to query the database earlier.</p>
<p>This is a very simple example of one particular setting.  In future posts I will cover more scenarios such as Make and Model application selection, driver selection and Location, Role, and computer specific settings.</p>
<h1>Updating your Boot Image</h1>
<p>The only thing left for you to do is verify that your boot image contains ADO (Active-X Data Objects).  ADO is needed to query a database.  In Lite Touch, ADO is configured by default.  To verify this go to the properties of your Deployment Share and click on either Windows PE X86 Components or Windows PE x64 Components and verify that ADO is selected under Feature Packs.  If it is not, select it and Update your Deployment Share.</p>
<p>For ConfigMgr you will need to create a custom boot image using the MDT provided wizard.  Right click on Boot Images and choose Create Boot Image using Microsoft Deployment and walk through the wizard making sure you choose ADO under Feature Packs.</p>
<h1>Summary</h1>
<p>This post just explained the very basics of why you would want to use the database and how you can set your database up very quickly.  There is a lot more that the MDT Configuration Database can provide and automate to make your deployments truly dynamic.  Make sure you check back for more posts in the future on some intermediate and advanced posts on the MDT Database.</p>
<p>&nbsp;</p>
<p>-Tim Mintner</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/234/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&amp;blog=9840217&amp;post=234&amp;subd=tmintner&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/24/understanding-the-mdt-configuration-database-part-1/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/240858a50784c41cedfbc35048e21064?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tmintner</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2009/11/validate_thumb.png" medium="image">
			<media:title type="html">Validate</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2009/11/database_thumb.png" medium="image">
			<media:title type="html">database</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2009/11/displaysettings_thumb.png" medium="image">
			<media:title type="html">displaysettings</media:title>
		</media:content>
	</item>
	</channel>
</rss>