Showing posts with label VHDX. Show all posts
Showing posts with label VHDX. Show all posts

Monday, April 28, 2014

Creating a clean software package environment

In this post we are going to discuss how to create a clean software packaging environment, or package street/package factory.

 1). It is highly recommended to use a virtual machine and a good tool is VMware Workstation for PC or VMware Fusion for Mac. If you use Windows 8(or higher), then you could use Hyper-V, which is free (see my other post HERE on how to enable this)
 
2). Choose an Operating System. Preferably Windows 7 32-bit or 64-bit (depends on what environment is most used in your company, possibly both are needed).
 
3). Create a 30 GB virtual hard disk and a 10GB virtual hard disk (used for page file) and attached to your virtual machine. If you have a SSD in your host system, it is recommended to point it to that disk (to achieve best performance)
 
4). Install Windows to the freshly created virtual hard disk(the 30 GB one)
 
5). Turn Off Automatic Updates then Run Windows Updates but only Security Updates, Service Packs, and other Critical Updates. Avoid Language Packs, Windows Defender, Internet Explorer Updates, and Driver Updates. You are best off not installing any dependencies like Visual C++ or .NET Framework. In this case, if your software complains then you'll know what .NET Framework your software package needs. You can then add it as a dependency (for instance when creating the package using Adminstudio).
 
6). Turn Off System Restore
 
7). Disable Extra Features from Programs / Add or Remove Windows Features you will not need. It is necessary to create a reference computer that is as clean as possible.
 
8). Create your page file. You may need to format your 6GB Hard Drive.

Right Click Computer -> Properties -> Advanced System Settings -> Advanced Tab -> Performance Settings -> Adjust for Best Perfomance -> Advanced Tab -> Change... -> Uncheck Automatically manage paging File size for all drives -> Check Custom size -> Click your Second 6GB Drive -> Take the amount of Physical Memory in your PC and double it for both Initial size and Maximum Size EX 2048 Physical is 4096 -> Click Set -> OK -> OK -> OK -> Restart
 
9). Turn off Services you don't need. Services.msc Double click a service, Choose Disabled, Click Stop, Click Apply. 
Services I disabled were:

  • Disable BITS
  • Disable MpsSvc (Windows Firewall)
  • Disable wuauserv (Windows Update)
  • Disable WSearch (Windows Search)
  • Disable WinDefend (Windows Defender)
  • Disable Themes
  • Disable wscsvc (Security Center)
 
10). Install VMware Tools, Parallels Tools, VirtualBox tools, Hyper-V Integration Services etcetera. Whichever hypervisor you are using. Reboot when done
 
11). Install your MSI Packaging Tool, (for instance, Admin Studio, InstallShield, AppDeploy, EMCO, Orca) I'm using AdminStudio
 
12). Add anything else you think you may need. Now you can configure your Machine how you want it. 
 
13). Shutdown the machine and create a snapshot/checkpoint. Now you can use your MSI creating tool, and create snapshots when done. You can also use this machine to create captures.

Thursday, April 4, 2013

Hyper-V>> Save diskspace using a differencing disk

In the last blog, there is explained how to create a virtual machine. In this blog we'll talk about creating a differencing disk. 

What is a differencing disk?

A differencing disk is a disk that's based on a so called parent disk. This parent disk can be a sysprepped image of Windows 7/8/2008/2012 or another OS. It can also be just a plain simple image of another machine. The differencing disk uses this parent disk, and saves only the differences in it's own disk. This way you can create lots of machines that are based on the same parent disk. The performance will be a little less good then normally, but it's still workable. However, because you'll need less snapshots and initial disks, the free disk space on your storage will be better. The snapshots you will make will also be smaller. 

How do I create a differencing disk?


1. First, make a new VM. See my previous blog for the steps that need to be taken to achieve this.

2. Give the VM a fitting name.
 
 
3. Choose 'Attach a virtual hard disk later' and finish the wizard.
 
 
 
4. You will return to the Hyper-V Manager. Right click, and choose Settings. THe screen below will appear. Go to IDE Controller 0 in the left pane, and click on Add.
 
 
 5. You will see the following screen. Now click on New.
 
 

 6. Click Next. The following screen will appear. Choose VHDX. Take notice that this format is only compatible with Windows 8 and newer.
 7. Click Next again, and now you can choose the type of disk. Choose for differencing disk.
 
 
 
8. Give the disk a recognizable name, and click on Next. 
 
 
9. Choose the parent disk in the next screen. In this particular case, I've chosen a sysprepped Windows 7 disk.
 
 
 
10. Click again on next, and check the summary to see if everything is OK. When this is the case, click Finish. 
 

Note: You can check if the disk really is a differencing disk using Powershell. You can also check this in the properties of the disk.