Difference between revisions of "PXE booting to BARTPE"

From SME Server
Jump to navigationJump to search
(New page: {{Languages}} ==How you can help== ===What skills are necessary?=== Any skill is useful for the SMESERVER project. If you are a developer of any kind, we will find something for you to ...)
 
m (categorisation)
(33 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{Languages}}
 
{{Languages}}
==How you can help==
+
==PXE booting to ISO==
  
===What skills are necessary?===
+
===Goal===
Any skill is useful for the SMESERVER project.  
+
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).
  
If you are a developer of any kind, we will find something for you to do.
 
Even if you think that you have no Linux skills you can still help. You can tell us if and how you understand the wiki pages, or more precisely, we would like to know what pages you don't understand. Thanks to the insights of new users we can continuously enhance readability of the wiki. Visit Communicate to learn how to contact us.
 
  
If, on a top of that, you can write, you are invaluable. We need a lot of articles. There are thousands of Linux programs around, and more are released every day. In addition, new versions of existing applications are released. There is need for a lot of hands to write about them and to keep reviews current.  
+
===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.
  
===Documentation -Review or Write Documentation, Manuals, and Articles===
 
Documentation for SME Server was inherited from the prior distribution maintainers, e-smith and mitel. Their work gave SME a great base to work from.
 
  
The current developers have continued to improve the SME Server software and to reflect these improvements the Documentation has to develop too. These wiki-based manuals have been put in place to allow anyone to update or add new sections where they see fit.
+
===Install TFTP package on your SME SERVER===
 +
-install SMESERVER-TFTP-SERVER on your SME SERVER: http://wiki.contribs.org/Tftp_server
  
The core manuals have been protected for stability, but anyone can request access to add and update howto and contrib pages to the wiki. If you've got instructions, solutions to common problems, neat tips and tricks, or just a good way to explain something, we'd love to hear from you.
 
  
===Bug and New Feature Verification===
+
===Create a BARTPE.ISO on your local pc===
You can help improve SMESERVER by finding and reporting bugs. This helps us to make our software as reliable as possible.  
+
-download BARTPE on your local pc: http://www.nu2.nu/pebuilder/
  
Our bug tracking system, Bugzilla, is used for all SMESERVER Linux products. If you have never written a bug report, please refer to [[BugzillaHelp]] to learn what kinds of information make the report most useful.
+
-create a BARTPE disk using WINDOWS SERVER 2003 source (i386 directory)
  
Your role in that is to report possible bugs only via the bug tracker, and to encourage others to do the same. Refer again to [[BugzillaHelp]] for helping with bug fixing and verification, the best way to learn is to fix other peoples' problems.
+
-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
  
===Programming -Develop Patches and Packages===
+
-you now have a BARTPE.ISO (on your local pc)
The most obvious way, for programmers, to participate in the development of SMESERVER is to post a patch as a suggested solution to an existing bug in Bugzilla. Each package has a maintainer, who will contact you to discuss your proposed solution. You may want to join our development mailing lists before you start coding in order to discuss your plans and coordinate with other developers.
 
  
For more information about getting source code and building your own packages, read the [[SME_Server:Documentation:Developers_Manual]].
 
  
If you would like to build your own applications on SMESERVER, read the [[SME_Server:Documentation:Developers_Manual]] to learn how to package your own software.
+
===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
  
===Maintaining existing Languages===
+
(You now have a file called: WindowsServer2003-KB889101-SP1-x86-ENU.exe)
Changes to Existing Language sets are posted to the Translations section of the Bug Tracker.
 
  
For a simple change add the original and the new text to a bug report.
+
-open WINRAR to open the WindowsServer2003-KB889101-SP1-x86-ENU.exe file (the W2K3 file is just a self-extracting ZIP/CAB/TAR file)
  
For larger changes you can make a patch.
+
-extract only the following files from the W2K3SP1:
 +
ntdetect.com
 +
ramdisk.sy_
 +
setupldr.ex_
 +
startrom.n1_
  
Obtain an original file that you are going to modify, it will usually be a translation of a panel, eg.
+
-The underscore files are compressed. We need to decompress/expand them:
/etc/e-smith/locale/en-us/etc/e-smith/web/functions/hostentries or
+
expand ramdisk.sy_
/etc/e-smith/locale/fr/etc/e-smith/web/functions/hostentries
+
expand setupldr.ex_
if a patch from the Bug Tracker is available it will guide you on what has changed
+
expand startrom.n1_
[[http://bugs.contribs.org/attachment.cgi?id=751]]
 
  
make a directory and copy your file there as name.old
+
(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.)
make a copy name.new and edit it to suit
 
  
from the command line create a patch
 
diff -u name.old name.new > name.patch
 
  
add this to the existing bug or create a new one in Translations
+
===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
  
===Donations & Funding Work===
 
Help smeserver.org pay it's bills
 
http://www.smeserver.org/index.php?option=com_wrapper&Itemid=34
 
  
Pay a developer to add a feature you would like
+
===Work with files in the TFTPDBOOT dir===
Email a developer directly with your request or open a bug with your proposal
+
-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)
  
===Be part of the Wiki Team===
+
-create a winnt.sif:
This page is built with MediaWiki. The concept of a Wiki is that anybody may add and modify content. On [[Help:Contents]], find a quick tutorial if you're unfamiliar with Wikis.
+
vi winnt.sif
  
As long as you edit anything on the wiki you are de facto member of the Wiki Team.  
+
-the contents of the winnt.sif file:
 +
[SetupData]
 +
BootDevice = "ramdisk(0)"
 +
BootPath = "\i386\System32\"
 +
OsLoadOptions = "/noguiboot /fastdetect /minint /rdexportascd /rdpath=bartpe.iso"
  
To make edits, you need to log in to the wiki. In order to do this, you will need to open an account. The information that SMESERVER requires for opening an account is very limited and easy to do.
+
-create a pxelinux.cfg directory:
 +
mkdir pxelinux.cfg
  
After you log in, you will see a toolbar at the top of the page that is always available. There is a link in the toolbar that is labeled with your username. This takes you to your "personal page". Use this page to introduce yourself and don't be shy. Write a word or two about your interests, especially those related to SMESERVER and Linux. If nothing else, tell us how you learned about SMESERVER.  
+
-change to pxelinux.cfg dir and create a default file:
 +
cd pxelinux.cfg
 +
vi default
  
===Help Other Users===
+
-the contents of the default file:
There is an active community in the forum that help all levels of SMESERVER users. Please have a look at the forum for an overviewhttp://forums.contribs.org
+
prompt 1
 +
implicit 0
 +
timeout 600
 +
default foo
 +
  LABEL bartpe
 +
    kernel startrom.0
  
===Suggest New Features or Software===
+
===Summary of contents of TFTPBOOT dir===
Visit the BUGTRACKER NEW FEATURE RELEASE (NFR) page and add your suggestion:  
+
[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
  
http://bugs.contribs.org/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&product=SME+Server+Future
 
  
Only software with an OSI-compliant open-source license will be added to the SMESERVER project.
+
===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?
  
 
----
 
----
<noinclude>[[Category:Howto]]</noinclude>
+
<noinclude>[[Category:Howto]]
 +
[[Category:Administration]]</noinclude>

Revision as of 14:07, 11 May 2010


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)

-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 "/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 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?