Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I need to deploy ubuntu current release 12.4 through server 2008 R2's WDS.

I am following the guide available at: http://thommck.wordpress.com/2011/06/16/installing-linux-via-pxe-using-windows-deployment-services-wds/

Step One – Install WDS

This should be obvious and if you are reading this I imagine you’ve done it already. Ours is running on a Windows Server 2003 box but it should work fine with the latest, more secure, stuff.

We will be adding bits to the folders within the \\WDS\REMINST share

Step Two – Install PXELinux

PXELinux is part of the SysLinux package

Download SysLinux from here
There’s quite a bit in SysLinux but you only need to extract the following files
    ZIP\core\pxelinux.0
    ZIP\com32\menu\vesamenu.c32
    ZIP\com32\modules\chain.c32
Copy the files into \\WDS\REMINST\Boot\x86
Rename pxelinux.0 to pxelinux.com
You also need to make copies of two original WDS files in this folder
    Copy pxeboot.n12 and rename it to pxeboot.0
    Copy abortpxe.com and rename it to abortpxe.0
Create to new subfolders
    \\WDS\REMINST\Boot\x86\Linux
    \\WDS\REMINST\Boot\x86\pxelinux.cfg
The pxelinux.cfgfolder is where you store the files that make up the PXE boot (F12) menu.
    All the files we will put in there are text files, even though they don’t use a .txt extension
First create a new text file called default.  This is the first menu that loads.
Paste the following text into it
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22

DEFAULT      vesamenu.c32
PROMPT       0

MENU TITLE PXE Boot Menu (x86)
MENU INCLUDE pxelinux.cfg/graphics.conf
MENU AUTOBOOT Starting Local System in 8 seconds

# Option 1 - Exit PXE Linux & boot normally
LABEL bootlocal
      menu label ^Boot Normally
      menu default
      localboot 0
      timeout 80
      TOTALTIMEOUT 9000
# Option 2 - Run WDS
LABEL wds
     MENU LABEL ^Windows Deployment Services
     KERNEL pxeboot.0
# Option 3 - Exit PXE Linux
LABEL Abort
    MENU LABEL E^xit
    KERNEL abortpxe.0
Now create a text file called graphics.conf
    This file controls how the menu is displayed. It’s very versatile so have a play around until it looks as basic or as flashy as you like
Paste the following text into it
01
02
03
04
05
06
07
08
09
10
11

MENU MARGIN 10
MENU ROWS 16
MENU TABMSGROW 21
MENU TIMEOUTROW 26
MENU COLOR BORDER 30;44     #00000000 #00000000 none
MENU COLOR SCROLLBAR 30;44      #00000000 #00000000 none
MENU COLOR TITLE 0      #00269B #00000000 none
MENU COLOR SEL   30;47      #40000000 #20ffffff
MENU BACKGROUND background.jpg
NOESCAPE 0
ALLOWOPTIONS 0
If you want to use a custom background, place it in the \\WDS\REMINST\Boot\x86folder.
    The image should be a 640×480 jpeg file.
    Make sure it has the same name as specified in the MENU BACKGROUND line in graphics.conf
Now we need to change the default boot program in WDS
    Open the Windows Deployment Services Console
    Right Click on your Server and select Properties
    From the Boot tab change the default boot program for x86 architecture to \Boot\x86\pxelinux.com
    In Server 2008 R2 you have to use the wdsutil  command line to set the the default boot program with these commands

1 2

wdsutil /set-server /bootprogram:boot\x86\pxelinux.com /architecture:x86 wdsutil /set-server /N12bootprogram:boot\x86\pxelinux.com /architecture:x86

Step Three – Test it out

Before you go any further, do a test PXE boot to check everything is OK.

I use a Hyper-V VM to make this testing process quicker. Just make sure it’s set to boot to a legacy network adapter in the settings

wds-pxe-menu

If it doesn’t load make sure you have the following files and folders in the right place within the \WDS\REMINST share

\Boot\x86\pxelinux.com
\Boot\x86\vesamenu.c32
\Boot\x86\chain.c32
\Boot\x86\pxeboot.0
\Boot\x86\abortpxe.0
\Boot\x86\background.jpg
\Boot\x86\Linux\
\Boot\x86\pxelinux.cfg\
\Boot\x86\pxelinux.cfg\default

\Boot\x86\pxelinux.cfg\graphics.conf

I am done uptil here, I tested and got the Ubuntu Menu option during PXE boot. But I am fully lost how the installation will be kick off? Is it only limited to CD install, or I can deploy the custom image as well.

In both cases I need assistance how to do this.

I aobtained the NetBoot Files for the ubuntu 32bit edition, got the initrd.gz and linux files.

In the Default file under the RemoteInstall folder (x86 and x64), I have the correct entry as: append priority=low vga=normal initrd=/Linux/Ubuntu/initrd.gz

........................................................ When I PXE boot it, it displays the menu, how to host the Operating System so PXE request can be facilitated.

share|improve this question

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.