Creating and Maintaining a Windows 7 Image using Virtual PC on Windows 7 - Part 2 of 3 - Step by Step - Detailed Screen Captures
Wednesday, March 10, 2010 1:36 AM
I am using several steps to demonstrate how to create, use and maintain a Windows 7 Image using Virtual PC on Windows 7 Enterprise. Part 1 of 3 is available here. It is important to view Part 1 of 3 in advance of reviewing this Blog entry as it includes the fundementals of creating a Windows 7 Image using Virtual PC. This is Part 2 of 3 that addresses creation of a 'sealed' Windows 7 Enterprise x86 Image.
Here's some reference vocabulary for this endeavor:
Sealed - the process of using Microsoft Sysprep to 'seal' a Workstation Image for duplication. The 'sealing' process applies to either Physical or Virtual Machine Images.
Unsealed - the process of updating a Virtual Machine Image and then retaining the Image without 'sealing' for future updates.
Again, because in Virtual PC a series of Files comprise a Virtual Machine it is this fact I capitalize upon to retain both a 'sealed' and 'unsealed' Virtual Machine Image.
Figure 1 - As I begin, here's a quick refresher of the items constructed in Step 1 of 3. In a Folder titled 'Win7x86_Sealed' I have created a Virtual Machine Hard Drive Image (VHD) titled 'Win7x86_3-2-2010. This VHD will become a 'sealed' VHD with updates and Applications through 3-2-2010. Also note the 'supporting files' such as the 'Virtual Machine Settings File' and the 'VPC Backup File' in the folder.
The concept of 'sealing' a VHD includes using the Microsoft Sysprep Process to remove any uniquely distinguising characteristics from the Image. Examples of characteristics include 1) Domain Membership and 2) Machine SID (among others).
Figure 2 - Next, I create a new Folder titled 'Win7x86_Unsealed'. This folder will 'store' the unsealed version of the VHD for future modification. In summary, because this VHD is not 'sealed' using the Sysprep Process it can be 're-opened', then modified and maintained in the future. I copy the VHD from the 'Win7x86_Sealed' Folder PRIOR TO SEALING THE VHD FILE! (This is important as the naming convention for the folder can be confusing initially!)
Figure 3 - The 'unsealed' VHD is copied (a manual file copy) from the 'sealed' folder to the 'unsealed' folder titled 'Winx86_Unsealed'. Again, the 'unsealed' VHD is for storage and future useage.
Figure 4 - After moving a copy of the VHD into the 'unsealed' folder for safe keeping - I 'Open' the VHD to begin the Sysprep Process.
Figure 5 - The Windows 7 Enterprise Workstation Image opens without issue. I have added the Sysinternals BGInfo 4.16 application to provide the details displayed as the Desktop Background.
Figure 6 - A quick enumeration of the 'Start Menu' indicates installation of only basic Applications within this Windows 7 Enterprise Image. Next, I will begin the Sysprep Process to 'seal' this Image.
Figure 7 - An 'Administrative Command Prompt' is required to run the Sysprep Process.
Figure 8 - The Sysprep Process is initiated.
The commands required from an Administrative Command Prompt for Sysprep include:
Figure 9 - The Sysprep Tool v.3.1.4 opens within this Windows 7 Enterprise Image. It is important to select 'Enter System Out-of-Box Experience (OOBE)' from the 'System Cleanup Action' Drop Down, and 'Shutdown' from the 'Shutdown Options' Drop Down Menu.
Upon completion of this step (when successful) a fully 'sealed' version of a Windows 7 Enterprise Virtual Machine is stored within the Virtual Machine Hard Drive Image file. This VHD is 'current' with Updates and installed Applications through the creation date (3-2-2010). I can now duplicate this 'sealed' VHD for creation of any Windows 7 Enterprise x86 Virtual Machines required for Testing.
Figure 10 - Observing the 'Win7x86_Sealed' Folder denotes the 3 Files that comprise the Windows 7 Enterprise Virtual Machine just 'sealed' by the Sysprep Process.
Creating a Workstation Image from the 'Sealed' Windows 7 Enterprise x86 Sysprep Image
Figure 11 - I create a Folder Hierarchy of 'E:\VMs_in_Use\WS_1_Win7x86' for storage of Virtual Machines for Testing. If you observe the Folder Names it should be clear my intent is to make a Windows 7 Enterprise x86 Virtual PC Image with a Host Name of 'WS-1'. I will copy the 'sealed' VPC Hard Disk to the '\WS_1_Win7x86' Folder.
Figure 12 - Upon completion of copying the 'sealed' Windows 7 Enterprise x86 VHD into the destination folder where the VPC Workstation Image files will reside, I then 'rename' the VHD File. This renaming process allows for orderly storage, reference and usage when numerous Virtual Machines are involved.
The next step will entail creating a new Virtual Machine using Virtual PC and the referenced Virtual Machine Hard Disk.
Figure 13 - After renaming the Virtual Machine Hard Disk to match the naming criteria of the Testing Workstation (WS-1), I can begin to 'Create' the Virtual Machine using the Virtual PC Console.
Figure 14 - I begin creation of the new Virtual Machine using the 'sealed' Windows 7 Enterprise x86 Virtual Hard Disk Image by selecting 'Manage Virtual Machines' from the 'Windows Virtual PC' Application.
Figure 15 - Upon opening the 'Windows Virtual PC' Application I select 'Create Virtual Machine' from the menu choices.
Figure 16 - The 'Create a Virtual Machine' Wizard provides the ability to name the Virtual Machine and define the File Path. Note the File Path to the Virtual Machine Hard Disk Image previously 'sealed' using the Sysprep Process.
Figure 17 - Next, the amount of Memory and desired Network Interface Connection type are selected.
Figure 18 - Here's the important step in using a 'sealed' Sysprep Image in Virtual PC - BE SURE TO SELECT THE VHD PREVIOUSLY COPIED INTO THE VIRTUAL MACHINE FOLDER. Again, I previously copied the 'sealed' Windows 7 Enterprise x86 VHD named 'WS_1_VHD1.VHD' into this folder for useage.
Figure 19 - Upon completion of the 'Windows Virtual PC' Wizard for creating a Virtual Machine I move to the Folder where the new Virtual Machine is stored. Upon selecting the Virtual Machine, I then select 'Open' from the menu options.
Figure 20 - The new Virtual Machine running Windows 7 Enterprise x86 initiates for the first use. The Sysprep Options selected in Figure 9 above yield starting of the System-Out-of-Box Wizard.
Figure 21 - This Windows 7 Enterprise x86 Image is starting correctly. Again, this is a 'sealed' Image created using the Sysprep Process.
Figure 22 - The initial steps in the 'Set Up Windows' Wizard include 1) naming the Computer and 2) identifying the initial Administrator for the Workstation Image.
Figure 23 - Upon inputting a Password for the initial Administrator, along with a Password Hint, I proceed to the next step in the 'Set Up Windows' Wizard for this Windows 7 Enterprise x86 Virtual Machine.
Figure 24 - I select Acceptance of the License Terms next.
Figure 25 - I select the Recommended Settings for Automatic Updates.
Figure 26 - I select the appropriate Time Zone and Time.
Figure 27 - Finally, I select the Network Connection matched to the Computers Current Location.
Figure 28 - Upon completing of the 'System Out-of-Box' Wizard, a very usable Windows 7 Enterprise x86 Virtual Machine is available. This Virtual Machine is Updated through the Date of creation and includes any Applications I have included in the original 'sealed' Image.
In creating a prepared Windows 7 Enterprise x86 Virtual Machine Image I have the flexibility to create as many Virtual Machines as required for the Testing or usage Scenarios I address. If another Windows 7 Enterprise x86 Virtual Machine Image were necessary I would simply follow the process again beginning at Figure 11 above through Figure 28. Of course each of these Virtual Machines require additional System Resources which can be allocated as available.
In Part 3 of 3 I will demonstrate how to 'maintain' the Windows 7 Enterprise x86 Virtual Machine Image that is 'unsealed'. Specifically, when additional Security Updates are made available I will apply them to the 'unsealed' Virtual Machine Image and then update the 'sealed' Image using the 'fresh' Virtual Machine Hard Disk Image. Take a look at Part 3 of 3 when you have interest.
Summary: In this Blog entry I focus on 'sealing' a Windows 7 Enterprise x86 Image created using Virtual PC and then using the Sysprep Process. I also demonstrated the required steps to separately maintain an 'unsealed' version of the Windows 7 Enterprise x86 Image stored in a separate Folder. This Blog entry is Step 2 of 3 in a 3 part series. In the Part 3 of 3 I will demonstrate how to 'update' the 'unsealed' version of the Windows 7 Enteprise x86 Image stored in Part 2 of 3 for future useage.
Chief Security Architect
IT Pro Secure Corporation
blog <at> itprosecure.com