Windows guests - build ISOs including VirtIO drivers

From Proxmox VE
Revision as of 21:01, 22 March 2013 by Di Pe (talk | contribs) (Created page with "=Build ISOs including VirtIO drivers= ==Prep Machine== * Launch a fast Windows 7 box and create a folder c:\tmp * install AIK for Windows 7 (http://www.microsoft.com/en-us/down…")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Build ISOs including VirtIO drivers

Prep Machine


Prep and extract isos

  • copy all your Windows ISOs to folders c:\tmp\win7, c:\tmp\win2008, c:\tmp\win8, c:\tmp\win2012, etc
  • extract sources\boot.wim and sources\install.wim from each iso and put them in the same folder as the iso
  • get the lastest virtio-win-x.x-xx.iso and extract the drivers into the VirtIO folder for each OS (e.g. WIN8\AMD64\*.* from the iso goes into c:\tmp\win8\VirtIO\ and into c:\tmp\win2012\VirtIO\)


use AIK

  • Start All Programs -> Microsoft Windows AIK -> Deployment Tools Command Prompt (Run as Administrator)
  • check how many indexes your install.wim has (e.g. dism /get-wiminfo /wimfile:c:\tmp\win2008\install.wim). Windows 2008 has up to 8 indexes
  • Set the variable IDX in each winxxxx-inject.bat to the number of indices you found in each install.wim (e.g. IDX=8)
  • For each OS there is a SetupComplete.cmd. This script is always executed by the Windows installation as a final step. Make sure it contains the ballon service installer. You may add other commands to it.

inject drivers and write wim files back to isos

  • launch multiple winxxxx-inject.bat sequentially and uninterrupted, e.g.: winpe-inject.bat && win7-inject.bat && win2008-inject.bat && win8-inject.bat && win2012-inject.bat
  • alternatively you can run multiple batch commands in parallel by launching multiple instances of "Deployment Tools Command Prompt" as Administrator
  • for each iso use UltraISO to copy boot.wim and install.wim back to the sources folder of the ISO file