Difference between revisions of "PXE booting to BARTPE"

From SME Server
Jump to navigationJump to search
 
(25 intermediate revisions by 2 users not shown)
Line 4: Line 4:
 
===Goal===
 
===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).
 
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===
 
===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.
+
You are a network/server administrator and know what TFTP, BARTPE and PXE -a network boot- means. Your SME SERVER is your DHCP server.
 +
 
 +
 
  
 +
=== DHCP Configuration for PXE booting ===
 +
Easiest way is to install the [[Pxe|smeserver-pxe]] contrib
  
 
===Install TFTP package on your SME SERVER===
 
===Install TFTP package on your SME SERVER===
 
-install SMESERVER-TFTP-SERVER on your SME SERVER: http://wiki.contribs.org/Tftp_server
 
-install SMESERVER-TFTP-SERVER on your SME SERVER: http://wiki.contribs.org/Tftp_server
 
  
 
===Create a BARTPE.ISO on your local pc===
 
===Create a BARTPE.ISO on your local pc===
Line 17: Line 21:
  
 
-create a BARTPE disk using WINDOWS SERVER 2003 source (i386 directory)
 
-create a BARTPE disk using WINDOWS SERVER 2003 source (i386 directory)
 +
 +
-or if you don't have a WINDOWS SERVER 2003 source, you can use a WINDOWS XP SP2 source (i386 dir) but you'll have to replace the following file with a newer version from the WINDOWS SERVER 2003 SP1 download (see next section):
 +
C:\pebuilder3110a\BartPE\I386\SYSTEM32\DRIVERS\ramdisk.sys
  
 
-you now have a BARTPE.ISO (on your local pc)
 
-you now have a BARTPE.ISO (on your local pc)
Line 27: Line 34:
 
(You now have a file called: WindowsServer2003-KB889101-SP1-x86-ENU.exe)
 
(You now have a file called: WindowsServer2003-KB889101-SP1-x86-ENU.exe)
  
-open WINRAR to open the WindowsServer2003-KB889101-SP1-x86-ENU.exe file
+
-open WINRAR to open the WindowsServer2003-KB889101-SP1-x86-ENU.exe file (the W2K3 file is just a self-extracting ZIP/CAB/TAR file)
  
-extract the following files from the W2K3SP1:  
+
-extract only the following files from the W2K3SP1:  
ntdetect.com
+
ntdetect.com
ramdisk.sy_
+
ramdisk.sy_
setupldr.ex_
+
setupldr.ex_
startrom.n1_
+
startrom.n1_
  
 
-The underscore files are compressed. We need to decompress/expand them:
 
-The underscore files are compressed. We need to decompress/expand them:
expand ramdisk.sy_
+
expand ramdisk.sy_
expand setupldr.ex_
+
expand setupldr.ex_
expand startrom.n1_
+
expand startrom.n1_
 +
 
 +
(You only need the ramdisk.sys file if you don't have a WINDOWS 2003 SERVER source to build your BARTPE from. See above section.)
 +
 
  
===TRANSFER FILES TO SME SERVER===
+
===Transfer files to SME SERVER===
-copy the following files to the SME SERVER in the "/tftpdboot" directory:
+
-copy the following files to the SME SERVER in the "/tftpboot" directory:
ntdetect.com
+
ntdetect.com
setupldr.exe
+
setupldr.exe
startrom.n12
+
startrom.n12
bartpe.iso
+
bartpe.iso
  
  
===WORK WITH FILES IN THE TFTPDBOOT DIR===
+
===Work with files in the TFTPBOOT dir===
 
-the files are case-sensitive and need to be named exactly as follows:
 
-the files are case-sensitive and need to be named exactly as follows:
ntdetect.com (lower-case)
+
ntdetect.com (lower-case)
NTLDR (rename the setupldr.exe to NTLDR, all caps)
+
NTLDR (rename the setupldr.exe to NTLDR, all caps)
startrom.0 (rename the startrom.n12 to startrom.0) (This is a ZERO)
+
startrom.0 (rename the startrom.n12 to startrom.0) (This is a ZERO)
BARTPE.ISO (all caps)
+
BARTPE.ISO (all caps)
  
 
-create a winnt.sif:
 
-create a winnt.sif:
vi winnt.sif
+
vi winnt.sif
  
 
-the contents of the winnt.sif file:
 
-the contents of the winnt.sif file:
[SetupData]
+
[SetupData]
BootDevice = "ramdisk(0)"
+
BootDevice = "ramdisk(0)"
BootPath = "\i386\System32\"
+
BootPath = "\i386\System32\"
 
+
OsLoadOptions = "/noguiboot /fastdetect /minint /rdexportascd /rdpath=bartpe.iso"
OsLoadOptions = "/noguiboot /fastdetect /minint /rdexportascd /rdpath=bartpe.iso"
 
  
 
-create a pxelinux.cfg directory:
 
-create a pxelinux.cfg directory:
mkdir pxelinux.cfg
+
mkdir pxelinux.cfg
  
 
-change to pxelinux.cfg dir and create a default file:
 
-change to pxelinux.cfg dir and create a default file:
cd pxelinux.cfg
+
cd pxelinux.cfg
vi default
+
vi default
  
 
-the contents of the default file:
 
-the contents of the default file:
prompt 1
+
prompt 1
implicit 0
+
implicit 0
timeout 600
+
timeout 600
default foo
+
default foo
 +
LABEL bartpe
 +
    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
  
LABEL foo
 
    kernel startrom.0
 
  
SUMMARY OF CONTENTS OF TFTPBOOT DIR
+
===Boot client PC===
[root@server tftpboot]# ls -la
+
-that should do it! Start your client PC and boot from the network.
total 941492
+
 
drwxr-xr-x  3 root root      4096 Dec  3 15:43 .
+
-at the prompt, when it asks for an image type: bartpe
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
+
-pretty cool, huh?
-if you don't have a WINDOWS SERVER 2003 source, then use a WINDOWS XP SP2 source
 
  
 
----
 
----
<noinclude>[[Category:Howto]]</noinclude>
+
<noinclude>
 +
[[Category:Howto]]
 +
[[Category:Administration]]
 +
</noinclude>

Latest revision as of 06:29, 22 June 2022


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.


DHCP Configuration for PXE booting

Easiest way is to install the smeserver-pxe contrib

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)

-or if you don't have a WINDOWS SERVER 2003 source, you can use a WINDOWS XP SP2 source (i386 dir) but you'll have to replace the following file with a newer version from the WINDOWS SERVER 2003 SP1 download (see next section):

C:\pebuilder3110a\BartPE\I386\SYSTEM32\DRIVERS\ramdisk.sys 

-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 (the W2K3 file is just a self-extracting ZIP/CAB/TAR file)

-extract only 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_

(You only need the ramdisk.sys file if you don't have a WINDOWS 2003 SERVER source to build your BARTPE from. See above section.)


Transfer files to SME SERVER

-copy the following files to the SME SERVER in the "/tftpboot" directory:

ntdetect.com
setupldr.exe
startrom.n12
bartpe.iso


Work with files in the TFTPBOOT 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 bartpe
   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


Boot client PC

-that should do it! Start your client PC and boot from the network.

-at the prompt, when it asks for an image type: bartpe

-pretty cool, huh?