Why should you image?
When you have one machine to deploy, you insert your CD or DVD, click through the prompts, enter your license key, install all your software and make your customizations. It’s time consuming, but when you only have to do it for a single machine it’s not too bad. What happens when you need to deploy 10 machines, or 50, or 1000?
There is no way you are going to do 500 machines one at a time by yourself. It takes too long, it is error prone, and when you are done, every machine is going to be slightly different. What you need is a way to build one machine exactly the way you want it, and then make 500 copies of that machine. That is what disk imaging can do for you.
Using Imaging For Desktop Deployment
I am the Network Administrator at a small manufacturing company. At the end of 2005, we purchased about 30 new desktop systems that needed to be configured and deployed. The systems came from the manufacturer with Windows XP Professional and various versions of Office 2003 installed.
Some machines were unique, but the bulk of the machines consisted of only two configurations. The machines either had Office 2003 Standard Edition or Office 2003 Small Business Edition. All the other software on all the machines would be identical including our primary LOB application.
Although it was only 30 machines, this is a perfect scenario for system imaging since there would only need to be two images. Deploying systems by imaging leads to easier and faster deployment, more consistency and easier rebuilds. In addition, knowing that all your machines are configured identically makes updating and troubleshooting much easier.
Configuring The Sample Machine
I started by taking a representative unit and configuring it in the most generic way possible. The manufacturer already installed Office but it was not activated or configured for a specific user, so I left it that way. All other software was installed and configured using the local Administrator account; the sample machine should NOT be joined to the domain during the setup process.
All updates and patches were installed and all unnecessary services were disabled. It is very important that you carefully document your work during setup. Once setup is complete, you need to test the configuration to be sure it actually works and that your users can perform their jobs. Invariably you will discover something you forgot, and if you need to make changes to your setup, you need to know where you started. Testing is the most time consuming, but vitally important, part of a deployment. You don’t want to roll out an image to 500 machines only to discover a problem that is going to require you to visit all 500 machines to fix. It is much better to test and retest the image BEFORE it is deployed. Changing images after you have created them is a time-consuming process.
Once you have the system in a stable working state you need to prepare it for imaging by using Sysprep. Sysprep is a free tool provided by Microsoft that removes all the machine-specific information from the computer. There are many good articles available from Microsoft about how to use Sysprep.
There are several versions of Sysprep available so be sure you use the version that is designed specifically for the operating system you are imaging.
Sysprep can be a little confusing the first time you use it since it’s not always obvious what the different settings do. The best way to see the differences is to Sysprep a system using different settings, reboot the machine and observe the results. As with the rest of the setup, document your work carefully so you know what settings are correct for your environment. After running Sysprep for the final time the machine is shut down and the drive is ready for imaging.
Creating and Using The Image
There are many tools available for imaging disks. I used Symantec Ghost and had good results with it, but any imaging tool should do the job. The most important thing to consider when selecting an imaging tool for deployment is how are you going to save the image and get it onto all the other machines? If you can’t easily restore the image to a bare metal drive, it doesn’t do you much good. I opted to save the two images to DVD-Rs. That way I could boot the machine from the Ghost recovery disc and use the DVD-R to restore the image to the bare metal drive without any network connectivity or other hardware. You can save images to a network drive or removable hard disk, but you need to verify that you can access these devices from the restore environment.
Once you have installed and configured the software on your sample machine, run Sysprep, and imaged it, the hard work is done. Now, any time you need to deploy a new machine all you need to do is restore the appropriate image to it, join it to the domain and add the user account. When the user logs on, they will have all the software they need and be ready to work.
If you hire a new employee, all you need to do is obtain the new hardware, restore the image and it’s ready to go.
I performed this deployment about 18 months ago. With the release of Windows Vista, Microsoft has released the Business Desktop Deployment 2007 tools.
Tips And Pointers
Create as few images as possible. Every image you build requires the same level of testing and maintenance, so the fewer images you have the better. It's easier to create a few master images and configure the machines a little after imaging them than to create a new image for a handful of machines. Use the hardware as the primary determinant of the number of images you create.
You can only restore images to machines with identical (or very similar) hardware. If you restore an image to a machine with significantly different hardware, the image won’t contain a driver for that hardware and the machine will likely crash.
Partition the hard disk during setup. Create one partition for the operating system and the applications and other partition for the user data. That way, if the system gets really hosed, you can restore the operating system partition without disturbing the user data.
You can also use disk imaging to deploy servers. The process is similar, but you have to be very careful of the hardware differences. Many organizations have identical desktops, but not many have large numbers of servers with identical hardware.