Jump to content


  • 0
anyweb

migrating XP to Windows 7 using USMT 4.0 to migrate system and user state, settings like Wallpaper and Network Printer mappings are not migrated.

Question

Known Issue: Migrating from Windows XP to Windows 7 with USMT when used with ConfigMgr 2007 SP2 OS Deployment may not migrate all settings

 

[in today's post Levi Stevens discusses an issue with USMT and Config Manager 2007 SP2]

 

Problem Description

 

When upgrading or reinstalling Windows XP to Windows 7 using USMT 4.0 to migrate system and user state, settings like Wallpaper and Network Printer mappings are not migrated.

 

Running scanstate.exe from a folder other than the USMT - x86 - folder (the default for the Task Sequence) prevents scanstate.exe from finding the DLManifests folder to include system components like wallpaper and folder settings. These settings will not be migrated. USMT 4.0 must be run from a local folder containing the DLManifests folder.

 

The User State Migration Tool (USMT) version 4.0 released with the Windows Automated Installation Kit (WAIK) version 2.0 and is a prerequisite for using OS Deployment with ConfigMgr 2007 SP2.

 

Symptoms

 

After migrating user state the wall paper or folder settings do not migrate. If you have enabled verbose logging (/v:5) you may see the following entry in ScanState.log:

 

2009-09-14 15:41:19, Info [0x000000] Downlevel Manifests folder is not present. System component settings will not be gathered.

 

Workaround

 

Copy the USMT binaries to local and use "Run Command Line" task sequence step to run scanstate.exe from the USMT\x86 directory (set the Starting In from "Run Command Line" to USMT\x86 folder). You will need two steps, one to copy the USTM folder to the local drive, and one to run USMT capture state.

 

Example Task Sequence

 

Save the below example as TSExample.xml, then import this into ConfigMgr. You will need to edit the task sequence to set the reference package that contains the RunScanState.bat example workaround script.

 

<?xml version="1.0"?>

<SmsTaskSequencePackage xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

 <BootImageID />

 <Category />

 <DependentProgram />

 <Description />

 <Duration>360</Duration>

 <Name>WorkAround</Name>

 <ProgramFlags>152084496</ProgramFlags>

 <SequenceData>

   <sequence version="3.00">

     <referenceList>

       <reference package="SMS00001" />

     </referenceList>

     <step type="SMS_TaskSequence_RunCommandLineAction" name="Run Command Line" description="" runIn="WinPEandFullOS" successCodeList="0 3010">

       <action>smsswd.exe /run: cmd.exe /c md %systemdrive%\usmtsafe</action>

       <defaultVarList>

         <variable name="CommandLine" property="CommandLine" hidden="true">cmd.exe /c md %systemdrive%\usmtsafe</variable>

         <variable name="SMSTSDisableWow64Redirection" property="DisableWow64Redirection">true</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="Run Command Line" description="" runIn="WinPEandFullOS" successCodeList="0 3010">

       <action>smsswd.exe /run: cmd.exe /c md %systemdrive%\USMTbits</action>

       <defaultVarList>

         <variable name="CommandLine" property="CommandLine" hidden="true">cmd.exe /c md %systemdrive%\USMTbits</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_SetVariableAction" name="Set Task Sequence Variable" description="" runIn="WinPEandFullOS" successCodeList="0">

       <action>tsenv.exe "OSDStateStorePath=%systemdrive%\usmtsafe"</action>

       <defaultVarList>

         <variable name="VariableName" property="VariableName" hidden="true">OSDStateStorePath</variable>

         <variable name="VariableValue" property="VariableValue" hidden="true">%systemdrive%\usmtsafe</variable>

       </defaultVarList>

     </step>

     <step type="SMS_TaskSequence_RunCommandLineAction" name="Run Command Line" description="" runIn="WinPEandFullOS" successCodeList="0 3010">

       <action>smsswd.exe /run:SMS00001 xcopy * %systemdrive%\USMTbits /herciy</action>

       <defaultVarList>

         <variable name="CommandLine" property="CommandLine" hidden="true">xcopy * %systemdrive%\USMTbits /herciy</variable>

         <variable name="SMSTSDisableWow64Redirection" property="DisableWow64Redirection">true</variable>

         <variable name="PackageID" property="PackageID" hidden="true">7S000003</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="Run Command Line" description="" runIn="WinPEandFullOS" successCodeList="0 3010">

       <action>smsswd.exe /run: cmd /c runscanstate.bat %OSDStateStorePath% %systemdrive%</action>

       <defaultVarList>

         <variable name="CommandLine" property="CommandLine" hidden="true">cmd /c runscanstate.bat %OSDStateStorePath% %systemdrive%</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>

         <variable name="WorkingDirectory" property="WorkingDirectory">%systemdrive%\USMTbits\x86</variable>

       </defaultVarList>

     </step>

   </sequence>

 </SequenceData>

 <SourceDate>2009-10-21T19:33:43</SourceDate>

 <SupportedOperatingSystems />

 <IconSize>0</IconSize>

</SmsTaskSequencePackage>

 

 

 

 

RunScanState.Bat

 

@set USMT_WORKING_DIR=%~2%\USMTbits\x86

"%~2\USMTbits\x86\scanstate.exe" "%~1" /o /localonly /efs:copyraw /all /v:5 

/l:%~2\windows\TEMP\SMSTSLog\scanstate.log 

/progress:%~2\windows\TEMP\SMSTSLog\scanstateprogress.log 

/i:%~2\USMTbits\x86\miguser.xml /i:%~2\USMTbits\x86\migapp.xml

 

 

 

-- Levi Stevens

 

http://blogs.technet.com/configmgrteam/archive/2009/12/01/known-issue-migrating-from-windows-xp-to-windows-7-with-usmt-when-used-with-configmgr-2007-sp2-os-deployment-may-not-migrate-all-settings.aspx

Share this post


Link to post
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...


×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.