XP PXE install with Linux
I've been trying to install XP using PXE for the last few days without much luck. I have the i386 folder on a Linux server, I've been using this guide but havent been able to make much sense of it in places PXE Network - Linux Based - Boot winpe from the net. Does anyone know of a clearer guide or could anyone walk me through the process? I already have PXE set up for several Fedora distros so the PXE side of things is working fine. Any help would be GREATLY appreciated! What I have done so far from scratch is:
1. Created a samba share on the server called REMINST
2. Created a folder within the share called winxp and copied the i386 folder to it
3. Extracted the PXE loader to the /tftpboot folder using cabextract <Source dir>/i386/STARTROM.N1_
4. Modified the name of the loader from NTLDR to XPLDR using sed -i -e 's/NTLDR/XPLDR/gi' startrom.n12
5. Extracted the setuploader to /tftpboot using cabextract <Source dir>/i386/SETUPLDR.EX_
6. Modified the name of the response file from winnt.sif to winxp.sif using sed -i -e 's/winnt\.sif/winxp\.sif/gi' setupldr.exe
7. Modified the name of ntdetect from ntdetect.com to ntdetect.wxp using sed -i -e 's/ntdetect\.com/ntdetect\.wxp/gi' setupldr.exe
8. Renamed setupldr.exe to XPLDR
9. Copied <Source dir>/i386/NTDETECT.COM to tftpd root and called it ntdetect.wxp
10. I then created the following winxp.sif file:
I also added the following to the pxelinux.cfg/default file
floppyless = "1"
msdosinitiated = "1"
; Needed for second stage
OriSrc = "\\public\REMINST\winxp\i386"
OriTyp = "4"
LocalSourceOnCD = 1
DisableAdminAccountOnDomainJoin = 1
OsLoadOptions = "/fastdetect"
; Needed for first stage
SetupSourceDevice = "\Device\LanmanRedirector\public\REMINST\winxp"
ComputerName = *
; if needed
With this much done I get to the 'Setup is inspecting your computers hardware configuration' screen and then get the following error: 'INF file txtsetup.sif is corrupt or missing, status 21. Press any key to exit.'
There is a section at the end of the mentioned guide that I dont fully understand which says:
'You can create a directory to store inf files for network drivers, then use infparser.py to create the driver cache file, then start binlsrv.py.
Each .sys file of network drivers should be placed in the respective i386 installation directory, also note some nic drivers for xp also work on w2k.'
I have ran the infparser.py command with the location of the inf folder (in the i386 folder) and it tells me:
Compiled 956 drivers
I then run sudo ./binlsrv.py and it comes back with:
Succesfully loaded 956 devices
Binlserver started... pid 25468
The PXE boot doesnt get any further after doing this though. Can anyone shed some light on this? Thanks!