For all you Linux user, here is what I came up with for Vista install from
Linux. I did this on Redhat 4.0.
Steps
1) On a Windows machine, install the WAIK. I used a Vista box, but I think
W2K3 or XP might work.
2) From the attached winpepxe.tar, copy the bld directory to c:\
3) Follow the instructions in c:\bld\README.txt. This will allow you to build the boot kernels for
x86 and amd64 for the tftp directory.
4) Copy kernel to linux server
net use f: \\SERVER_IP\SHARE
copy_krnl_to_server.cmd x86
copy_krnl_to_server.cm amd64
Put these under you tftpd directory under pxe/winpe
5) Update your tftp-server to version 0.40 atleast. This fixes a bug tftp remapping,
6) copy the following to /etc/tftpremapp
# TFTPD remapping reuired to support Vista
re bootmgr\.exe pxe/pxelinux.cfg/\x/bootmgr.exe
rg \\boot\\ pxe/pxelinux.cfg/\x/
rg \\Boot\\ pxe/pxelinux.cfg/\x/
rg ^\\ pxe/pxelinux.cfg/\x/
rg \\ /
The \x represents the HEX IP value for the client.
Create a link to the proper architecture for the client.
for example for x64 architecture
cd $TFTPROOT/pxe/pxelinux.cfg
ln -s ../winpe/x64 $HEX_IP
You may need to adjust the paths for your environment.
7) Add the following to the tftpd option in /etc/xinetd.d/tftp -remap /etc/tftpremap
8) Set the next file similar to the following
filename="pxe/winpe/_ARCH_/pxeboot.n12";
9) When an install starts, the pxeboot.n12 will be downloaded and will ask for more files.
10) This will eventually will execute WinPE.wim, wich runs the startnet.cmd
11) Startnet.cmd runs create_net.vbs which does a
Wscript.Echo("net use y: \\" + myDHCP + "\answers\" + myIP)
where
myDHCP is taken from the ipconfig /all command
answer is my share
myIP is the IP of the client.
12) startnet.cmd will cd to y:\clientIP directory and run
os_install.cmd wich is attached. You will need to
modify it for your environment. Not this whole schemes works with
W2K3x64 and wXP64, so some of the items in os_install.cmd are not needed.
13) os_install.cmd eventually runs the Vista setup.exe
I have included an asnwer file for your convenience. Use M4 to instantiate it.
Good luck.
Tom