Booting ESX VMware Guest Machines from the Network

KB ID 0000310 

Problem

I do a lot of deployment testing for things like WDS, Ghost and SCCM. Now my test bed is entirely virtual, so any new technology testing, or proof of concept work is a lot easier.

Anything that involves PXE booting the VM’s is not turned on by default though.

Solution

1. Either from the VM itself, or from its entry in your VI client “Edit the VM’s Settings”.

2. Options tab > Boot Options > Tick “The next time the virtual machine boots, force entry into the BIOS setup screen”.

3. Reboot the VM, and the BIOS will open, use the arrow/cursor keys go go across to the boot menu, then down to the network card. (Note your network card may be an Intel E1000).

4. Press the + “Plus Symbol” on the keyboard to move the network card to the top of the list > Press F10 to Exit > Select “Yes” to save the changes.

5. Now when the VM boots simply press F12 when prompted and the guest VM will attempt to boot from the network.

Note: If you having trouble booting to WindowsPE with VMXnet3 network cards see here.

 

Related Articles, References, Credits, or External Links

NA

Windows Deployment Services and Symantec Ghost

KB ID 0000108

Problem

There’s very little about this that seems to be stored in one place out there on the Internet, Why would you want to use Ghost and WDS together anyway? Well once upon a time we used the PXE element is RIS, (WDS’s Predecessor) to use the Symantec GhostCast server. So yes I understand why people raise an eyebrow because you can achieve all your imaging needs with WDS alone. however people have invested heavily in Ghost over the years and rely on ghost images – also if you are using ghost to back up machines, then you may want to image them WITHOUT sysprep-ing then first (Which WDS does not seem to want to let you do.)

Doing this in a virtual environment tends to be fraught with problems, with both with Microsoft and

VMware, I’ve had trouble testing this. But when using real machines it works fine – remember any drivers you need must be Windows Vista ones. And Windows PE wont run in a Guest VM in VMware ESX, unless you set the client type to Vista (Even if it is another OS).

Pre Requisites

1. The Server needs an installed and working DHCP Scope, WDS adds a PXE option to it.

2. You need a reference PC set up.

3. You need to download the WAIK (Windows Automated Installation Kit).

Solution

Phase 1: Install WDS

1. To start with, you need to add WDS as a Windows component, Start > Run > appwiz.cpl {enter}.

2. Scroll down to Windows Deployment Services and tick the box > Next. Note: This in an R2 SP2 Version of Windows Server 2003, if you cannot see WDS then install SP2.

3. WDS is added (The server may ask for the install CD).

4. Click Finish.

5. Click “Yes” to Reboot.

6. Start > Administrative Tools > Windows Deployment Services.

7. Expand Servers.

8. Select your server > Actions > Configure Server.

9. Next.

10. Provide a path to the location you want to store your images in.

11. If the location is on the system drive you may see this warning > Click Yes.

12. Tick Both > Next.

13. Bottom Option > DONT tick the box > Finish.

14. WDS Copies over some files and configures itself.

15. Untick the box, we are going to do this manually and just add what we want. > Finish.

Phase 2: Install Symantec Ghost

1. Run the setup.exe > Install.

2. Next.

3. Tick “I Accept..” > Next.

4. Tick “I have read….” > Next.

5. Enter a User and Organisation > Next.

6. Select Install Location > Next.

7. Next.

8. Install.

9. Coffee Time………..

10. Next.

11. Next

12. Finish

Phase 3: Install WAIK and create the Boot Image

Note: This is using the Windows Vista WAIK – If you are using the Windows 7 Version CLICK HERE

1. Download and install the WAIK.

2. Click Start > Microsoft Windows AIK > Windows PE Tool Command Prompt.

3. Execute the following command,

.copype.cmd x86 c:winpe_x86 {enter}

4. Execute the following command,

.imagex /mountrw c:winpe_x86winpe.wim 1 c:winpe_x86mount {enter}

5. Execute the following two commands,

.copy “C:Program FilesSymantecGhostGhost32.exe” c:winpe_x86mountwindows {enter}

copy “C:Program FilesSymantecGhostGhost32.exe” c:winpe_x86mountwindowssystem32 {enter}

Note: At this point you may want to copy and Network Card or Mass Storage Drivers to the Windows PE

Image as well (Remember they are vista drivers NOT DOS.NDIS Drivers).

copy “[NIC driver location]” c:winpe_x86mountwindows {enter}

copy “[Mass Storage Driver Location]” c:winpe_x86mountwindows {enter}

6. Click Start > Run > notepad {enter} File > Open > Navigate to c:winpe_x86mountwindowssystem32startnet.cmd (Note: change files of type to “all files” or you wont see it).

7. Add ghost32.exe (as shown) then save the file and exit.

8. Switch back to the Windows PE Tools Command Prompt, Execute the following command,

peimg /prep c:winpe_x86mountwindows {enter}

9. Type “Yes” {enter}.

10. When done it should say “PEIMG completed the operation successfully.”

11.Execute the following command,

.imagex /unmount c:winpe_x86mount /commit {enter}

12. Execute the following command,

copy c:winpe_x86winpe.wim c:winpe_x86ISOsourcesboot.wim {enter}

13. Type “Yes” to overwrite > When finished it should say 1 file copied.

Note: The image you need to give to WDS is called boot.wim, and you can find it here

C:winpe_x86ISOsources, You may wish to Copy it to your WDS Server to the directory you specified when setting up WDS (to hold Images).

Also: You can create a bootable CD iso from the .wim image using the following command,

oscdimg -n -bc:winpe_x86etfsboot.com c:winpe_x86ISO c:winpe_x86winpe_x86.iso

Phase 4: Add your new boot image to WDS

1. Start > Administrative Tools > Windows Deployment Services. > Expand Windows Deployment Services > Servers > Your Server > Right Click Boot Images > Select “Add Boot Image”.

2. Browse to the Boot.wim file you created above.

3. Give the image a sensible name and description > Next.

4. Next

5. The image will be coped into WDS.

6. When done you should see it on the right.

Phase 5: Set GhostCast Server to Accept an Image

1. Start > All Programs >Symantec Ghost > Ghostcast Server.

2. Give it a Session Name > Select Create Image (Assuming you have a reference machine ready to image TO the server) > Click Browse to Find a location that has enough space to hold the image file. > Note you will need to create the filename.gho to continue. > Click “Accept Clients”.

Phase 6: PXE Boot your client to the network, and image it

1. Remember to boot from the network the client must have a PXE capable network card and it must be set in the BIOS to be higher in the Boot order that the system drive, most machines now give you a key to press on boot, to boot from the network (Usually F12).

2. Cast you mind back to phase 3 step 7, those are the commands getting executed, winpeinit is the plug and play loader for windows PE.

Note: If you are using VMware and you have not set “Vista” as the machine type it may hang here and never launch ghost.

3. Like an old friend, Ghost appears > OK.

4. GhostCast > Unicast.

5. Give it the session name you set up in phase 5, > Either let ghost find the ghost cast server or enter its IP address. > OK > Select the Disk you wish to Image > OK > When asked about compression Select High > Click OK > Imaging will start.

Note: Make sure it displays a valid IP address at the bottom or it will fail, (If it says 127.0.0.1 then you need to add the drivers for his machine to the image).

Adding drivers to a WIM image.

6. Back at the GhostCast Server > You will see the session imaging across.

Note: To Deploy an Image TO the client, the operation is the same exept in the ghostcast server tick “Restore Image” and point it to the image-name.gho file to deploy, and on the client select “Multicast” when PXE Booted.

Related Articles, References, Credits, or External Links

NA

WDS (Server 2003) Deploying Windows XP

For WDS on 2008 with Windows 7 Click Here

KB ID 0000107

Problem

This is aimed at people who want to capture a pre built machine and roll that image out to many PC’s. The client machine can either be vista or XP, at the time of writing most corporate’s are still using XP so I’ll use XP for this example.

The whole procedure was done on the workbench in Virtual Server, which is how I recommend you try doing this before trying it live. I wrote this because I struggled to find a good walk through on the internet, that was shorter than a squillion pages, I’d rather spend two weeks working out how to do it myself rather than RTFM, so I’ll save you good folks the trouble.

Here’s a two page Aide Memoir to print off

To do the whole thing you need to do three things, 1) Set up and configure WDS. 2) Image a reference PC and 3) Deploy that image to other PC’s.

Pre Requisites

1. The Server needs an installed and working DHCP Scope, WDS adds a PXE option to it.

2. You need a reference PC set up and “Sysprepped” with enough room on its drive to store the image.

3. You need the install DVD for either Windows Vista or Server 2008.

Note If you still want to use Ghost with WDS CLICK HERE

Solution

Phase 1 Setup up And Configure WDS

1. To start with, you need to add in WDS as a Windows component, Start > Run > appwiz.cpl {enter}

2. Scroll down to Windows Deployment Services. and tick the box > Next.

Note: This in an R2 SP2 Version od Windows Server 2003, if you cannot see WDS then install RIS and install WDS from the WAIK available to download from Microsoft.

3. WDS is added (The server may ask for the install CD)

4. Click Finish

5. Click Yes to Reboot.

6. Start > Administrative Tools > Windows Deployment Services.

7. Expand Servers.

8. Select your server > Actions > Configure Server.

9. Next.

10. Provide a path to the location you want to store your images in.

11. If the location is on the system drive you will see this warning > Click Yes.

12. Tick Both > Next.

13. Bottom Option > DONT tick the box > Finish.

14. WDS Copies over some files and configures itself.

15. Untick the box, we are going to do this manually and just add what we want. > Finish.

16. Right Click Boot Images > Add Boot Image.

17. Browse your Vista/2008 DVD to the sources directory and we are looking for “boot.wim” > Next.

18. Now change the name to something sensible like “Install an Image” > Next.

19. Next.

20. The Image is installed.

21. Finish.

22. Select the image you have just installed > right click it > Select “Create Capture Boot Image. “

23. Call it something sensible like “Capture an Image” > choose a location to save it (you need to save it with a .wim extension) > I call it capture.wim so I know what it is > Next.

24. The Image is created.

25. Finish.

26. Now we need to create a group to put out machine images in > Right click Install Images > Add Image Group.

27. Give it a name > OK.

28. Make sure it’s there.

29. Now we need to add the “Capture Image” we created in step 23 > Right click Boot Images > Add Boot Image.

30. Point it to the capture.wim file you created earlier.

31. Make sure its “Capture an Image” > Next.

32. Next.

33. The image will be imported.

34. Finish.

35. If you’ve done everything correctly you should see two entries under Install Images called “Capture an Image” and “Install an Image” When you see the boot menu later you will see why I named them this way.

Phase 2 Capture the Image from a Reference PC

36. Once you have build the reference PC, configured all the applications and settings, and ran sysprep. Boot it from the network (note you may need to alter the BIOS boot order to do this). Though most machines have a key sequence to press (F12 usually) to do a network boot (Note: in virtual server DEL enters the BIOS).

37. Now you can see why we named the images accordingly > Select Capture an image > Enter.

38. The files are loaded into memory.

39. Next.

40. Select the volume to image (if there’s nothing there then you either did not sysprep properly of the PE environment you are in has no drivers for the volume you want to image – Press shift and F10 if you can change to the C: drive then the drivers are there and sysprep is the problem. Give the image a name and description. > Next.

41. Enter a location on the PC to store the image > Put in the IP address or name of the WDS server > Connect.

42. Give it a username and password in the DOMIANusername format > OK.

43. Select the image group you created in step 27 > Finish.

44. First the image is copied locally.

45. Then its uploaded to the WDS Server.

46. When it hits 100% the button changes to Close > Click it > the Reference PC will reboot.

47. Back a the WDS Server right click Client Images > Select “Add Install Image”.

48. Navigate to the image that’s just been uploaded, it will be in the folder you set up in step 10 in a sub folder with the same name as your image group (if you can’t find it remember there’s still a copy on the Reference PC) > Next.

49. Next.

50. Next.

51. Finish.

52. There’s your image ready to go.

Phase 3 Image the Target PC’s

53. As above boot your target PC from the Network.

54. This time select “Install and Image” > Enter.

55. The files are loaded into memory.

56. It looks very Vista-ish but trust me it will install XP > Select the correct locale > Next.

57. Enter a username and password using the DOMAINusername format > OK.

58. Select the image you created earlier. > Next.

59. Select the drive to install in on > Next.

60. The image will install.

61. As soon as its finished it will reboot.

62. Depending on how you sysprepped XP you will either see this……………

63 ……….. or this. Job done.

Related Articles, References, Credits, or External Links

NA

VMware ESX – WDS Fails “The network location cannot be reached”

KB ID 0000308 

Problem

Whilst trying to contact a WDS server from an ESX client machine (though this can happen on a physical machine also). You see the following error,

The network location cannot be reached, For information about network troubleshooting, se Windows Help.

 

Solution

This is because the WindowsPE image you are using to Capture/Deploy does not have the network drivers for the NIC in the machine you are imaging (At time of writing the VMXnet3 driver is NOT in the standard WindowsPE 3.0 image).

1. Get the drivers for the NIC, if they are the VMware VMXnet 3 drivers, you can find them on any guest machine running the VMware tools, (look in Program filesVMwareVMware ToolsDrivers), copy both the folders as indicated below.

2. If you ARE using WDS you will need to right click your boot images and export them.

3. Once you have the drivers and the images – use THIS PROCESS to inject the drivers into the image.

4. Finally in the WDS Administrative console, delete the boot Images and “Re-import” the ones you have just updated with the new drivers.

 

Related Articles, References, Credits, or External Links

NA

Adding / Injecting Drivers into WindowsPE

KB ID 0000218

Problem

A while ago I wrote an article about adding drivers to a WindowsPE Image, this was part of an installing Symantec Ghost with WDS procedure. Recently one of my colleagues was using my instructions, and despite his best efforts could not get the procedure to work with a new PC (Intel NIC).

So he decided to give it a go with the new version of the WAIK he was successfull, but the procedure is slightly different. This prompted re-write number 1, Then I started messing around with Windows PE on USB, and found out a bit more, so here we are with re-write 3

Solution

The following procedure assumes the following,

Folder Locations :- c:TEMP_IMG is where the boot image will be mounted. c:drivers is where your additional network drivers will be stored. c:ghost is where you have saved a copy of GHOST32.exe (Note: Only if using Ghost).

1. Download an Install the WAIK.

2. Startup the Deployment Tools Command Prompt (under Microsoft Windows AIK folder).

3. I’m assuming you allready have a Windows PE Image, If not go here first.

4. Click Start > In the “search programs and files” box type notepad {enter}

5. Mount your image (NB the path to the image to suit your own requirrement. in the example below its G:sourcesboot.wim yours will be different).

[box]

mkdir c:TEMP_IMG

mkdir
c:drivers

imagex /mountrw G:sourcesboot.wim 1 c:TEMP_IMG

[/box]

6. Now Get your drivers, a good place to get multiple driver packages is here.

7. Once you have your drivers downloaded extract then to your c:drivers directory.

8. Now I’m going to add/inject all the drivers from multiple folders to the Windows PE image, execute the following command.

[box] DISM.exe /image:c:TEMP_IMG /Add-Driver /driver:c:drivers /recurse /FORCEUNSIGNED [/box]

9. All being well when completes, it will say “The operation completed successfully”.

10. If you are using Ghost, open notepad > File > Open > Change file type to “All Files” > Navigate to c:TEMP_IMGwindowssystem32startnet.cmd > Add in the line GHOST32.EXE after the initial statement. (and copy ghost32.exe to the c:TEMP_IMGwindowssystem32 directory.

11. Now unmount the image and commit the changes with the following command at the Deployment Tools Command Prompt.

[box] imagex /unmount /commit c:TEMP_IMG [/box]

12. If you are using WDS you can now import the image.

Related Articles, References, Credits, or External Links

NA