PXE booting Windows XP Installation. For pxe server setup you can refer my previous post. Yum install cabextract -y yum install tftp-server tftp samba -y. Run AIOCreator.exe and integrate Windows ISO file into AIO Boot. Only support Windows 7, 8, 8.1, Windows 10, does not support Windows XP. Share AIO Boot Drive. Run PXE and boot into PXE on clients.
-->Applies to
- Windows 10
Summary
This walkthrough describes how to configure a PXE server to load Windows PE by booting a client computer from the network. Using the Windows PE tools and a Windows 10 image file, you can install Windows 10 from the network.
Prerequisites
- A deployment computer: A computer with the Windows Assessment and Deployment Kit (Windows ADK) installed.
- A DHCP server: A DHCP server or DHCP proxy configured to respond to PXE client requests is required.
- A PXE server: A server running the TFTP service that can host Windows PE boot files that the client will download.
- A file server: A server hosting a network file share.
All four of the roles specified above can be hosted on the same computer or each can be on a separate computer.
Step 1: Copy Windows PE source files
- On the deployment computer, click Start, and type deployment.
- Right-click Deployment and Imaging Tools Environment and then click Run as administrator. The Deployment and Imaging Tools Environment shortcut opens a Command Prompt window and automatically sets environment variables to point to all the necessary tools.
- Run the following command to copy the base Windows PE files into a new folder. The script requires two arguments: hardware architecture and destination location. The value of <architecture> can be x86, amd64, or arm and <destination> is a path to a local directory. If the directory does not already exist, it will be created.For example, the following command copies amd64 architecture files to the C:winpe_amd64 directory:The script creates the destination directory structure and copies all the necessary files for that architecture. In the previous example, the following directories are created:
- Mount the base Windows PE image (winpe.wim) to the mount directory using the DISM tool. Mounting an image file unpacks the file contents into a folder so that you can make changes directly or by using tools such as DISM. See the following example.Verify that 'The operation completed successfully' is displayed. Note: To view currently mounted images, type dism /get-MountedWiminfo.
- Map a network share to the root TFTP directory on the PXE/TFTP server and create a Boot folder. Consult your TFTP server documentation to determine the root TFTP server directory, then enable sharing for this directory, and verify it can be accessed on the network. In the following example, the PXE server name is PXE-1 and the TFTP root directory is shared using a network path of PXE-1TFTPRoot:
- Copy the PXE boot files from the mounted directory to the boot folder. For example:
- Copy the boot.sdi file to the PXE/TFTP server.
- Copy the bootable Windows PE image (boot.wim) to the boot folder.
- (Optional) Copy true type fonts to the boot folder
Step 2: Configure boot settings and copy the BCD file
- Create a BCD store using bcdedit.exe:
- Configure RAMDISK settings:The last command will return a GUID, for example:Copy this GUID for use in the next set of commands. In each command shown, replace 'GUID1' with your GUID.
- Create a new boot application entry for the Windows PE image:
- Configure BOOTMGR settings (remember to replace GUID1 in the third command with your GUID):
- Copy the BCD file to your TFTP server:
Your PXE/TFTP server is now configured. You can view the BCD settings that have been configured using the command bcdedit /store <BCD file location> /enum all. See the following example. Note: Your GUID will be different than the one shown below.
Tip
If you start the PXE boot process, but receive the error that 'The boot configuration data for your PC is missing or contains errors' then verify that boot directory is installed under the correct TFTP server root directory. In the example used here the name of this directory is TFTPRoot, but your TFTP server might be different.
PXE boot process summary
The following summarizes the PXE client boot process.
The following assumes that you have configured DHCP option 67 (Bootfile Name) to 'bootPXEboot.n12' which enables direct boot to PXE with no user interaction. For more information about DHCP options for network boot, see Managing Network Boot Programs.
- A client is directed by DHCP options 066 and 067 to download bootPXEboot.n12 from the TFTP server.
- PXEboot.n12 immediately begins a network boot.
- The client downloads bootbootmgr.exe and the bootBCD file from the TFTP server. Note: The BCD store must reside in the boot directory on the TFTP server and must be named BCD.
- Bootmgr.exe reads the BCD operating system entries and downloads bootboot.sdi and the Windows PE image (bootboot.wim). Optional files that can also be downloaded include true type fonts (bootFontswgl4_boot.ttf) and the hibernation state file (hiberfil.sys) if these files are present.
- Bootmgr.exe starts Windows PE by calling winload.exe within the Windows PE image.
- Windows PE loads, a command prompt opens and wpeinit.exe is run to initialize Windows PE.
- The Windows PE client provides access to tools like imagex, diskpart, and bcdboot using the Windows PE command prompt. Using these tools together with a Windows 10 image file, the destination computer can be formatted properly to load a full Windows 10 operating system.
See Also
Concepts
Start this ^%#^ when i’ve problem with Windows XP on Toshiba Portege R150. This laptop had some hardware error and when i’m in progress of upgrading to SP3, its suddenly crash and refuse to boot because some files are corrupted. Dang.
Portege R150 doesn’t have any internal CD/DVD. Regular external USB DVDÂ also refuse to work. So other method supported (and i would like to try) is installing (or repair) from network via PXE boot. There is many method to accomplished this, but this one is found work for me (mileage may vary though).
What you need:
- Another PC running Windows OS. I use Windows XP Pro SP3. And have network connection to broken laptops :). Via crossover cable or network switch.
- Source disk of Windows XP, i use Windows XP Pro bootstrapped with SP3 disk.
- Pxelinux from syslinux project. I’m use old 3.8.0 version. You only need
- BINL server, use win32 package format from here
- 7z file archiver. Download from here.
- network card driver from driverpacks.net
- many documentation to read and patience, i completed all this adventourous step almost in 2 days.. i’m old and slow though.. and
- ability to read and understand this poor documentation and language 🙂
Ok this is brief step by step. Read it until finish and startover.
I do not provide support, this is only quick and dirty documentation for myself. Read from diddy documentation, its really through and deep documentation regarding this issue.
- Windows XP SP2 (and maybe later) need special registry patch to enable RIS to work. Download reg file here. Rename as pxe.reg then execute.
- Create c:PXE and start from there.
- Unpack syslinux package to temporary location. You only need:
- pxelinux.0 from core and copy to C:PXEtftpboot
- memdisk to from memdis and copy to C:PXEtftpbootpxelinux.cfg
- menu.c32 from com32menu and copy to C:PXEtftpbootpxelinux.cfg
- chain.c32 to from com32modules and copy to C:PXEtftpbootpxelinux.cfg
- Copy your WinXP source disk and all sub folder to c:PXEtftpbootwinxp
- Adding Windows Preinstalled Environment to your tftpboot. You need:
- Copy SETUPLDR.EX_ from c:PXEtftpbootwinxpi386 to c:PXEtftpboot and extract with command (from command prompt) expand -r setupldr.ex_. Then rename the file as ntldr (no extention).
- Copy STARTROM.N1_ from c:PXEtftpbootwinxpi386 to c:PXEtftpboot and extract with command expand -r startrom.n1_
- Copy NTDETECT.COM from c:PXEtftpbootwinxpi386 to c:PXEtftpboot
- Make winnt.sif file in c:PXEtftpboot. Sample winnt.sif file downloaded here.
- To simplify, i have packed the files needed above on step 3 and 5, you can download it all here. Extract to c:PXEtftpboot. You need to configure pxelinux.cfgdefault and IP address in winnt.sif to suit your need. The existing configuration work as long as you keep the files in correct folder.
- Install TFTPD32. Put tftpd32.exe and tftpd32.ini at c:PXEtftpd32
- Share your c:PXEtftpboot on Windows file and printer sharing. So network user can see your files.
- Start and configured TFTPD32, so it start TFTP server and DHCP server.
What you really need is to checkmark “Option negotiation” and “pxelinux.0” as boot file on TFTPD32 DHCP server. Also stated “c:PXEtftpboot” as running directory. See screenshot. - For now shutdown TFTPD32.
- Now we turn to BINL server. For BINL server to work, you need a series of network card driver from driverpacks for your correct operating system. What you need is all of INF and SYS files inside ’em.
- Unfortunately driverpacks packs all of the file to individual folders, to extract INF and SYS file from driverpacks you’ll need 7z file archiver. Store your driverpacks file in c:PXEtools folder.
- Copy your 7z.exe to above same directory.
- Create c:PXEbinltemp, c:PXEbinlINF, and c:PXEbinlDRIVERS directory
- Start command prompt and enter c:PXEtools directory
- extract all of zip file in driverpack file (mine is DP_LAN_wnt5_x86-32_1002.7z) with command: 7z.exe e “DP_LAN_wnt5_x86-32_1002.7z” -o”c:PXEbinltemp” *.zip -r
- extract all of INF file from zip file above and put in INF directory: 7z.exe e “c:PXEbinltemp*.zip” -o”c:PXEbinlINF” *.inf -r
- extract all of INF files from driverpack file to INF directory: 7z.exe e “DP_LAN_wnt5_x86-32_1002.7z” -o”c:PXEbinlINF” *.inf -aour
- extract all of SYS files from driverpack file to DRIVERS directory: 7z.exe e “DP_LAN_wnt5_x86-32_1002.7z” -o”c:PXEbinlDRIVERS” *.sys -aour
- get your binl packages (from url stated on top of this article) and extract the content to c:PXEbinl folder.
- Inside you’ll find infparser.exe. Execute it to build driver database nics.txt and devlist.cache: infparser.exe INF
- Copy the contents of DRIVERS folder to your winxpi386 folder.
- To speed the process, here the complete files in step 11. This package include win32 binl server, infparser.exe and corresponding INF and SYS file in one package in their appropriate folders. You need to extract it’s content to c:PXEbinl and then copy the contents of DRIVERS folder to your Windows XP source folder (c:PXEtftpbootwinxpi386).
- Now it’s time to check your setup.
Start command prompt and execute binlsrv.exe. If everything all right you’ll see: - Start your TFTPD32. Watch the log.
- Start your broken laptops. Make sure your laptop BIOS is setup so it will use network boot. The laptop should query DHCP server, get some IP address then show you boot menu. Select “Install Win XP” and Windows XP installation should start.
Ok, thats it, sorry for any mistaken, i’ve not double check this guide step by step. Just improve yourself, read above documentation for complete help.
This PXE boot server also can serve as generic network boot if you use another bootdisk image. Just search and improve. Good luck.