[U][B]Introduction[/B][/U]
I make hardware specific images as I have not had the time to learn the SAD2 and loading drivers after the image. Also, I need to be able to image a computer and have as little as possible to do afterwards. I don’t want to troubleshoot why a driver didn’t install. Usually when I do mass imaging, it’s 600 computers in 3 weeks, then 1 or 2 a week for the rest of the year. I need those 600 to go as smoothly as possible.
[U][B]Setup Information[/B][/U]
I’m using FOG 0.32 on Ubuntu 10.04 LTS and 12.04 LTS. I have a main FOG server that handles the majority of FOG stuff including ProxyDHCP and two other storage nodes, each in their own storage groups. My second and third FOG servers were installed with the Storage Node option.
[U][B]Sysprep and Building the image[/B][/U]
I basically start out with a volume licensed version of Windows 7 or Windows 8 on a bootable USB flash drive. I use the Windows 7 create bootable flash drive program, similar to unetbootin but for Windows 7. It’s available for free from Microsoft. I don’t remember the actual name, and it’s on my work computer and I’m at home.
So I boot from the Windows 7 or Windows 8 bootable installer and being the installation. I tell the installer to do a custom install and remove all previous partitions from the drive so it’s clean. I continue the Windows installer until the point that it asks me for a user or computer name. At this point I reboot into Audit mode using Ctrl-Shift-F3. I immediately disable sleep/hibernate on the system because if it goes to sleep/hibernate you can’t log back into the Administrator account and you have to reboot.
I install drivers either from usb stick or from the network/internet. Do NOT join the computer to the domain. If you have to use a domain file server, just give it your domain credentials when asked (I tell it to save mine). I sometimes use: net use \server-name\share /user:domain\username *
This is useful in case windows explorer isn’t prompting you for credentials. You may have to: net use * /del
When you install the FOG Service, set it to manual start up so it doesn’t try to rename/join the computer to the domain while you working on the image. You can do this from the command line using: sc config “fog service” start= demand
After I install all the drivers and software the system is still in sysprep audit mode. I shut it down and take an “audit mode” image. I have created an image definition in FOG for ‘Model-audit’ and set the host record to this image. If the system is Windows 7, I set the OS to Windows 7. If Windows 8, I set it to Vista. I use Multiple Partition, Single Disk (non-Resizable) image type. Taking the image with the install still in Audit mode makes it so I can go back and add/fix things to the base image without affecting the rearm counts of Windows and Office 2010/2013.
After I take the “audit mode” image, I push that to similar hardware and make sure it comes up in audit mode. Just to make sure the image I took is good and I can go back to it if I need to.
I then create a new image definition named ‘Model-oobe’ and set the host record to this image.
At this point, there isn’t much left to do but get ready for oobe mode. I have a usb flash drive that has some files on it. One is a batch file that creates the %windir%\Setup\Scripts directory if needed, copies a premade SetupComplete.cmd file into it. The script also copies my unattend.xml file to %windir%\system32\sysprep\unattend.xml. If the system has Office 2010/2013, then it also rearms office using ospprearm.exe. The very last thing it does if all those other steps work is to call sysprep /generalize /oobe /shutdown /unattend:%windir%\system32\sysprep\unattend.xml
After sysprep runs, the system shuts down. Remove the USB stick. Create an upload task for this host making sure it’s set to the Model-oobe image definition. Turn on the machine and verify it begins the upload task. If for some reason it doesn’t do the upload task (forgot to remove the USB stick, whatever) and it loads into windows, that’s OK. Just set the image back to the audit mode version, and deploy the audit mode image to it and run the batch file again to copy the SetupComplete and unattend files back to their respective locations, rearm office, and run sysprep.
So if the upload job ran successfully, the machine should reboot and and finish running the sysprep tasks, then run your SetupComplete.cmd file. In my SetupComplete.cmd file, I delete the unattend files and call the slmgr /ato and ospp.vbs /act to activate Windows and Office. I also set the FOG service back to automatic startup type. I set it to manual while working on the image, but now I want it to auto so it will rename and join the computer to the domain.
[U][B]Licensing and Activation[/B][/U]
If you are imaging Windows 8, you can setup Active Directory Based Activation(ADBA), and they automatically activate upon joining the domain. You have to setup ADBA on your AD forest/domain. I won’t go into the details here, but I can help if you need specific help.
For Windows 7, I use KMS activation. I originally setup KMS on a Windows Server 2008 R2 system, and it worked after applying a couple of updates to allow it to activate Windows 8 and Server 2012. I upgrade the machine to Windows Server 2012 and applied the Office 2013 Volume Licensing activation update so I could KMS activate Office 2013 on my Windows 7 machines.
After setting up the Windows 7 KMS host key and Office 2013 KMS host key, and creating ADBA objects for Windows 8 and Office 2013, I can activate all the clients on my network. KMS requires 25 active hosts to stay working. That means it won’t actually activate any of your Windows 7 clients until the 25th one and they all have to have unique CMID’s, which are generated when you sysprep /generalize /oobe.
ADBA doesn’t have this requirement (25 clients), so it’s easier to use if you are deploying Windows 8 clients or Office 2013 on Windows 8.
I’ll add more to this later, I’m rambling a bit due to the hour and being tired.