Sysprep SkipRearm, making image, testing image, applying image, updating image


  • Sorry this is a bit long but this process has tripped many people up including myself.

    When creating/testing an image we use these steps

    1. Have two computers of the exact same model, I will call them Machine A and Machine B
    2. Install Windows 7 Professional on Machine A
    3. Boot into Audit mode
    4. Install all software, drivers, and tweak settings
    5. Run sysprep /generalize using an unattend.xml file where SkipRearm is set to 1
    6. Reboot and use imaging software (Ghost, Deploystudio, etc.) to grab an image. Once an image is grabbed from Machine A, shut it down
    7. Apply this image to Machine B and test to make sure everything works as planned
    8. If changes need to be made, boot up Machine A, enter Audit mode again, tweak image and repeat steps 5-8 until the image is perfect.

    Once we have a perfect image, we want to deploy it to all the machines of the same model, make sure they activate, and across time update this image as needed. We have come up with three methods and need some guidance.

    METHOD 1

    • Run sysprep /generalize one more time before grabbing the image with SkipRearm set to 0.
    • Once the image is applied, machines will activate themselves automatically by contacting my KMS server. If SkipRearm is set to 1 when the image is made, a new CMID will not be generated and activation using KMS will not take place.
    • If the image needs updating, it gets dicey. If the image is pulled down on a machine, it will attempt to activate and we do not want to grab an image from an already activated computer. Once the image is pulled down, restart the computer but disconnect it from the network so it will not activate. Run sysprep /generalize with SkipRearm set to 1. Hook machine to network, update image, and then run Sysprep once again with SkipRearm set to 0 before grabbing image

    METHOD 2

    • Run Sysprep /generalize with SkipRearm set to 1 and grab an image
    • Run Sysprep /generalize with SkipRearm set to 0 and grab an image
    • The two images would obviously be named such that you can distinguish between them.
    • Use the image with SkipRearm set to 0 on all of the machines of the same model. They will activate fine
    • When it comes time to update this image, apply the one with SkipRearm set to 1, update the image, and then grab two new copies

    METHOD 3

    • Run Sysprep /generalize with SkipRearm set to 1 and grab an image
    • Apply this image to all the machines of the same model
    • On each of these machines run this at an elevated command prompt:
      cscript c:\windows\system32\slmgr.vbs –rearm
      This resets the CMID and allows the machine to activate


    Sunday, May 15, 2011 1:03 PM

All replies

  • Thank you for your sharing. It will be helpful.

    I will change the type of this thread to General Discussion.

    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. ”
    Tuesday, May 17, 2011 9:47 AM
  • Arthur,

    This is not a general discussion, it is a question. In the middle paragraph I state that I need some guidance. Which method of the three I describe is best practice? Maybe there is a method I am missing altogether.


    Wednesday, May 18, 2011 10:12 AM
  • HendersonD,

      I'm looking at the same issue but with multiple models.  I have found that if I keep my reference system which is a Dell 745 that I can make my updates and tweaks.  Then I capture that image so if anything goes wrong I can start over. (Did that a few times with the unattend file). I then run the OOBE and use the setupcomplete script to rearm and point the system to o ur KMS server.

    cscript //b c:\Windows\System32\slmgr.vbs -skms servername
    cscript //b c:\Windows\System32\slmgr.vbs -ato

    Hope this helps!

    Dennis C. Varen Technologies
    Wednesday, May 18, 2011 6:52 PM
  • Dennis,

    I thought if you use a KMS, machines will automatically locate the server via a DNS record that gets created when the KMS server is installed. On our first go around on this we imaged 170 laptops with the SkipRearm set to 1. We noticed that none of them were activating. As soon as we ran:

    cscript c:\windows\system32\slmgr.vbs –rearm

    They contacted our KMS server within a minute or two and activated fine. We breathed a sigh of relieve, I was thinking we may have to reimage all of them by making a new image running Sysprep with SkipRearm at 0. Now that we will be image a bunch of new computers in the near future, I wanted to find out how others are handling this.


    Wednesday, May 18, 2011 11:17 PM
  • I would have to do a little more research since one of my coworkers set everything up but we found we had to set the server or the systems were looking for a Microsoft server.  I'll have to look at our DNS and see if an entry was entered.  I know some times we have to manually run the commands but for our latest build it seems to be working.  With the commands in the setupcomplete script.  I think part of our initial issue was were were not at the 25 machines.

    Dennis C. Varen Technologies
    Thursday, May 19, 2011 1:20 AM