Difference between revisions of "Configuration"

From ZeptoOS
Jump to navigationJump to search
Line 10: Line 10:
 
* Extract the sources from the package:
 
* Extract the sources from the package:
 
<pre>
 
<pre>
tar xjf ZeptoOS-*.tar.bz2
+
$ tar xjf ZeptoOS-*.tar.bz2
 
</pre>
 
</pre>
  
Line 21: Line 21:
 
</pre>
 
</pre>
  
A <tt>configure</tt> script is provided to set the pathnames to various system directories. If invoked without any arguments, it will use the defaults, which should be appropriate if ZeptoOS is configured on a system with a supported BG/P driver version.  The pathnames can be changed with the help of a user interface by invoking the script as follows:
+
A <tt>configure</tt> script is provided to set the pathnames to various system directories.
 +
 
 +
<pre>
 +
$ ./configure
 +
</pre>
 +
 
 +
If invoked without any arguments, it will use the defaults, which should be appropriate if ZeptoOS is configured on a system with a supported BG/P driver version.  The pathnames can be changed with the help of a user interface by invoking the script as follows:
  
 
<pre>
 
<pre>
Line 31: Line 37:
 
[[Image:Configure1.png|border|Main menu]]
 
[[Image:Configure1.png|border|Main menu]]
  
Please select the top item (<tt>BG/P DIST_DIR</tt>); <tt>KTAU</tt> is discussed in the [[(K)TAU#Configure ZeptoOS to point to KTAU patch and path|(K)TAU section]].  The screen will change to:
+
Please select the top item (<tt>BG/P DIST_DIR</tt>).  The screen will change to:
  
 
[[Image:Configure2.png|border|DIST_DIR menu]]
 
[[Image:Configure2.png|border|DIST_DIR menu]]
Line 46: Line 52:
 
: The directory with the supplementary I/O node software used when booting the I/O nodes.  It needs to be set to match the BG/P driver version being used.
 
: The directory with the supplementary I/O node software used when booting the I/O nodes.  It needs to be set to match the BG/P driver version being used.
  
== Building ==
+
The second top-level menu (<tt>Debugging</tt>) has only one option:
  
Typing ''make help'' will bring up the following menu:
+
; ADD_DEBUG_TOOLS
<pre>
+
: Check this option to include <tt>gdb</tt> and <tt>strace</tt> in the compute node ramdisk.  They are not included by default because of their size.
[MENU]
 
  
make                      - Prepare Zepto kernel and ramdisk images
+
The third top-level menu (<tt>Kernel Profiling</tt>) is discussed in the [[(K)TAU#Configure ZeptoOS to point to KTAU patch and path|(K)TAU section]]
  
make bgp-ion-ramdisk-cnk  - Rebuild ION ramdisk for CNK
+
Select <tt>Exit</tt> (multiple times if needed) and confirm if you want to save any changes made.
make bgp-ion-ramdisk-cnl  - Rebuild ION ramdisk for CNL
 
  
make bgp-ion-linux        - Simply use recent built or prebuilt ION kernel (no kernel rebuild)
+
== Building ==
make bgp-cn-linux          - Rebuild CN ramdisk and merge with recent built or prebuilt CN kernel objs
 
  
make bgp-ion-linux-build  - Rebuild ION kernel
+
To start using the pre-built binaries simply type:
make bgp-cn-linux-build    - Rebuild CN kernel objs and CN ramdisk, then merge them into CN Kernel
 
  
make bgp-all-pkg-smart    - Build packages from the prebuilt binaries
+
<pre>
make bgp-all-pkg-rebuild  - Rebuild all packages from source
+
$ make
 
</pre>
 
</pre>
  
To start using the default built binaries simply type:
+
On the first invocation, this will ask for a root password to use on I/O nodes:
<pre>$ make</pre>
 
This will copy all the required kernel and ramdisk images to the top level directory.
 
  
 
=== Examining the Build Directory ===
 
If the build was successful, one should be able to see the following new files either rebuilt from sources or copied from their prebuilt locations:
 
 
<pre>
 
<pre>
$ ls -l
+
Create root password for I/O Node
-rwxr-xr-x  1 hnaik users  8629983 2009-01-23 17:16 BGP-CN-zImage-with-initrd.elf
+
  Leave the password field empty if you want to disable root login
-rwxr-xr-x  1 hnaik users  1444183 2009-01-23 17:03 BGP-exp-ION-zImage.elf
+
  New password:
-rwxr-xr-x  1 hnaik users 10423112 2009-01-23 17:03 BGP-ION-ramdisk-for-CNK.elf
 
-rwxr-xr-x  1 hnaik users 10423988 2009-01-23 17:03 BGP-ION-ramdisk-for-CNL.elf
 
-rw-r--r--  1 hnaik users      132 2009-01-23 17:03 bgp-ion-ramdisk-passwd.txt
 
-rwxr-xr-x  1 hnaik users  1351583 2009-01-23 17:08 BGP-ION-zImage.elf
 
 
</pre>
 
</pre>
  
 +
'''Security note: root-level access to I/O nodes should only be given to trusted individuals.  A root user can access and modify files of all users in the system.'''
 +
 +
Once a password has been entered and confirmed, <tt>make</tt> will use pre-built kernel images, and will build the ramdisks from pre-built tools and utilities.  The following generated files will be placed in the top-level directory:
 +
 +
; BGP-CN-zImage-with-initrd.elf
 +
: A merged ZeptoOS compute node Linux and compute node ramdisk file.
 +
; BGP-ION-ramdisk-for-CNL.elf
 +
: ZeptoOS I/O node ramdisk for use with the ZeptoOS compute node Linux.
 +
; BGP-ION-ramdisk.elf
 +
: ZeptoOS I/O node ramdisk for use with the IBM CNK (optional).
 +
; BGP-ION-zImage.elf
 +
: ZeptoOS I/O node kernel.
 +
 +
It is possible to rebuild individual ZeptoOS components using one of the following <tt>make</tt> targets (the list is also available by typing <tt>make help</tt> or <tt>make menu</tt>):
 +
 +
; bgp-ion-ramdisk-cnk
 +
: Rebuilds the I/O node ramdisk for the IBM CNK.
 +
; bgp-ion-ramdisk-cnl
 +
: Rebuilds the I/O node ramdisk for the ZeptoOS compute node Linux.
 +
; bgp-ion-linux
 +
: Copies a recently rebuilt I/O node kernel if one is available; otherwise, uses a prebuilt binary (will not rebuild the kernel).
 +
; bgp-cn-linux
 +
: Copies a recently rebuilt compute node kernel if one is available; otherwise, uses a prebuilt binary (will not rebuild the kernel), rebuilds the compute node ramdisk, and merges the kernel and ramdisk.
 +
; bgp-ion-linux-build
 +
: Rebuilds the I/O node kernel.
 +
; bgp-cn-linux-build
 +
: Rebuilds the compute node kernel and ramdisk and merges them.
 +
; bgp-all-pkg-smart
 +
: Builds packages from the prebuilt binaries.
 +
; bgp-all-pkg-rebuild
 +
: Rebuilds all packages from sources.
  
 
----
 
----
 
[[Introduction]] | [[ZeptoOS_Documentation|Top]] | [[Installation]]
 
[[Introduction]] | [[ZeptoOS_Documentation|Top]] | [[Installation]]

Revision as of 17:23, 5 May 2009

Introduction | Top | Installation


Downloading

  • Log on one of the frontend nodes of the Blue Gene (a login node or a service node).
  • Extract the sources from the package:
$ tar xjf ZeptoOS-*.tar.bz2

Configuring

Change to the top-level BGP directory:

$ cd BGP/

A configure script is provided to set the pathnames to various system directories.

$ ./configure

If invoked without any arguments, it will use the defaults, which should be appropriate if ZeptoOS is configured on a system with a supported BG/P driver version. The pathnames can be changed with the help of a user interface by invoking the script as follows:

$ ./configure --edit

This will display the following menu:

Main menu

Please select the top item (BG/P DIST_DIR). The screen will change to:

DIST_DIR menu

The following options are available:

DRV_DIR
The directory with the BG/P driver tree. The default (/bgsys/drivers/ppcfloor/) is a link pointing to the currently active driver.
BGP_CROSS
A prefix to the pathnames of the GNU cross-compilers used to build the compute node and I/O node software.
BGCNS_H_PATH and BGCNS_H
The location of a file needed to rebuild the kernel (these options are temporary and will be removed in the next version).
OS_DIR
The directory with the supplementary I/O node software used when booting the I/O nodes. It needs to be set to match the BG/P driver version being used.

The second top-level menu (Debugging) has only one option:

ADD_DEBUG_TOOLS
Check this option to include gdb and strace in the compute node ramdisk. They are not included by default because of their size.

The third top-level menu (Kernel Profiling) is discussed in the (K)TAU section

Select Exit (multiple times if needed) and confirm if you want to save any changes made.

Building

To start using the pre-built binaries simply type:

$ make

On the first invocation, this will ask for a root password to use on I/O nodes:

Create root password for I/O Node
   Leave the password field empty if you want to disable root login
   New password:

Security note: root-level access to I/O nodes should only be given to trusted individuals. A root user can access and modify files of all users in the system.

Once a password has been entered and confirmed, make will use pre-built kernel images, and will build the ramdisks from pre-built tools and utilities. The following generated files will be placed in the top-level directory:

BGP-CN-zImage-with-initrd.elf
A merged ZeptoOS compute node Linux and compute node ramdisk file.
BGP-ION-ramdisk-for-CNL.elf
ZeptoOS I/O node ramdisk for use with the ZeptoOS compute node Linux.
BGP-ION-ramdisk.elf
ZeptoOS I/O node ramdisk for use with the IBM CNK (optional).
BGP-ION-zImage.elf
ZeptoOS I/O node kernel.

It is possible to rebuild individual ZeptoOS components using one of the following make targets (the list is also available by typing make help or make menu):

bgp-ion-ramdisk-cnk
Rebuilds the I/O node ramdisk for the IBM CNK.
bgp-ion-ramdisk-cnl
Rebuilds the I/O node ramdisk for the ZeptoOS compute node Linux.
bgp-ion-linux
Copies a recently rebuilt I/O node kernel if one is available; otherwise, uses a prebuilt binary (will not rebuild the kernel).
bgp-cn-linux
Copies a recently rebuilt compute node kernel if one is available; otherwise, uses a prebuilt binary (will not rebuild the kernel), rebuilds the compute node ramdisk, and merges the kernel and ramdisk.
bgp-ion-linux-build
Rebuilds the I/O node kernel.
bgp-cn-linux-build
Rebuilds the compute node kernel and ramdisk and merges them.
bgp-all-pkg-smart
Builds packages from the prebuilt binaries.
bgp-all-pkg-rebuild
Rebuilds all packages from sources.

Introduction | Top | Installation