PXE booting to BARTPE

From SME Server
Jump to navigation Jump to search


PXE booting to ISO

Goal

We want to boot ISO images via PXE (rather than through CD). This means that, as long as we have enough RAM in the local pc's, we can boot BARTPE, WINPE and any LIVE CD (such as KNOPPIX, PCLINUXOS, UBCD, etc).

Assumptions

You are a network/server administrator and know what TFTP, BARTPE and PXE, a network boot, means. Your SME SERVER is your DHCP server.


Install TFTP package on your SME SERVER

-install SMESERVER-TFTP-SERVER on your SME SERVER: http://wiki.contribs.org/Tftp_server


Create a BARTPE.ISO on your local pc

-download BARTPE on your local pc: http://www.nu2.nu/pebuilder/

-create a BARTPE disk using WINDOWS SERVER 2003 source (i386 directory)

-you now have a BARTPE.ISO (on your local pc)


Obtain WINDOWS SERVER 2003 SP1 files needed

-download the WINDOW 2003 SERVER SP1: http://www.microsoft.com/downloads/details.aspx?FamilyId=22CFC239-337C-4D81-8354-72593B1C1F43&displaylang=en

(You now have a file called: WindowsServer2003-KB889101-SP1-x86-ENU.exe)

-open WINRAR to open the WindowsServer2003-KB889101-SP1-x86-ENU.exe file

-extract the following files from the W2K3SP1: ntdetect.com ramdisk.sy_ setupldr.ex_ startrom.n1_

-The underscore files are compressed. We need to decompress/expand them: expand ramdisk.sy_ expand setupldr.ex_ expand startrom.n1_

TRANSFER FILES TO SME SERVER

-copy the following files to the SME SERVER in the "/tftpdboot" directory: ntdetect.com setupldr.exe startrom.n12 bartpe.iso


WORK WITH FILES IN THE TFTPDBOOT DIR

-the files are case-sensitive and need to be named exactly as follows: ntdetect.com (lower-case) NTLDR (rename the setupldr.exe to NTLDR, all caps) startrom.0 (rename the startrom.n12 to startrom.0) (This is a ZERO) BARTPE.ISO (all caps)

-create a winnt.sif: vi winnt.sif

-the contents of the winnt.sif file: [SetupData] BootDevice = "ramdisk(0)" BootPath = "\i386\System32\"

OsLoadOptions = "/noguiboot /fastdetect /minint /rdexportascd /rdpath=bartpe.iso"

-create a pxelinux.cfg directory: mkdir pxelinux.cfg

-change to pxelinux.cfg dir and create a default file: cd pxelinux.cfg vi default

-the contents of the default file: prompt 1 implicit 0 timeout 600 default foo

LABEL foo

   kernel startrom.0

SUMMARY OF CONTENTS OF TFTPBOOT DIR [root@server tftpboot]# ls -la total 941492 drwxr-xr-x 3 root root 4096 Dec 3 15:43 . drwxr-xr-x 27 root root 4096 Nov 30 13:31 .. -rw-r--r-- 1 root root 159930368 Dec 3 14:18 BARTPE.ISO -rw-r--r-- 1 root root 47772 Mar 24 2005 ntdetect.com -rw-r--r-- 1 root root 278016 Mar 24 2005 NTLDR -rw-r--r-- 1 root root 13204 Sep 4 2006 pxelinux.0 drwxr-xr-x 2 root root 4096 Apr 18 2007 pxelinux.cfg -rw-r--r-- 1 root root 24466 Mar 24 2005 startrom.0 -rw-r--r-- 1 root root 1473787 Apr 5 2006 vmlinuz -rw-r--r-- 1 root root 169 Dec 3 15:44 winnt.sif

-that should do it! Start your client PC -if you don't have a WINDOWS SERVER 2003 source, then use a WINDOWS XP SP2 source