Local P2V Migration Using Microsoft Deployment Toolkit 2010 and Sysinternals Disk2VHD

Applies To: Windows 7

Application compatibility issues and missing installation media can block deployment of the Windows® 7 operating system for users who rely on those applications to perform their jobs. Delivering their old computer configurations as fully functional virtual machines can reduce or even eliminate this problem.

P2V Migration for Software Assurance is a collection of scripts and a task sequence template that converts the existing operating system installation to a virtual hard disk (VHD) file during a Windows 7 deployment. P2V Migration is based on the Microsoft® Deployment Toolkit (MDT) 2010 and Sysinternals Disk2vhd. The process creates a virtual machine (VM) using the VHD file and publishes the applications it contains to the user’s Start menu. It allows users to continue running their older applications while continuing with deployment and taking full advantage of Windows 7 improvements.

P2V Migration supports creating VHD files based on the Windows 7, Windows Vista®, and Windows XP with Service Pack 3 (SP3) operating systems. Although you can use P2V Migration when deploying the x86 or x64 versions of Windows 7, it can create VHD files based only on x86 versions of the operating system. P2V Migration is language agnostic.

This white paper assumes that you are familiar with MDT 2010. It also assumes that you have a distribution share and that the distribution share contains applications, operating systems, device drivers, packages, and possibly one or more task sequences.

This white paper describes how to:

  • Install P2V Migration in MDT 2010

  • Create P2V Migration task sequences with MDT 2010

  • Customize an existing task sequence for P2V Migration

  • Create P2V Migration task sequences with Microsoft System Center Configuration Manager 2007 R2

  • Run the P2V Migration Task Sequence

For more information about using MDT 2010 to deploy Windows 7, see the Microsoft Deployment TechCenter (https://www.microsoft.com/desktopdeployment).

For a downloadable version of this document, see Local P2V Migration Using Microsoft Deployment Toolkit 2010 and Sysinternals Disk2VHD in the Microsoft Download Center (https://go.microsoft.com/fwlink/?LinkId=208129).

Install P2V Migration in MDT 2010

Install P2V Migration on the computer containing the MDT Deployment Share that contains applications, operating systems, device drivers, packages, and possibly one or more task sequences. The setup program will automatically download required prerequisites from the Internet and configure the deployment share.

To install P2V Migration in MDT 2010:

  1. On the Welcome page, click Next.

  2. Select the I accept the terms in the License Agreement box, and click Next.

  3. On the Custom Setup page, accept the default installation directory, and click Next.

  4. Click Install.

  5. At the prompt to download additional files over the Internet, click Yes. The setup program will download the following from the Internet:

    • Disk2VHD.exe. The Sysinternals tool for performing P2V hard disk conversion.

    • KB961742-v3.exe. Update for Windows XP with SP3 to enable RemoteApp support.

    • Windows6.0-KB961741-x86.msu. Update for Windows Vista with Service Pack 1 (SP1) or later to enable RemoteApp.

    • Windows6.1-KB958559-x64.msu. 64-bit Windows Virtual PC for Windows 7.

    • Windows6.1-KB958559-x86.msu. 32-bit Windows Virtual PC for Windows 7.

    • Windows6.1-KB977206-x64.msu. 64-bit update to remove the hardware-assisted virtualization prerequisites for Windows Virtual PC.

    • Windows6.1-KB977206-x86.msu. 32-bit update to remove the hardware-assisted virtualization prerequisites for Windows Virtual PC.

  6. At the prompt to copy the install files to the MDT Deployment Share, click Yes.

  7. Click Finish.

The setup program installs the following files to the P2V Migration installation folder (that is, C:\Program Files (x86)\P2V Migration for Software Assurance):

  • ZTIRetro.wsf. This script completes necessary tasks during the task sequence. It performs validation checks of the starting operating system and hardware, installs RemoteApp support, populates the AutoAdminLogon account, renames the computer, and creates the VHD using Sysinternals Disk2vhd. Validation checks include double-checking that the current operating system is x86; that the operating system is Windows XP or later; that Windows XP has SP3 installed; that the Volume Shadow Copy Service is running and healthy; and that the system hard disk is smaller than 127 gigabytes (GB).

  • Add Old Apps in VHD to Windows 7.hta. ZTIRetro.wsf copies this script to the Start menu of the Windows 7 installation during the State Restore phase. The script installs Windows Virtual PC integration components in the VHD if necessary and publishes applications from the VM to the Windows 7 Start menu in the Windows Virtual PC folder.

  • Retro.xml. This XML file is a task sequence template that includes the P2V Migration scripts. Microsoft built this task sequence using the original release of MDT 2010 Update 1. Use this template when the target computer will be refreshed in place with Windows 7. SCCM-P2V-TS.xml is the equivalent task sequence template used for System Center Configuration Manager 2007. (See the section titled “Create P2V Migration Task Sequences with System Center Configuration Manager 2007.”)

  • RetroReplace.xml. Use this task sequence template for a client computer that will be replaced as part of the deployment. The RetroReplace.xml template is based on the Standard Client Replace task sequence in MDT 2010 Update 1 to gather the user state, capture a VHD image of the computer, and optionally prepare the computer to be retired. SCCM-P2V-ClientReplace.xml is the equivalent task sequence template used for System Center Configuration Manager 2007.

  • RetroStateRestore.xml. Use this task sequence template to create a custom VHD and restore automation without installing an operating system. SCCM-P2V-Custom.xml is the equivalent task sequence template used for System Center Configuration Manager 2007.

Create P2V Migration Task Sequences with Microsoft Deployment Toolkit 2010

P2V Migration adds three new task sequence templates to MDT 2010:

  • Standard Client Task Sequence with P2V Migration. Creates the default P2V Migration task sequence for deploying operating system images to client computers. Use this task sequence to refresh the same computer with Windows 7 while migrating the older operating system to a VHD. Also, use it for installation on new computers and for importing a previously captured VHD.

  • Standard Client Replace Task Sequence with P2V Migration. Converts the computer’s Windows volume to a VHD file for use on another computer, backs up the user state, and erases the disk.

  • Custom Task Sequence with P2V Migration. Creates a custom task sequence that does not install an operating system and can restore a previously captured VHD file.

To create a P2V Migration task sequence in MDT 2010:

  1. In MDT 2010, open a deployment share that you want to customize, and click Task Sequences.

  2. In the Actions pane, click New Task Sequence.

  3. In the New Task Sequence Wizard, on the General Settings page, type a task sequence ID (such as P2V) and a task sequence name (for example, P2V XP Refresh to Win7), and click Next.

  4. On the Select Template page, select one of the following task sequence templates and then click Next:

    • Standard Client Task Sequence with P2V Migration

    • Standard Client Replace Task Sequence with P2V Migration

    • Custom Task Sequence with P2V Migration

  5. Complete the remaining pages to create the new P2V Migration task sequence.

For more information about using MDT 2010 to deploy Windows 7, see the Microsoft Deployment TechCenter (https://www.microsoft.com/desktopdeployment).

During the State Capture phase, the ZTIRetro.wsf script prepares and captures the existing operating system installation in a VHD file. If the ZTIRetro.wsf script cannot save the VHD file locally, you can update the CustomSettings.ini files to use variables such as ComputerBackupLocation, BackupShare, BackupDir, UserDataLocation, UDShare, and UDDir to determine where to save the VHD file.

Note You cannot create both a Windows Imaging Format (WIM) and a VHD capture of the same computer using the P2V Migration process. The standard computer backup option is disabled by default in P2V Migration task sequence templates. As with WIM files created using the standard computer backup process in MDT 2010 or Configuration Manager 2007, VHD backup files can be mounted in Windows 7 as needed to extract files from the backup.

During the State Restore phase, the script prepares Windows 7 by installing Windows Virtual PC and the update for Windows 7, which removes the requirement for hardware-assisted virtualization. It then copies the VHD file from the network or the MININT folder, creates the VM, and attaches the VHD file to it. The final step of the process is to start the new VM, install the Windows Virtual PC integration components, and copy Add Old Apps in VHD to Windows 7.hta to the Start menu.

Customizing an Existing Task Sequence for P2V Migration

To customize an existing task sequence, such as one created using the Standard Client Task Sequence template, add the steps shown in Table 1 to the task sequence.

Table 1. Updating an Existing Task Sequence

Phase Step Command

State Capture\Non-Upgrade

Capture VHD

cscript.exe “%SCRIPTROOT%\ZTIRetro.wsf” /STATECAPTURE

State Restore

Restore VHD

cscript.exe “%SCRIPTROOT%\ZTIRetro.wsf” /STATERESTORE

Create P2V Migration Task Sequences with System Center Configuration Manager 2007

P2V Migration adds three new task sequence templates for using with System Center Configuration Manager 2007:

  • Client Task Sequence for P2V Migration. Creates the default P2V Migration task sequence for deploying operating system images to client computers. Use this task sequence to refresh the same computer with Windows 7 while migrating the older operating system to a VHD. Also, use it for installation on new computers and for importing a previously captured VHD.

  • Client Replace Task Sequence for P2V Migration. Converts the computer’s Windows volume to a VHD file for use on another computer, backs up the user state, and erases the disk.ReplaceThisText

  • P2V Restore Only Template. Creates a custom task sequence that does not install an operating system and can restore a previously captured VHD file.

To create a P2V Migration task sequence in MDT 2010:

  1. In the Configuration Manager Console, expand Site Database, Computer Management, Operating System Deployment, and select Task Sequences.

  2. In the Actions pane, click Create Microsoft Deployment Task Sequence.

  3. On the Choose Template page, select one of the following task sequence templates, and click Next:

    • Client Task Sequence for P2V Migration

    • Client Replace Task Sequence for P2V Migration

    • P2V Restore Only Template

  4. On the General page, in the Task sequence name box, type a name for the task sequence (such as P2V XP Refresh to Win7), and then click Next.

  5. Complete the remaining pages to create the new P2V Migration task sequence.

For more information about using MDT 2010 to deploy Windows 7, see the Microsoft Deployment TechCenter (https://www.microsoft.com/desktopdeployment).

Run the P2V Migration Task Sequence

When you have created and configured the task sequence, the Lite Touch Installation (LTI) process works similarly to any other LTI process. The task sequence refreshes the computer with Windows 7. The previous operating system installation is available in a VM, and shortcuts for applications running in the VM are available in the Windows Virtual PC folder in the Windows 7 Start menu of the local Administrator account.

Deployments using automated domain join with MDT 2010 Update 1 or those driven by Configuration Manager 2007 require the first user to install the Windows Virtual PC integration components by running the Add Old Apps in VHD to Windows 7.hta script when deployment is complete. This script is in the Windows Virtual PC folder in the Windows 7 Start menu.

On the Specify where to save a complete computer backup page of the Windows Deployment Wizard, you can specify a location for saving the VHD file during deployment. You can select the Allow the computer backup to be stored locally when possible box to store the VHD in the local MININT folder, if possible, during deployment.

Known Issues

The following are known issues with P2V Migration:

  • P2V Migration can create VHD files for operating system installations only on hard disks that are 127 GB or smaller.

  • P2V Migration creates the new VM and Start menu shortcuts in the local Administrator account. Other accounts do not have the VM or Start menu shortcuts. You must create those shortcuts manually by logging on to each user account and running the script Add Old Apps in VHD to Windows 7.vbs. This script is in the Start menu under Windows Virtual PC.

  • After converting a client computer to a VM, you must again activate the Windows operating system on the VM. When Windows detects a significant hardware change, it requires reactivation. Converting an installation from a physical computer to a VM qualifies as a significant hardware change that requires you to activate Windows again.