Boot Loop after Sysprepping a Golden Image VM

  • Hello,

    I am attempting to create a Golden Reference Image that I am capturing to FOG and then deploying to multiple models of devices. I have the Storage and NIC drivers for all the models I support preloaded into the Windows Driver Store using the following PowerShell command:

    Get-ChildItem -Path $PSScriptRoot -Recurse | Where-Object -Property Extension -EQ “.inf” | ForEach { PnPUtil.exe -a $PSItem.FullName }

    I have verified they are in the Driver Store located in C:\Windows\INF. I am sysprepping using the attached skipoobe.xml file.


    The issue I had before was that I could load my Golden Image onto older model devices, but the HP 650 G8 wasn’t working. I updated my FOG Server to the latest dev-branch and I could correctly deploy images to all models now after sysprepping.

    Now when I sysprep my VirtualBox VM, I get a boot loop where Windows spins for one and a half loop and then the screen cuts back to the manufacturer logo, it boots to Windows but BSoD’s with an INACCESSIBLE_BOOT_DRIVE error, or Windows Recovery pops up with an 0xc01 error. This is not model specific, and happens for various models, leading me to believe I am missing something in the answer file I’m using. The goal is to use the tthom account that was setup prior to sysprep, and to skip OOBE completely and just go to the login screen.

    Any guides, advice, and/or tips would be much appreciated.

    Thank you!

  • Moderator

    @rtarr said in Boot Loop after Sysprepping a Golden Image VM:

    It then boots to the login page for the local admin where install packages are located on the desktop.

    I’m glad you have it worked out.

    To extend what you have done just a bit more (if needed). Look at my unattend.xml script there are sections where to add local keyboard support (if you are not in the US) as well as it should have autoadmin login with a login count number that will cancel the auto admin login after X number of logins. If not you can add it to your unattend.xml file. That in conjunction with the run firstlogincommands where you can install any applications in an unattended manner as the local admin. The last firstlogincommand should be shutdown -r -t 0 that will reboot the computer leaving it at the login window.

    I just looked and my posted unattend.xml file in the link does not included this section. I must have removed that before posting. But above is enough info for you to google it.

  • Update, rebuilding the VM from scratch helped it at least boot to windows a little before a sysprep error appeared during the specialize step.

    I generated a new answer file using this link:

    I then modified it to have our local admin account info. I have tested my Image on 4 separate models, and the sysprep skipped OOBE as desired and only prompts for a network connection before booting, which is perfect. It then boots to the login page for the local admin where install packages are located on the desktop.

    Thank you again George for your help!

  • @george1421 Thanks for the info George, I’ll take a look at this for the answer file. I noticed my VM has 6 partitions instead of the regular 4, so I’m rebuilding my VM from scratch with the standard 4 Windows partitions. Wonder if that was causing an issue.

    I’ll post an update once I’ve rebuilt the reference image and test a push to a few different models.

  • Moderator

    @rtarr Its strange that you have a functioning sysprep and golden image build and now it fails on VB.

    While the following post is not mine, it does have the basic unattend.xml script I’m still using in my environment. It was developed for Win7 but works on Win10. This post is also good because it goes through everything you need to make a lite touch image deployment. It also gives the proper sysprep commands to leave the source computer in a good state for cloning with file names where they should be so windows can find them during winsetup /oobe.

    I looked at your xml file and it looks like its missing parts for a complete deployment. I can’t point to the specific sections that are missing, but it looks too short to have all of the needed bits.