7

I'm trying to set up automated installations of Windows Server 2008 x64.

I have it working using a DVD and autounattend.xml on a USB key, but now I want to make it work over PXE so I don't have to put the DVD in the drive on some overseas servers.

I'm trying this method Walkthrough: Deploy an Image by using PXE, which boots WinPE over PXE, except at the last stage I'm using pxeboot.com rather than wdsnbp.com because I don't have a Windows Deployment Server. That part is working fine.

The problem I'm having is trying to get WinPE to start an installation. Wpeinit Command-Line Options documentation says I can do wpeinit /unattend=\path\to\unattend.xml, but that fails without printing anything to the console, and there's no obvious error messages in the log file either.

  • unattend.xml lives on a network share.
  • I've tried both wpeinit -unattend:\\server\share\unattend.xml and net use u: \\server\share followed by wpeinit -unattend:u:\unattend.xml, but neither works, neither does copying it to a local drive (e.g. X:) and using that path instead.
  • WinPE-XML-Package and WinPE-HTA-Package were both added to the winpe.wim file that's being served over TFTP. I'm not sure if they are required, but one tutorial suggested adding them, so I did.
  • The wpeinit logs (below) mention it found HTA but not XML for some reason. Should I expect to see it too?
  • Networking is up, but I had to run wpeutil InitializeNetwork to make it work.
  • WinPE can see my C:\, which is a previous Server 2008 install.
  • I haven't customized winpeshl.ini or startnet.cmd.
  • My test system is a Dell Optiplex 755 with Intel Core2 Duo and an Intel 82566DM network card.
  • The difference between my working USB key autounattend.xml and my SMB unattend.xml is the added Windows-Setup|ImageInstall|OSImage|InstallFrom=\\server IP\share\install.wim, which I believe is needed if I want it to work without the Server 2008 DVD.
  • The SMB server is a Linux Samba that will allow anonymous access without a password. No credentials have been specified in unattend.xml.

Any ideas what I'm doing wrong?

Thanks

wpeinit.log after automatic wpeinit's first pass

Info      No unattend file was found; WPEINIT is using default settings to initialize WinPE
Info      Spent 6115ms initializing removable media before unattend search
Info      ==== Initializing Display Settings ====
Info      No display settings specified
Info      STATUS: SUCCESS (0x00000001)
Info      ==== Initializing Computer Name ====
Info      Generating a random computer name
Info      STATUS: SUCCESS (0x00000000)
Info      ==== Initializing Virtual Memory Paging File ====
Info      No WinPE page file setting specified
Info      STATUS: SUCCESS (0x00000001)
Info      ==== Initializing Optional Components ====
Info      WinPE optional component 'Microsoft-WinPE-HTA' is present
Info      STATUS: SUCCESS (0x00000000)
Info      ==== Initializing Network Access and Applying Configuration ====
Info      No EnableNetwork unattend setting was specified; the default action for this context is to enable networking support.
Info      Service dhcp stop: 0x00000000
Info      Service lmhosts stop: 0x00000000
Info      Service bfe stop: 0x00000000
Info      Service ikeext stop: 0x00000000
Info      Service mpssvc stop: 0x00000000
Info      Spent 125ms initializing security templates; status 0x00000000
Info      Install MS_MSCLIENT: 0x0004a020
Info      Install MS_NETBIOS: 0x0004a020
Info      Install MS_SMB: 0x0004a020
Info      Install MS_TCPIP6: 0x0004a020
Info      Install MS_TCPIP: 0x0004a020
Info      Spent 5288ms installing network components
Info      iSCSI: iBFT ACPI Table is not available on this system
Info      Installing device pci\ven_8086&dev_10bd X:\Windows\INF\nete1e3e.inf succeeded
Info      Spent 1295ms installing network drivers
Info      QueryAdapterStatus: no adapters operational.
Info      Spent 0ms confirming network initialization; status 0x003d0001
Info      STATUS: SUCCESS (0x003d0001)
Info      ==== Applying Firewall Settings ====
Info      STATUS: SUCCESS (0x00000001)
Info      ==== Executing Synchronous User-Provided Commands ====
Info      STATUS: SUCCESS (0x00000001)
Info      ==== Executing Asynchronous User-Provided Commands ====
Info      STATUS: SUCCESS (0x00000001)
Info      ==== Applying Shutdown Settings ====
Info      No shutdown setting was specified
Info      STATUS: SUCCESS (0x00000001)

lines added to wpeinit.log after running wpeinit /unattend=u:\unattend.xml

Info      WPEINIT is processing the unattend file [u:\unattend.xml]
Info      ==== Initializing Display Settings ====
Info      No display settings specified
Info      STATUS: SUCCESS (0x00000001)
Info      ==== Initializing Computer Name ====
Info      Generating a random computer name
Info      STATUS: SUCCESS (0x00000000)
Info      ==== Initializing Virtual Memory Paging File ====
Info      No WinPE page file setting specified
Info      STATUS: SUCCESS (0x00000001)
Info      ==== Initializing Optional Components ====
Info      WinPE optional component 'Microsoft-WinPE-HTA' is present
Info      STATUS: SUCCESS (0x00000000)
Info      ==== Initializing Network Access and Applying Configuration ====
Info      No EnableNetwork unattend setting was specified; the default action for this context is to enable networking support.
Info      Found an smb connection.
Info      Networking is currently in use and will not be restarted.
Info      QueryAdapterStatus: found operational adapter with DHCP address assigned.
Info      Spent 0ms confirming network initialization; status 0x00000000
Info      STATUS: SUCCESS (0x00000000)
Info      ==== Applying Firewall Settings ====
Info      STATUS: SUCCESS (0x00000001)
Info      ==== Executing Synchronous User-Provided Commands ====
Info      STATUS: SUCCESS (0x00000001)
Info      ==== Executing Asynchronous User-Provided Commands ====
Info      STATUS: SUCCESS (0x00000001)
Info      ==== Applying Shutdown Settings ====
Info      No shutdown setting was specified
Info      STATUS: SUCCESS (0x00000001)

Mikel
  • 3,727
  • 2
  • 19
  • 16

6 Answers6

4

Thanks for the suggestions, redblacktree, but the XML file was in fact well formed, and it was working fine off a USB key.

I found out I could use /unattend with setup.exe, so I copied the entire Windows install DVD to a file server, booted the same WinPE image via PXE, then ran:

net use w: \\server\share
w:
cd x64
setup.exe /unattend:w:\unattend.xml

And it worked fine!

The other gotcha is that I had to run

wpeutil InitializeNetwork

before I could see the network.

Mikel
  • 3,727
  • 2
  • 19
  • 16
0

The unattend.xml (or in some case autounattend.xml) files is looked up in several locations as per Methods for Running Windows Setup. This means you can generate boot images with the unattend.xml baked in and avoid having to use another mechanism to determine which answerfile to use - infact, the unattend.xml can now point straight to the install image on a distribution share.

<settings pass="windowsPE" ...
<component name="Microsoft-Windows-Setup ...
...
    <InstallFrom>
      <Path>\\path\to\install.wim</Path>
    </InstallFrom>
...
shalomb
  • 264
  • 2
  • 7
0

Double check your xml that you didn't miss a close tag or something. Opening it up in Internet Explorer should be enough to see this.

Can you get this working with a barebones unattend.xml? (ie. http://unattended-gui.svn.sourceforge.net/viewvc/unattended-gui/z/etc/unattend.xml.example)

0

I would just set up a MDT2010 share on my computer. It will generate all WinPE images, unattend.xml scripts and the lot for you on the fly. If you need, you can customize the scripts afterwards. In my experience it is by far the qucikest way to get a stable deployment solution for Windows up and running quickly and free.

Trondh
  • 4,191
  • 23
  • 27
0

I know this is an old question but i stumbled upon it while tackling a similiar problem and i wanted to throw in the possibility that the target plattform for the components needs to match your target (which you say is amd64), so tags need to have

< ... processorArchitecture="amd64">

for wpeinit to evaluate. That it is looking at your file is shown in your log via

Info WPEINIT is processing the unattend file [u:\unattend.xml]

BNT
  • 131
  • 6
0

I guess you have resolved by now.... but can be placed in the root of the PE ram drive (x:) without any addittional parameters.