Windows Deployment Services
Windows Deployment Services allows you to install Windows on a computer over a network, without the use of a CD or DVD. It uses the network book feature of an Ethernet card to find an installation server with necessary images.
Contents |
Note
These instructions were written for an installation under Windows Server 2003. The procedure is similar under Windows Server 2008 and 2008 R2, but WDS is now a server role.
I will be updating this page at some point to reflect the differences introduced in Server 2008.
Installing WDS
Note: Windows Deployment Services became available (under that name) with Windows Server 2003 SP2. Previous versions of it were called Remote Installation Services (RIS).
You will need the Windows Server CD/DVD (or the I386/amd64 folder).
- Add/Remove Programs
- Add/Remove Windows Components
- Check Windows Deployment Services
- Next, Finish, etc.
- Restart the server when prompted
WDS is now installed.
DHCP Server Configuration
For clients to see the WDS server, you must specify an option in your network's DHCP server. If you use Windows Server's built-in DHCP server, you are given the option of automatically configuring it.
Personally, I use DD-WRT and its DNSMasq server for DHCP. I added the following line to Additional DNSMasq Options under the Services tab.
dhcp-boot=PXEClient,,10.0.0.101
Configuration steps for other DHCP servers will be different, but you basically need to find an option to set an IP address for a PXE client. The Windows Deployment Services console provides an option to automatically configure a Microsoft DHCP server.
In my experience, the PXE boot screen did not show the IP address of the actual WDS server so I mistakenly thought that there was an issue with the DHCP server.
Configuration
- Administrative Tools
- Windows Deployment Services
- Right click server name, Configure Server
- Follow through wizard
- I used the default
C:\RemoteInstalllocation - I selected the Respond to all (known and unknown) client computers option
- This option can be changed later if necessary
- I used the default
- When the wizard is done, it prompts you to add images
Optional Steps
Automatic Domain Joining
By default (in Windows Server 2008 R2, possibly others), all computers will be joined to the AD domain automatically after being installed. This can be disabled by performing the following steps:
- In the WDS console, right click the server's name and select Properties
- Go to the Client tab
- Select the "Do not join the client to a domain after an installation" option
Adding Images
WDS uses .wim files for its native image format.
Windows Vista and Windows 7 boot and installation .wim files are provided on their installation DVDs.
The relevant files are located at X:\sources\boot.wim and X:\sources\install.wim.
Important: Do not attempt to install Windows 7 with Vista's boot image!
I have not tried installing Vista with Windows 7's boot image, but I would suggest adding the boot.wim file from the Windows 7 DVD as a separate boot image.
This image will be selectable by remote clients upon connecting to the server.
install.wim is the same file the Vista installer uses during installation from the DVD. It contains all editions of Vista.
Note that this file is very large, >3GB.
- For the source path I selected the folder on the DVD called
D:\sources - When asked to create a new image group, I created one called Windows Vista SP1 x64 to represent the images I was adding.
- At this point, the Add Image Wizard found one boot image and four installation images. It then copied these to the local image folder.
Important: The boot.wim file from the Vista x64 DVD has only the 64-bit boot image.
Non-64-bit clients (and, it seems, even clients that support 64-bit) will not be able to boot over the network until you add the 32-bit boot.wim file.
Remote Installation Procedure
You are first asked for domain account credentials.
The user name must be supplied in the format Domain\User.
Note: The following steps are for a non-customized image as found on the Windows Vista DVD.
At this point, you must select the desired operating system from the list of available images. After a selection is made, Windows installation proceeds as it would if you were installing from the DVD.
Gallery
Remote Image Capture
Creating the Boot Image
- Open the Windows Deployment Services management console.
- Navigate to the Boot Images folder.
- Right click the boot image you normally use.
- Select Create Capture Boot Image.
- Enter a name and description for the new image. I used Microsoft Windows Capture (x86).
- Select a destination filename. I used boot-capture.wim.
- Click Next. The capture image will be created.
After the image has been created, restart the WDS server to activate it.
- Right click the server name
- Select All Tasks → Restart.
The new image will not show up in the Boot Images window immediately. Right click the server name and select Refresh to see it.
Source: [1]
Capturing the Image
Before capturing the image, you must run Sysprep on the volume you wish to capture.[1]
Gallery
Troubleshooting
General
- Make sure the client has at least 512MB of RAM. (This can be a problem with virtual machines.) [2]
- Shift-F10 will bring up a Command Prompt window.
- Holding down the left Ctrl key during WinPE boot will prevent
setup.exefrom running automatically. A Command Prompt window will appear instead.
Installation Issues
When attempting to install Windows 7 via WDS, I was having a trouble where after a certain point in setup, I would receive a stop error and the machine would reboot.
Ultimately, I found that the problem was related to the boot image.
I had been using the boot.wim file from the Windows Vista DVD (as that was already installed on my WDS server).
Adding a new boot image with the boot.wim file from the Windows 7 DVD allowed me to complete setup without trouble.
Drivers
You may find that the boot image doesn't have the required network drivers for your system.
You can confirm this by opening a Command Prompt window (see above) and typing ipconfig.
If no network cards are listed (or if the correct network card is not listed) you probably need to load additional drivers.
In this case, you must load the drivers manually or add them to the boot image.
Loading Drivers Manually
This method does not involve modifying boot images. It's a good option if you want to test functionality of a driver set before you modify the boot image, or if you know you'll only need to use that driver once.
If you are loading the drivers from a USB drive, plug it in before continuing.
Note: bewlow I reference loading VMware network drivers, but in recent tests I didn't have to do that. I'm not really sure what changed but I'll update this page when I figure it out.
- During WinPE boot, hold down the left Ctrl key to prevent Setup from running. A Command Prompt window will appear.
- If you are loading drivers from a CD/DVD, insert it.
Note: Under VMware, select the menu option VM → Install VMware Tools... or mount thewindows.isofile from the VMware program directory. - Type the following commands:
drvload d:\full\path\to\driver.inf- NOTE: It is important to use the full path to the
.inffile here. - If using VMware, the driver will be located at
d:\program files\VMware\VMware Tools\drivers\vmxnet\win2k\vmware-nic.inf.
- NOTE: It is important to use the full path to the
wpeutil InitializeNetworkipconfig- Verify that the network card is listed and has a valid IP address. Use
ipconfig/renewif necessary.
- Verify that the network card is listed and has a valid IP address. Use
x:\setup.exe /wds /wdsdiscover /wdsserver:<servername>- At this point, the Command Prompt window will disappear and setup should begin.
Adding Drivers to a Boot Image
First, make sure the AIK is installed on your computer.
Note: This should be done from a computer running Vista or Server 2008. It seems the driver injection will fail if you attempt to do it from XP or Server 2003. [1]
- Take the boot image offline through the Windows Deployment Services management interface.
- Open a Command Prompt window. Start → Run →
cmd→ OK. - Type the following commands:
"C:\Program Files\Windows AIK\Tools\PEtools\copype.cmd" x86 c:\windowspe-x86Imagex /info x:\RemoteInstall\Boot\x86\Images\boot.wim- Where x: is the drive with the image file and boot.wim is the file you are modifying.
- Note the Boot Index number in the WIM Information section. (For me this number was 2.)
- Type the following commands in the Command Prompt window:
Imagex /mountrw x:\RemoteInstall\Boot\x86\Images\boot.wim 2 mount- Where x: is the drive with the image file, boot.wim is the file you are modifying, and 2 is the Boot Index number.
peimg /inf="C:\ga-network\lan_realtek_vista\WINVISTA\32\netrtx32.INF" mount\Windows- Replace the path in quotes with the path to the
.inffile you are adding.
- Replace the path in quotes with the path to the
imagex /unmount /commit mount
- Re-enable the boot image.
That should do it. Source: [3]
More Information
- Automated Installation Kit (AIK) for Windows Vista SP1 and Windows Server 2008
- Multicast under Windows Server 2008
References
- ↑ 1.0 1.1 Capturing an Image with WDS - Forum post with screenshots
- ↑ Forum post about WdsClient Error 0x45A
- ↑ Adding network drivers