One of the cardinal rules of our IT Office is that everyone must run a standardized (as much as possible) set of software. This practice ensures an easier support experience, both for the technicians and the end users. It also reduces the overall maintenance window. If everyone is running the same software then we all know how to answer each other’s questions and help with different tasks. What happens however, when everyone needs to change at the same time?
When I first started this job we were running a mixture of Windows 95, 98, ME and 2000 workstations. The Microsoft Office versions ran along the same time frame and were anywhere from Office 95 to 2000. Needless to say this was a support nightmare. I was able to convince everyone that we needed to standardize on the latest available software and move forward from there. Unfortunately, not everyone had the money to do this in a timely fashion.
The compromise was to slowly standardize on the same packages as we phased out older equipment. Fast forward several years and we have been happily running Windows XP and Office 2003. We avoided Windows Vista and Office 2007 (almost) completely. Once Microsoft announced that they were ending support in 2014 I realized that it was time to start planning for a migration.
This time we are going to do it differently. This time we are updating the entire office at once. Since we have never had a reason to do a mass installation of the same software packages, and our equipment comes from the Original Equipment Manufacturer (OEM) with a Windows image preinstalled, we rarely have to build a brand new installation. Throw in our use of Clonezilla to image the hard drive and it is rather unusual for us to have to build anything from disc. Now we have to deploy 35-40 workstations altogether in one project.
There is no upgrade path from Windows XP to Windows 7 so we have decided to take advantage of the built in deployment tools. All good implementations start with research, and this one is no different. Here are a few websites that helped me wrap my mind around the process and get the ball rolling:
- Post from David Szpunar’s blog detailing his migration.
- Deploying Windows 7 – Part 5: MDT 2010 Enhancements.
- Another very helpful website discussing XP to Windows 7 Migration with Microsoft Deployment Toolkit 2010.
- Tips for integrating the User State Migration Tool.
The third link provided the most direct help. The first two helped me figure out the main concepts. Once I read through the information on these sites I downloaded the following tools:
- Microsoft Deployment Toolkit
- Windows Automated Installation Kit (AIK) For Windows 7
- User State Migration Tool
Install the first two tools on your deployment server. The third tool should be installed on each workstation before and after the migration. We’ll talk more about this later.
Create a new deployment share (MDT Deployment Share) by right clicking on the Deployment Shares folder and selecting New Deployment Share. Walk through the New Deployment Share Wizard to set up your preferences for the Windows 7 installation. You can enter a license key, suppress the license agreement message and pre-determine all of the installation variables. Answering these questions in advance will greatly simplify the deployment process. Once you have finished you should see something like this:
The next step is to import your operating system(s) installation media. In your Deployment Share, right click on Operating Systems and select Import Operating System. Walk through the wizard. There are a few different options through which you can deploy Windows 7 to your workstations. You can import the installation files directly from the Windows 7 DVD, use a sysprep image (WIM) or connect to your Windows Deployment Services server.
We chose to go with the first option. This allowed us to run a complete Windows 7 installation for each workstation. We have a wide range of available hardware so the more custom installation worked better for us. We did lose a bit of time for each upgrade as compared to the custom image but it was not a large amount of time.
Once you have imported the operating system files you should set up any additional applications that you would like to have silently deployed during the installation. Right click on Applications and choose New Application. Walk through the wizard to set up any applications with network installation and silent install commands.
The next step is to update the deployment share. Right click on your deployment share folder and select Update Deployment Share. Be prepared for this to run for a few minutes. This step prepares the deployment image boot media. You can find the iso image for the boot cd in the $DEPLOY_FOLDER\Boot directory. There should be 32 bit and 64 bit files available. Burn the applicable boot image and you are ready to go!
Silent Install Commands
These are the commands that I used to silently install various applications after the operating system upgrade completed.
- Crossloop – crossloopsetup.exe /VERYSILENT /SP-
- Mozilla Firefox – Firefox Setup 3.5.5.exe -ms
- Java – jre-6u22-windows-i586-s.exe /s ADDLOCAL=ALL
- Adobe Acrobat Pro 9 – I used the Adobe 9 Customization Wizard to configure the installation. You can find this wizard at http://www.adobe.com/support/downloads/detail.jsp?ftpID=3993.
- Office 2010 – Microsoft also has an easy to use Office 2010 Customization Tool. There is an interesting level of detail to which you can customize your own installation. You can find more information on this tool here: http://technet.microsoft.com/en-us/library/cc179097.aspx. One of the nice things I was able to automate with this tool was the creation of a second set of shortcuts on the desktop for all of the Office products. We typically have to do that by hand in a regular installation.
- We had a few more applications such as help desk audit tools and antivirus clients that were deployed silently as well. They had their own silent install options so I did not need to specify them (the command line options) in the Application Wizard. The installation routine deployed them by calling their executable with no command line switches.
There were other packages that I wanted to silently deploy but could not figure out the command line in time. Some of the packages do not have a silent install command capability to begin with (but they should!). We downloaded the network installation files and added each of them to the post-migration checklist. Considering that I was able to automate the deployment of more than half of our normal applications this wasn’t a very difficult step.
This brings us to the end of the Deployment Workbench. The next step is to boot the workstation and start off the migration. I will discuss what that looks like in another post. Feel free to leave a comment below to discuss our deployment. We learned a lot with the first few workstations and wound up changing a few of our procedures for the rest of the job. More on that later!