My preferred method for installing Windows NT 6.* (Windows 7/8/8.1 etc) is booting into a custom WinPE (MistyPE) and running setup.exe - either from a mounted .iso or a network share. The main limitation in using this method is the requirement for using a 32-bit WinPE to run the 32-bit Windows installer or a 64-bit WinPE to run the 64-bit Windows installer. There are other methods that can be used to overcome this limitation.
Setup Tiny PXE Server to include MistyPE (or an alternative WinPE build - including boot.wim from Windows installation media, WinRE, etc) using the instructions in the WinPE section of this guide (copying boot.wim, boot.sdi, boot\BCD, etc - filename=pxeboot.n12 in config.ini).
Using Windows 7 as an example, copy the contents of your Windows 7 installation DVD to C:\pxesrv\files\win7 (edit paths to reflect your own setup). Now share the C:\pxesrv\files\win7 directory as sharename win7.
Network boot the Client PC - loading WinPE.
Start network services if they are not started automatically (MistyPE does not run the Wpeutil InitializeNetwork command at startup).
Server setup (information required for connecting to the server share win7) -
To connect to a network share from WinPE the following command syntax is used -
Assuming there were no issues connecting to the network share in the preceding step, and the share was mounted as Z:, run the following command from a command prompt -
There are a range of alternatives to running setup.exe - my preferred method is using Wimlib-ImageX (download here) - a Linux version is also available. Add Wimlib-Imagex.exe (and dependencies) to your WinPE build - or add them to the win7 share if this is more convenient.
Follow the instructions in the Connect to the network share section. We'll assume here that the share is mounted as Z:.
You will need to prepare the hard disk on the client system before running Wimlib-Imagex.exe - create an active primary partition for the Windows installation if required. diskpart.exe in WinPE can be used to prepare the disk - it will automatically add the code required to load BOOTMGR (the windows boot loader) to the volume boot record when formatting the volume. We'll assume in the instructions below that the volume to be used for the Windows Operating System is mounted as C:
Apply the contents of Z:\sources\install.wim to your local volume using the syntax below -
After applying the Windows OS to volume C: you will need to create boot files. Use bcdboot.exe with the following command (edit to reflect your own setup) -
Sample batch file for applying Z:\sources\install.wim and running bcdboot (edit to reflect your own setup) -
Document date - 28th February 2017(DRAFT)