I just did this (2011-04-01), and this question consistently ranked high in my googling, so I'll throw down a way-after-the-fact answer with the notes about what I learned. Hopefully this will fill in some blanks.
Source OS was Win7 x64.
Source machine:
This machine must have a static IPv4 address. This example will use 192.168.0.1
.
This machine must have a Windows installation in a shared folder somewhere. This example will use .\win7
This example will log in to the source machine with user TEST
and password test
.
Use tftpboot to fire up a DHCP server (gives an IP to a computer when requested).
This will also start a TFTP server for all of the file transfers.
There should be a folder called boot\
in the tftpboot directory which contains an installation of Windows PE.
Start tftpd64.exe (or tftpd32.exe), open the settings, use default settings, and change:
- IP pool starting addresss: Whatever, the pool of IPs to draw from
- Size of pool: Must be > 2
- Boot File:
boot\pxeboot.com
(will dump into Windows PE environment)
- Mask: 255.255.255.0 works fine.
- Uncheck "Ping address before assignation"
- Check "Bind DHCP to this address"
Restart the program to ensure changes are in effect.
Receiver machine:
Run a network boot from the receiver machine. (The DHCP server will assign an IP).
The boot file will be transferred and run. Press F12 to tell Windows PE to do something.
Wait a while (30-60 seconds). A command prompt will appear and load. Wait until a cursor is available.
A drive must be assigned to the root folder on the Source machine. To do this:
X:\Windows\system32>net use z: \\192.168.0.1\win7
A username of a user on the source machine, and password, must be entered.
Enter the user name for '192.168.0.1': 192.168.0.1\TEST
Enter the password for 192.169.0.1: test
The command completed successfully.
Navigate over to the new directory (z:\
) and fire away. Commands will have a long delay but should work eventually.
Links:
http://tftpd32.jounin.net/tftpd32_download.html (DHCP server x86 or x64, no boot\
dir)
WinPE link removed <-- You'll have to get a legal copy of WinPE. Search on Microsoft's website for the Windows AIK (Automated Installation Kit). It will have WinPE in it, and you can use that as the boot image (winpe.wim).
http://www.geeksonhigh.com/hardware/cannot-boot-from-windows-7-cd-try-pxe
http://certcollection.org/forum/topic/28167-installing-windows-7-over-the-network-using-pxe-booting-and-tftp/
Troubleshooting:
If you run into an error "autorun.dll" could not be loaded or is corrupt setup can not continue error code (0xC1)
. This means your version of WinPE is mismatched with your Windows ISO. Type ver
at the WinPE prompt. You'll get something like 6.*.****
.
Here's a rough table of ver
to WinPE version to Windows ISO:
| ver | Win PE Version | Matching Windows ISO | Background Colors |
------------------------------------------------------------------------
| 6.0.6*** | 2.* | Windows Vista | Blue and Green |
| 6.1.7600 | 3.0 | Windows 7 | Gray |
| 6.1.7601 | 3.1 | Windows 7 SP1 | ??? |
| 6.2.9200 | 4.0 | Windows 8 | ??? |
| 6.3.9600 | 5.0 | Windows 8.1 | ??? |
Windows AIK links: