Tag Archives: Windows 7

Windows 7 imaging with FOG – how I got it to work (85% of the time)


Tasked with deploying about 90-100 computers this summer (~60 PCs, and 35 Macs), it became clear to me that building each by hand was NOT a valid option. The building where I reside has a 20+ year old network. The simple act of applying Windows updates after the first install was a multi-hour proposition on each system. There was simply no time.

So armed with a basic gigabit switch, a reasonably good PC loaded with Ubuntu, FOG, two network cards, and enough drive space to store the system images, I got started.

I will detail my FOG server configuration in a future post

Almost immediately, I discovered that FOG works like a champ with Windows XP, but not with Windows 7. It was a bumpy ride working the kinks out of this system, but in the end I consider it a considerable success and worth the effort.

NOTE: I had VERY similar hardware for this rollout, so I didn’t have to generalize the installation / get into sysprep. I ran out of time this summer, but plan on tackling that in the coming months.

Here is the distilled process I settled on:

  • Install Win 7  – update update update.
  • Disable hibernation (open a CMD window -> “powercfg -h off”)
  • Install Office. Third party software beyond this was causing issues for me, so I limited the image to Office only. Update update update.
  • Browse to [yourFOGserver]/client – download FOG Client Service and Fogprep. Install FOG service and point it at your server.
  • Turn off Virtual Memory (Computer -> Properties -> Advanced System Settings -> Performance “Settings…” -> Advanced -> Virtual Memory “Change…” -> uncheck “Automatically manage…”)
  • Defrag the hard drive – I used Defraggler http://www.piriform.com/defraggler
  • Shrink the NTFS partition (Computer -> Manage -> Disk Management -> Rt. click on partition -> Shrink Volume). When prompted for the new volume size, add 2GB to it. You will appreciate this breathing room.
  • run fogprep as admin and immediately shut the system down. If you boot from this volume before capturing the image, you will need to run fogprep again.
  • On your FOG server: create a new image – Multi partition single disk, non-resizable.
  • PXE boot your client – select “full system inventory…” option. It’s a Windows 7 system and assign it to the image you just created. DO NOT IMAGE IT YET. Shut it down.
  • On your FOG server – select the machine from inventory, click on “Basic Tasks” and upload the image.
  • Restart your client machine, PXE boot – it will automatically grab the image from the hard drive.

Now, you should have a working template image that can be deployed to similar hardware.

When you deploy this to a new system, PXE boot the system to the FOG menu, inventory the machine and assign it to that image. Then choose to image the system immediately. It will restart (you may need to tell it once again to boot from the network) and pull the image down to the system.

Once the new system has the image, then simply expand the NTFS partition and re-enable virtual memory. In that order. I typically leave hibernation disabled.