Windows 7 / Getting Started

USMT

USMT is the heart of maintaining user state both for refresh and replace scenarios. USMT intelligently captures user data according to a defined set of rules and bundles it up so that it can be easily stored or transferred. USMT comes with a default set of rules you can further customize based on the unique data and applications in your environment.

One of OSD's many virtues is that it seamlessly and transparently incorporates the full capabilities of USMT without any real heavy lifting. The default rule sets for USMT capture all data in a user's profile including documents, wallpaper, and other common customizations. By default, USMT searches the hard drive for known Microsoft file types such as those used by Microsoft Office and captures those as well. This actually may be sufficient for all user state migration needs in your organization, although only you can determine this and if you must to add customizations to USMT.

USMT Versions

The first actual decision to make when you choose to maintain user state is whether to use USMT version 3 or 4. Version 4 is of course newer and should be your first choice; however, there are multiple reasons why you may choose to use version 3, including:

  • You previously used version 3 and have custom configuration files for it.
  • You are still deploying Windows XP; USMT 4 can be used only if the destination OS is Windows Vista or above. (The source OS does not matter.)

Based upon your deployment needs, you may use both versions, as they are by no means mutually exclusive. Remember, though, data captured with one version must also be restored by that same version.

For a complete discussion of what's new and different in USMT 4, check out http://technet.microsoft.com/en-us/library/dd560752(v=WS.10).aspx. Here are the most significant items as far as ConfigMgr OSD is concerned:

  • Hard-link migration: Enables data to physically remain in place on a hard drive during a refresh scenario, greatly reducing the time and space required for capturing and restoring the data.
  • Offline migration: Enables capturing the data in an installed instance of Windows without actually booting to that instance.
  • Volume shadow copy support: Enables capturing data even in use or otherwise locked.

As described in the "User State Category" section, enabling each of these features is just ticking a check box on the Capture User State task.

This tutorial could not possibly hope to cover enough information about customizing USMT to do any sort of justice. An excellent article more fully discussing what USMT migrates and how to customize its behavior is at http://blogs.technet.com/b/askds/archive/2011/05/11/does-usmt-migrate-lt-this-goo-gt.aspx.

Creating the USMT Package(s)

To use USMT in your task sequences, you must create a package containing the required files. This is a relatively simple task. The invocation of both ScanState and LoadState is fundamental to the use of USMT and thus running them is already part of the logic built into the Capture User State and Restore User State tasks.

USMT 4.0 is part of the WAIK, which is installed with ConfigMgr. Thus, to create a USMT 4.0 package, copy the files from % ProgramFiles %\Windows AIK\Tools\USMT to your source repository and reference this location when creating the USMT 4.0 package.

To obtain the source files for USMT 3.0, first download and install USMT 3.0. The download is freely available from Microsoft at http://www.microsoft.com/download/en/details. aspx?displaylang=en&id=10837 . You can install it on any system available to you, including the site server if you so choose. The only real purpose of this installation, though, is to obtain the files it installs. After installation, copy the files from the installation folder to your source repository and use this location when creating the package. Copying the files to your source repository rather than directly referencing them is generally recommended because you can independently add updated XML configuration files to the source repository without affecting the original files. It also maintains a consistent package source location across your packages.

[Previous] [Contents] [Next]