With the recent release of Windows 8 we have had a number of inquires about Windows 8 deployment support in SmartDeploy Enterprise. To group some of those questions and corresponding answer together, I wanted to add a brief information entry about SmartDeploy Enterprise and Windows 8.
The Windows 8 Deployment Process
To jump right in and address the main question, "does SmartDeploy support deploying Windows 8?". I am happy to say that with the release of SmartDeploy Enterprise Version 1.1.1980 we have officially added support for deployment of Windows 8. What this means is you can now deploy Windows 8 following the same process you would with Windows 7 or Windows XP.
Create a virtual reference machine with Windows 8 installed.
Shutdown and capture the virtual reference machine using the Capture Wizard.
Build boot/deployment media.
Walkthrough the Deploy Wizard selecting the newly created Windows 8 image.
Gotchas and Other Considerations
Although the deployment process for Windows 8 remains the same as previous versions of Windows, there have been quite a few changes to Windows 8 that present some potential considerations.
Creating and capturing the virtual reference machine.
Most virtualization software has been updated to support Windows 8 virtual machines, there are however some SmartDeploy supported virutalization platforms that do not support Windows 8, like Windows Virtual PC. Please be sure to create your Windows 8 virtual reference machine on a virtualization platform that supports the operating system.
Currently we have seen some issues with VMware Workstation/Player. When shutting down Windows 8 normally in VMware it seems as though the OS doesn't power off correctly. This causes an error in the Capture Wizard stating "Unable to locate a system volume...". This behavior seems to be related to the new power features, like kernel hibernation, in Windows 8. If you experience this behavior please use the command prompt and "Shutdown.exe -t 0 -s" to power off the machine. At this time we have tested the capture process using virtual machines created from Hyper-V, VirtualBox and VMware Workstation/Player, at this time only VMware Workstation/Player exhibit this behavior.
As of posting this there isn't a lot of Windows 8 driver support provided by the computer manufacturers. This will obviously change in the coming months. As computer manufacturers begin to officially release Windows 8 driver support you will see the SmartDeploy Platform Pack library updated as well. In the mean time you can deploy Windows 8 images without a Platform Pack and update the drivers manually, or extract the Windows 7 drivers from the Platform Pack and re-import them to a Windows 8 node. This will need to be tested to ensure all Windows 7 drivers work with Windows 8 on the particular device.
SmartDeploy Version 1.1.1950 is now available for download from SmartDeploy.com. The new release contains some customer bug fixes as well as a new Capture Wizard that is developed in Silverlight.
Some notable fixes are listed below:
Media Wizard - Update to how USB media is built. As an initial requirement for the Media Wizard we made the product to be nondestructive when using USB media. This was mainly to protect user data in the event that the wrong USB drive was used. This behavior has changed with the new release of SmartDeploy. If the USB device that boot media is being created on is not formatted NTFS the user will be warned that it will be formatted, if they continue it will be formatted as NTFS. Media Wizard will now also check the current state of the USB device to ensure that the partition containing SmartPE is set to active. This will help to resolve issues where USB media will not boot.
Capture Wizard - Capturing a virtual hard disk with a Raw volume. Previously if the Capture Wizard detected a Raw volume on the virtual disk it would present an error and exit. The behavior in this release is to grey out the Raw volume allowing the user to capture any properly formatted partitions that may have an operating system install.
Deploy Wizard - WDS Multicast Deployment. Previously an attended answer file would not automatically populate the WDS credentials for multicast. This has been changed and the credentials will automatically be filled.
Deploy Wizard - Deploying Wipe and Load to a BitLocker encrypted disk. When deploying an image with Wipe and Load to a disk that is encrypted with BitLocker (protection suspended) the deployment would fail with a BCD error. A task is now run after sysprep is kicked off that will update the BCD to work correctly with BitLocker deployments.
An update to SmartDeploy Enterprise is now available for download!
For SmartDeploy Enterprise version 1940 we have release a few new features as well as addressed a few customer bugs. Please see the lists below for further information on both.
Build Wizard: The Build Wizard is a new application that is installed with SmartDeploy Enterprise to aid in the creation of a virtual reference machine. Build Wizard can create a VM for VMware Workstation and Player, Windows Virtual PC and Oracle Virtual Box and apply custom settings. The Build Wizard is a Silverlight application that requires a new prerequisite check during SmartDeploy Enterprise installation. We now require that the technician computer have both Silverlight and .Net 4.0 installed prior to installing SmartDeploy Enterprise. If these prerequisites are not met the installer will try to automatically install them. Microsoft does not support .Net 4.0 installation to Windows XP SP2 and below, causing us to adopt this requirement as well. If the system you are installing to does not meet any of these requirements you will be prompted to make the proper changes. Overtime you will see more of SmartDeploy Enterprise transition to using a Silverlight code base making these requirements even more important.
Ability to deploy Install.wim from a Windows product DVD (Vista and higher): Previously SmartDeploy Enterprise would not create the BCD when installing images that were missing the store. This has been changed to allow for the deployment of the install.wim to speed up testing and deployment of a vanilla image to computers. Please note that when using the Install.wim from a product DVD you will need to access the Advanced options of Deploy Wizard to enable the Administrator account.
Updated SmartDeploy Enterprise boot environment (SmartPE): We have updated SmartPE to Windows PE 3.1 and included hotfix KB982018. This update will allow SmartDeploy Enterprise to make better use of advanced format disks. For more information on this update and the impact of advanced format disks please see the knowledge base article.
Added ability to capture VMware ESX virtual hard drives offline: SmartVDK (the virtual disk connection utility used by SmartDeploy Enterprise) has been updated to allow the offline capture of VMware ESX virtual hard drives. The virtual hard drive will need to be exported from the VMware ESX server prior to capture.
Updated credential prompts: The credential prompts in SmartPE have been updated to be more straightforward. The prompts went from a 4 line to 2 line entry model.
1930 Credential Prompt
1940 Credential Prompt
More informative domain join dialog: We have updated the dialog you see when attempting to join a computer to a domain. The new text boxes contain a title stating to use the FQDN of the domain and distinguished name of the OU.
Large Platform Pack causing overflow: Under certain circumstances users would receive an overflow error when attempting to use a large Platform Pack. We have updated the Deploy Wizard to allow for more file entries in the Platform Pack to fix this issue.
%SmartDeploy_Media% causing tasks to fail: In version 1930 of SmartDeploy Enterprise a check to ensure the file being called from a pre or post image task exists was implemented. The check was not resolving the %SmartDeploy_Media% variable correctly however, causing a false positive. This has been updated to pre-resolve the variable before enacting the check.
Default file name when saving answer file: When exporting an answer file form the Deploy Wizard the name will now be automatically populated with SmartDeploy.xml.
Now that the latest version of SmartDeploy Enterprise has been release I want to take some time and talk about a few of the bugs that have been addressed in this version. Below you will find a list of bugs, a brief description and the action that was taken. In addition to the bug fixes below version 1910 also underwent a major update from a boot media perspective. Allen talks more about this update in his blog titled SmartDeploy 1.1.1910 Platform Pack Information.
Media Wizard Error 76 "Path Not Found": When you create deployment media using Media Wizard from a user account that is 16 or more characters in length you will receive an error stating the path is not found. This was due to path lengths in one of the command calls.
Setting a Static IP from SmartPE: It was found that when entering a number over 232 in the first octet of the Subnet mask you would receive an invalid subnet error. The input restraints for this field have been updated.
"Unable to deploy to the volume containing the virtual reference machine." Error When Deploying from USB HDD: This condition exists when the target device has an unformatted hard drive and the image file being used resides on the volume labeled c:. Essentially a check to ensure an image cannot be applied to the disk in which it resides is unexpectedly triggered. This behavior has been update in 1910.
Error Joining a Domain with Hyphens: When joining a domain that contains a hyphen an error will be returned stating "Please enter a valid domain name". This check has been updated to include a hyphen as a valid domain character.
Joining a Domain from a Client with a Static IP: When specifying a static IP and domain from Deploy Wizard the target will not be joined to the domain during the deployment process. This is due to the domain join process taking place before the static IP has been set. This behavior has been updated in 1910 and the static IP will now fully apply before the domain join process can start.
Boot your Target Computer to SmartPE, Run ScanState and Deploy Image Cont.
If you did not specify a product key while capturing the image you will be prompted to enter a Product Key and select Next. If you do not wish to specify a product key simply click Next.
Enter the Full name and Organization name to be used with this deployment, select Next.
Select a Time zone then select Next to continue.
Leave the default Display Settings and select Next.
Leave the default Network Settings and select Next.
If desired specify a Computer name or enter a Domain to join. For this example leave the defaults and select Next.
If you would like to automate this process in the future click Export to save an answer file. For this example review the information and click Next to continue.
Click Finish to start the deployment.
Once the deployment has begun the pre image task will execute starting the USMT migration.
Wait for the deployment to complete, sysprep to run and all settings to be applied.
Running LoadState to Complete the Migration
Once the image has been deployed to the target machine you will be at the logon screen. You will need to logon to the computer with an account that has administrative privileges for the First logon task to complete successfully.
Logon to the computer with administrative credentials. Note that LoadState runs completing the migration.
Once LoadState finishes its tasks the migration has been completed. All user files and settings should be restored. The C:\Backup folder can now be deleted.
In this example we show you how to complete a computer upgrade from Windows XP to Windows 7 while migrating user data and settings. This example can be modified to apply to other scenarios such as computer replacement.
The User State Migration Tool is a very powerful component that can be used to migrate user specific information. This will greatly reduce the amount of time spent manually copying user data and reapplying settings. However this tool will need to be tested thoroughly to ensure that all of the intended information is correctly migrated from one system to another.
Boot your Target Computer to SmartPE, Run ScanState and Deploy Image Cont.
Once again click Add to add a new task. From the Add / edit a task window change Phase to First logon to desktop, enter C:\USMT\LoadState.exe C:\Backup /Hard-Link /nocompress /lac:pass@word1 /lae /c. Click OK to continue.
Click OK to continue.
From the Welcome to the Deploy Wizard page click Next.
On the Select Image page click Browse to locate an image.
In this example we will be using a network stored image. If you have a different scenario please select your image accordingly.
From the Open window select Network.
From the Map Network Drive page enter the path to the network share that contains the image and will be used for the user state files, for example \\Server\Share, then click OK.
Enter the credentials needed to access the network share, and then click OK. Please note that Domain\Username may be needed.
Browse to and select your image. Click Open to continue.
From the Select Image page click Next to advance. Note if you do not have a Platform Pack named Default.ppk located in the same directory as the image you will be prompted to specify the location of a Platform Pack.
On the Disk Options page change the selection to Wipe & load drives. This will protect the C:\Backup folder that contains all of the migrated user information. Click Next.
Continue to part 5
Create SmartPE Boot Media Cont.
On the Media Type page, select the media type for the ISO image file. For this example, make sure that CD / DVD disc and CD 74min 650MB are selected to create a bootable disc, and then click Next.
On the Save Options page, type the path and name of the ISO image file. For this example, type: E:\SDE\SmartPE.iso and select Next.
To create the media and close the wizard, click Finish.
Wait while the custom SmartPE ISO image file is created.
Boot your Target Computer to SmartPE, Run ScanState and Deploy Image
Next, you will boot the target computer using the boot media that was previously created. After the machine is booted to SmartPE we will create tasks to run at various phases of the deployment. Once the tasks are created we can complete the deployment by selecting an image and entering all needed information.
Boot your target computer to SmartPE. For this example we are using a virtual machine with the SmartPE.iso file attached, please modify accordingly to fit your needs. Select Deploy an image to start Deploy Wizard.
On the Welcome to the Deploy Wizard page, click Advanced.
From the Advanced Options page, click the Tasks tab.
On the tasks tab select Add to add a new task.
On the Add / edit a task page you can specify a command and the phase of the deployment in which it should run. This offers the flexibility to complete administrative task such as installing software that is not included in the image being deployed.
For this example ensure the Phase is Before image is applied. Change the Command line to %SmartDeploy_Media%\z\USMT\USMT.BAT and select OK.
Please continue to part 4
Create SmartPE Boot Media
To integrate USMT with SmartPE, begin by using the Media Wizard to create a SmartPE ISO, a customized environment that captures or deploys images to target computers.
Start the Media Wizard by clicking Start > All Programs > Prowess > SmartDeploy Enterprise > Media Wizard.
On the Welcome to the Media Wizard page, click Next.
On the Select Task page, select Build boot media, and then click Next. This option is used to build boot media for booting the target computers to the SmartPE.
On the Platform Pack page, click Browse. You can then select a Platform Pack that contains support for booting and deploying the target computers.
Select the Platform Pack file that contains the drivers for the target computers by clicking on the file name. In this example, we use a Default Platform Pack.
Return to the Platform Pack page of the Media Wizard. Click Next.
On the Optional Components page, you can select the additional components you would like to include. For example, you can enable or disable the SmartDeploy Virtual Network Computing (VNC) Server and or the SmartDeploy Cloud Services, designate a custom answer file and add optional files.
To completely integrate USMT we will need to add the components to SmartPE, to do so click Browse next to Optional Files.
Browse to C:\Program Files\Windows AIK\Tools\USMT and click OK.
Back at the Optional Components page, verify the optional files path is correct and select Next to continue.
SmartDeploy Cloud Services provides functionality to remotely connect to a SmartPE instance and complete an installation.
If you are going to use SmartDeploy Cloud Services, type the SmartDeploy Cloud Services account ID into the Account box on the SmartDeploy Cloud Services page, and then click Next. If you do not have an account, simply click Next.
SmartDeploy VNC Server uses virtual network computing to remotely connect to and administer the target computer during the deployment process. You must install a VNC client on your computer and then configure the client to connect to the SmartDeploy VNC Server using the target computer’s IP address.
If you are going to use the SmartDeploy VNC Server, provide VNC authentication by typing and confirming the password required to connect remote computers running SmartPE on the SmartDeploy VNC Server page, and then click Next.
Please continue to part 3
The Microsoft User State Migration Tool is, as its name suggests, a tool set that can be used during deployments to migrate user's documents and settings. When combined with SmartDeploy Enterprise you can install Windows 7 over a users Windows XP instance while keeping all of their files and settings. In this guide we will demonstrate how to combine USMT with SmartDeploy Enterprise and complete a Windows XP to Windows 7 migration.
For this example we will be doing what is referred to as a Hard-Link migration. A Hard-Link migration is defined as a migration where all user state information is maintained on the target computer while the old operating system is removed and a new operating system is installed. This type of deployment is best suited for a computer refresh scenario as all information is maintained on the users PC. Because all of the information is maintained on the user's computer you will not need to worry about coping the users state to a network resource, thus saving time in the overall deployment.
This entry is meant to guide you through an entire deployment, from creating an image, to deploying the image with the users state.
Before You Begin
Before beginning this guide it is assumed that you have a few prerequisites in place. SmartDeploy Enterprise will need to be installed on your technician machine. You will also need access to USMT version 4.0, these files are available within Microsoft's Windows Automated Install Kit (AIK) which can be downloaded here. Please note that this example is using Windows XP (x86) and Windows 7 (x86). If you're trying to migrate to or from a 64bit version of Windows the steps may differ. If installing Windows 7 (x64) please add the amd64 folder of USMT to the virtual reference machine. If migrating from Windows XP x64 please set the following environment variable in the USMT batch file created below, Set MIG_OFFLINE_PLATFORM_ARCH=64.
Creating Virtual Reference Machine
In a normal scenario Hard-Link migration operating system deployment is done by installing Windows 7 over Windows XP protecting the disk partitioning. Due to this, you will need to install Windows 7 to one partition to match that of your Windows XP instance. In the case of SmartDeploy you will install Windows 7 to one partition in a virtual machine, then capture the image to a WIM file. The following steps will take you through the process of installing Windows 7 to one partition.
Create a New Virtual Machine; this will vary based on the virtualization software used in your environment.
Boot the new virtual machine using Windows 7 install media.
Once boot, the Install Windows page will appear. Press Shift + F10 to open a Command Prompt.
From the Command Prompt enter the following commands followed by pressing the Enter key, then close the Command Prompt.
Select Disk 0
Clean (Note this will destroy any data on the virtual machine)
Create Partition Primary
[*]From the Localization page accept the defaults and click Next.
[*]Click Install Now.
[*]You will receive a message stating Setup is Starting. When the EULA page is displayed select I accept the license terms and click Next.
[*]When prompted for installation type click Custom.
[*]On the Where do you want to install Windows page, ensure Disk 0 Partition 1 is selected and click Next.
[*]Wait for the installation to finish then proceed to the next section.
Adding USMT to Virtual Reference Machine
Next, You will need to add the USMT components to your virtual reference machine.
Download and install Windows AIK on your technician computer.
If your virtual reference machine is not already started, please start it now.
From your technician computer navigate to c:\Program Files\Windows AIK\Tools\USMT \x86 and copy the contents of this folder to c:\USMT on your virtual reference machine.
Add any other applications or settings that are needed for your environment.
Shutdown your virtual reference machine.
You can now use the Capture Wizard to capture the master image as described in the SmartDeploy Enterprise User’s Guide.
Creating Batch File to Run ScanState
In this section we will create a batch file to run the ScanState tool of USMT. This will scan the Windows XP install and copy the users state to the specified store.
Open Notepad.exe by clicking Start>All Programs>Accessories>Notepad.
From Notepad enter the following information one line at a time.
%SmartDeploy_Media%\z\usmt\x86\ScanState.exe C:\backup /nocompress /Hard-Link /offlinewindir:c:\windows /all /i:%SmartDeploy_Media%\z\usmt\x86\migdocs.xml /i:%SmartDeploy_Media%\z\usmt\x86\migapp.xml /i:%SmartDeploy_Media%\z\usmt\x86\miguser.xml /l:x:\windows\temp\ScanState.log
Note that C:\Backup is where the user state will be saved and loaded from once the deployment is complete. It is a local folder on the target machine that will be protected during deployment, using SmartDeploy. For more information on the commands in this section please check the USMT User’s Guide.
[*]When finished click File>Save As. Navigate to C:\Program Files\Windows AIK\Tools\USMT. Enter USMT.BAT for the file name, change Save as type to All files, click Save.
Please Continue on to Part 2
In SmartDeploy version 1920 we have added the feature to list multiple domains and OUs in an answer file. You can then choose from this list during deployment. I am going to take a minute to explain how to set this up with an existing answer file.
By default when specifying a domain and exporting the answer file you will get something that looks like this:
<!-- 0 = Domain, 1 = Workgroup -->
If you wish to add another domain or OU to this list you can simply add the next entry in the option node. For example:
<!-- 0 = Domain, 1 = Workgroup -->
The resulting options in Deploy Wizard will look like the picture below.
If you wish to add more options you simply need to add another <option> set. For example:
<!-- 0 = Domain, 1 = Workgroup -->
In SmartDeploy Version 1.1.1980 we have added additional regional setting support to the Language/Culture drop down in the Deploy Wizard, as well as an advanced answer file change for more granular control.
Additional Language/Culture Listings:
In previous versions of SmartDeploy we only had Language/Culture support for the main language packs and language interface packs offered by Microsoft. This led to some confusion when wanting to use a specific language, say English, with a standard locale, like United Kingdom. In version 1980 you will now see a more comprehensive list of Language/Culture pairings when deploying languages. You can find a full list of Language/Culture pairings here.
Custom Language/Culture Support:
We have also added a new section to the SmartDeploy answer file that will give you the option to specify a custom set of UI Language, System Locale, User Locale, and Input Locale much like you would see in the unattend.xml that is created from Windows System Image Manager. This obviously requires the use of an answer file during deployment. The additional settings will give users the ability to specify any standard locale code (i.e. en-US, 0409, or English (United States)) for any of the four options above. To use this setting you will need to edit the SmartDeploy.xml answer file that is being used with deployment. Examples below.
Standard regional settings in answer file:
<time_zone>(GMT-08:00) Pacific Time (US and Canada)</time_zone>
<input_locale>English (United States)</input_locale>
Extended regional settings in answer file:
<time_zone>(GMT-08:00) Pacific Time (US and Canada)</time_zone>
As you can see you will need to add nested nodes for each of the four regional settings under the default <input_locale> node. This will cause the Deploy Wizard to use what is entered in the answer file rather than a standard region that is defined in the wizard itself.