• Export to OpenOffice
  • Export to PDF

Install Windows over PXE

Updated: 2016-09-24 | 12:28 EDT

In this tutorial I will demonstrate how to install Windows 7/8/10 over the PXE Server I built here. For the Linux portion of this tutorial I used a Raspberry Pi running the latest version of Raspbian.

Prerequisites

  • PXE Server
  • Samba/CIFS File Server
  • A working Windows 7/8/10 operating system
  • Use the latest WADK. In my tests it is backwards compatible with WIndows 7, 8 , and 10.
  • Windows installation media for the version you are installing

Windows Preinstallation Environment

Assuming you have the prerequisites above, I will start this tutorial with building the Windows Preinstallation Enironment(WinPE) boot image

Open the Deployment and Imaging Tools Environment

Clicking Start, and type deployment. Right-click Deployment and Imaging Tools Environment and select run as administrator.

Then Create a working copy of the WinPE files based on the architecture you need:

32-bit

C:\ > copype x86 C:\WinPE_x86

64-bit

C:\ > copype amd64 C:\WinPE_amd64

Make a bootable iso

C:\ > MakeWinPEMedia /ISO C:\WinPE_amd64 C:\WinPE_amd64\WinPE_amd64.iso

PXE Server Configuration

Now that we have our Windows PE RAM disk, we just need to copy it to our PXE Server and add it to our configuration. Add something similar to the following to the /tftpboot/pxelinux.cfg/default file. See my PXE Server tutorial for more information

$ sudo nano /tftpboot/pxelinux.cfg/default
    LABEL Windows PE
    MENU LABEL Windows PE
    KERNEL memdisk
    INITRD distros/windows/winpe_amd64.iso
    APPEND iso raw

Now is a good time to test our Windows PE RAM disk. Boot to your PXE Server and select your newly added WinPE entry(Depending on your connection speed it can take a couple minutes for the WinPE iso to boot). Once booted you should see something like this:

Samba Server Configuration

The final step before installing Windows over PXE is to serve up the Windows installation files via Samba/CIFS file share. If you need more information on how to setup a Samba server see my Network File Server tutorial. First I will make a directory to mount my Windows installation media.

$ sudo mkdir /mnt/cdrom

Then I will mount the installation media. I am using iso files. If you have an installation DVD rather than iso you will just need to know the mount point for the next step.

$ sudo mount -o loop WindowsInstallationMedia.iso /mnt/cdrom

Now we will copy the installation files to a permanent directory on our Samba server

$ sudo cp -R /mnt/cdrom/* /tftpboot/distros/windows/win7

Last but not least, edit the /etc/samba/smb.conf file. Here is what I have added:

$ sudo nano /etc/samba/smb.conf
   [win7]
   path = /tftpboot/distros/windows/win7
   comment = Windows 7 Installation DVD
   valid users = "username" (User must have a samba password "smbpasswd -a 'Username'")
   writeable = no
   browseable = yes
   read only = yes

Restart the samba service

$ sudo service smbd restart

With the Samba share up and running its time to mount it from PXE booted WinPE iso.

After navigating to Z:\ and executing setup.exe, continue with the Windows installation as normal.

Comment below if you have any questions

  • Export to OpenOffice
  • Export to PDF
  • Show pagesource