mirror of https://github.com/tLDP/LDP
4252 lines
149 KiB
XML
4252 lines
149 KiB
XML
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
|
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
|
|
<!ENTITY BA "<command>BOOT_ADMIN</command>">
|
|
<!ENTITY PA "PA-RISC">
|
|
<!ENTITY PL "PA/Linux">
|
|
<!ENTITY L "Linux">
|
|
<!ENTITY PO "<command>PALO</command>">
|
|
<!ENTITY V "<emphasis>via</emphasis>">
|
|
<!ENTITY D "Debian">
|
|
<!ENTITY trade "™">
|
|
<!ENTITY W "<trademark>Windows</trademark>">
|
|
<!ENTITY prompt "<prompt>[user@machine ~/dir]></prompt>">
|
|
<!-- Please use these abbreviations -->
|
|
]>
|
|
<!-- Tabstops = 2, indents = 2, attempt wordwraping around 100 -->
|
|
<!-- http://www.oasis-open.org/docbook/documentation/reference/html/docbook.html -->
|
|
<book>
|
|
<bookinfo>
|
|
|
|
<title>&PA;/Linux Boot HOWTO</title>
|
|
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Thomas</firstname>
|
|
<surname>Marteau</surname>
|
|
<affiliation>
|
|
<orgname>TuxFamily</orgname>
|
|
<address>
|
|
<email>marteaut@tuxfamily.org</email>
|
|
</address>
|
|
</affiliation>
|
|
</author>
|
|
<author>
|
|
<firstname>Deb</firstname>
|
|
<surname>Richardson</surname>
|
|
<affiliation>
|
|
<orgname>The Puffin Group</orgname>
|
|
<address>
|
|
<email>deb@thepuffingroup.com</email>
|
|
</address>
|
|
</affiliation>
|
|
</author>
|
|
<author>
|
|
<firstname>Thibaut</firstname>
|
|
<surname>Varène</surname>
|
|
<affiliation>
|
|
<orgname>PA/Team</orgname>
|
|
<address>
|
|
<email>T-Bone@parisc-linux.org</email>
|
|
</address>
|
|
</affiliation>
|
|
</author>
|
|
</authorgroup>
|
|
|
|
<copyright>
|
|
<year>1999</year>
|
|
<holder>The Puffin Group and Deb Richardson.</holder>
|
|
</copyright>
|
|
<copyright>
|
|
<year>2001</year>
|
|
<year>2002</year>
|
|
<year>2003</year>
|
|
<holder>Thomas Marteau.</holder>
|
|
</copyright>
|
|
<copyright>
|
|
<year>2002</year>
|
|
<year>2003</year>
|
|
<year>2006</year>
|
|
<holder>Thibaut Varène.</holder>
|
|
</copyright>
|
|
|
|
<legalnotice>
|
|
<para>
|
|
Permission is granted to copy, distribute and/or modify this
|
|
document under the terms of the GNU Free Documentation
|
|
License, Version 1.2 as published by the
|
|
Free Software Foundation; with no Invariant Sections, with
|
|
no Front-Cover Texts, and with no Back-Cover Texts.
|
|
A copy of the license can be found at
|
|
<ulink url="http://www.gnu.org/copyleft/fdl.html">http://www.gnu.org/copyleft/fdl.html</ulink>.
|
|
</para>
|
|
</legalnotice>
|
|
|
|
<legalnotice>
|
|
<!-- A Standard Disclaimer -->
|
|
<para>No liability for the contents of this document can be accepted.
|
|
Use the concepts, examples and information at your own risk.
|
|
There may be errors and inaccuracies, that could be damaging
|
|
to your system. Proceed with caution, and although it is highly
|
|
unlikely that accidents will happen because of following advice
|
|
or procedures described in this document, the author(s) do not
|
|
take any responsibility for any damage claimed to be caused by
|
|
doing so.
|
|
</para>
|
|
|
|
<para>All copyrights are held by their by their respective owners,
|
|
unless specifically noted otherwise. Use of a term in this
|
|
document should not be regarded as affecting the validity of
|
|
any trademark or service mark. Naming of particular products or
|
|
brands should not be seen as endorsements.
|
|
</para>
|
|
</legalnotice>
|
|
|
|
<keywordset>
|
|
<keyword>PA-RISC</keyword>
|
|
<keyword>Linux</keyword>
|
|
<keyword>boot</keyword>
|
|
</keywordset>
|
|
|
|
<abstract>
|
|
<para>This document outlines the procedures to get the &PA;/&L;
|
|
kernel to boot on your &PA; system. It also explains the usage of &PO;,
|
|
the kernel loader for &PL;. You will find much information on how to
|
|
compile a kernel from the source available at
|
|
<ulink url="http://cvs.parisc-linux.org/">http://cvs.parisc-linux.org/</ulink>.
|
|
Please note that this HOWTO version is newer than Deb Richardson's and
|
|
includes more accurate information because of the progress of the port.
|
|
Nevertheless, it's worth mentioning that this document kept parts of Deb's
|
|
original work and unveiled some remarkable information.</para>
|
|
|
|
<para>If you are looking for information related to HP
|
|
hardware but not directly to &PA;, please read
|
|
<ulink url="http://www.tldp.org/HOWTO/HP-HOWTO/">Bruno
|
|
Cornec's HP-HOWTO</ulink>.</para>
|
|
|
|
<para>Note: by the time this HOWTO was started, &D; was the only &L;
|
|
distribution available for the &PA; platform, hence the "&D;
|
|
color" of this document. Some times, &D; specific commands
|
|
will have to be replaced by their equivalent, if any.</para>
|
|
</abstract>
|
|
|
|
<pubdate>2006-06-06</pubdate>
|
|
<edition>version 1.5 for DocBook V4.2</edition>
|
|
|
|
<revhistory id="revhistory">
|
|
<revision>
|
|
<revnumber>1.5</revnumber>
|
|
<date>2006-06-06</date>
|
|
<authorinitials>tv</authorinitials>
|
|
<revremark>
|
|
XML cleanup, improved and reorganized contents. Updated to palo 1.5+ and kernel 2.6.
|
|
</revremark>
|
|
</revision>
|
|
<revision>
|
|
<revnumber>1.1</revnumber>
|
|
<date>2003-11-01</date>
|
|
<authorinitials>tm</authorinitials>
|
|
<revremark>
|
|
Added Jeremy Drake's &W; server boot howto.
|
|
</revremark>
|
|
</revision>
|
|
<revision>
|
|
<revnumber>1.0</revnumber>
|
|
<date>2002-10-04</date>
|
|
<authorinitials>tm & tv</authorinitials>
|
|
<revremark>
|
|
Content done by Thibaut. Ready for Woody release. Added Glossary and bibliography. XML conversion.
|
|
</revremark>
|
|
</revision>
|
|
<revision>
|
|
<revnumber>0.9</revnumber>
|
|
<date>2002-01-15</date>
|
|
<authorinitials>tm</authorinitials>
|
|
<revremark>
|
|
This version brings you some useful advices for compiling your own kernel on hppa systems.
|
|
</revremark>
|
|
</revision>
|
|
<revision>
|
|
<revnumber>0.8</revnumber>
|
|
<date>2001-10-17</date>
|
|
<authorinitials>tm</authorinitials>
|
|
<revremark>
|
|
This version takes care of the change of name of the official FTP and CVS sites and modify the license.
|
|
</revremark>
|
|
</revision>
|
|
<revision>
|
|
<revnumber>0.7</revnumber>
|
|
<date>2001-10-13</date>
|
|
<authorinitials>tm</authorinitials>
|
|
<revremark>
|
|
This version adds some updates due to the progress of &PL;.
|
|
</revremark>
|
|
</revision>
|
|
<revision>
|
|
<revnumber>0.6 draft</revnumber>
|
|
<date>2001-09-26</date>
|
|
<authorinitials>tm</authorinitials>
|
|
<revremark>
|
|
This version contains some minor changes and complete the "obtaining bootp/tftpd" section.
|
|
</revremark>
|
|
</revision>
|
|
<revision>
|
|
<revnumber>0.5 draft</revnumber>
|
|
<date>2001-07-03</date>
|
|
<authorinitials>tm</authorinitials>
|
|
<revremark>
|
|
This version is a large update from Deb's work.
|
|
</revremark>
|
|
</revision>
|
|
<revision>
|
|
<revnumber>0.3 draft</revnumber>
|
|
<date>1999-11-24</date>
|
|
<authorinitials>dlr</authorinitials>
|
|
<revremark>
|
|
The initial and published version of this HOWTO.
|
|
</revremark>
|
|
</revision>
|
|
</revhistory>
|
|
|
|
</bookinfo>
|
|
|
|
|
|
|
|
|
|
<preface id="introduction">
|
|
<title>Introduction</title>
|
|
|
|
<para>You just received this &PA; box you bought online, or maybe you
|
|
got it from your company scrapyard. Anyway, here comes the question of the
|
|
operating system you are going to use. The &PL; project consists in porting
|
|
&L; to the &PA; architecture, and we hope that if you decide to use it on
|
|
your box, this HOWTO will help you in the process of setting it up.</para>
|
|
|
|
<para>In addition to porting the &L; kernel, the development team is working
|
|
on porting the &D; project to &PA;. In fact, by the time we wrote this
|
|
document, over 97% of the package pool is available for the stable
|
|
&D; release (3.1, aka <emphasis>Sarge</emphasis>) on hppa (see
|
|
<ulink url="http://buildd.debian.org/stats/hppa.txt">the buildd stats</ulink>
|
|
for detailed data). Some &D; developers and users reported that the
|
|
port was one of the easiest to install, as it feels like installing an
|
|
i386 system.</para>
|
|
|
|
<para>For more information about the &PA;/&L; porting project,
|
|
please see <ulink url="http://www.parisc-linux.org/">http://www.parisc-linux.org/</ulink>, or a mirror site like
|
|
<ulink url="http://www.fr.parisc-linux.org/">http://www.fr.parisc-linux.org/</ulink>.
|
|
This site deals with kernel development and improvement. For user-space
|
|
troubles, please refer to
|
|
<ulink url="http://www.debian.org/ports/hppa/">&D; hppa port pages</ulink>.</para>
|
|
|
|
<para>In a few words, this HOWTO is aimed at anyone looking for some
|
|
help and information about using &L; on a &PA; system. No particular prior
|
|
knowledge is necessary but bases about how &D; packages work, and general
|
|
background about &L; can be helpful.</para>
|
|
|
|
<para>It is also worth mentioning that some sections of the present document
|
|
aren't Linux-centric, and may be of use to people dealing with other OSes,
|
|
such as BSDs or even HP-UX.</para>
|
|
|
|
<para>After listing supported hardware, this HOWTO explains some commands
|
|
of the Boot Console Handler (<acronym>BCH</acronym>) available at boot time. Then, the
|
|
features of the &PL; kernel loader are introduced in another chapter,
|
|
and finally many ways to get your system up and running are detailed.
|
|
At the end, the text goes deep in the kernel compilation and configuration,
|
|
as well as a few appendices giving some extra hints.</para>
|
|
|
|
</preface>
|
|
|
|
|
|
|
|
|
|
<chapter id="hardware">
|
|
<title>Supported Hardware</title>
|
|
|
|
|
|
<para>With the release of &PA; architecture in &D; 3.0
|
|
(aka <emphasis>Woody</emphasis>), a major improvement was
|
|
made in term of quantity and quality of hardware support.
|
|
Since 0.9.3 released<footnote id="ftn-debian-support"><para>
|
|
Before the first release of Debian on hppa,
|
|
there has been unofficial releases of Woody snapshots, entitled "&PL; releases",
|
|
and numbered <emphasis>0.x</emphasis>. Immediately after the release of Woody,
|
|
the &PL; port switched to the normal Debian numbering scheme. In other words,
|
|
&D; 3.0 is consecutive to &PL; 0.9.3.</para></footnote>, the kernel has been
|
|
greatly improved, so that much unsupported hardware by the time 0.9.3 went out
|
|
is now handled. That's why even if your model is not listed here, you might
|
|
give it a try and report your result to the mailing list:
|
|
<email>parisc-linux@lists.parisc-linux.org</email>.
|
|
</para>
|
|
|
|
<note><para>Mind that as of this document's publication date, the 2.4 series of the
|
|
Linux kernel are deemed obsolete, and no development happens in that branch.
|
|
Any new comer to the PA-RISC/Linux port should look at the 2.6 kernel series,
|
|
which supports much more hardware than the 2.4 does. Accordingly, one will not try
|
|
to use the now aging <emphasis>Woody</emphasis> release and will instead focus
|
|
on its successor: <emphasis>Sarge</emphasis>, or even better, the upcoming
|
|
<emphasis>Etch</emphasis>.</para></note>
|
|
|
|
<para>The following &PA; machines should work just fine, provided that you follow the
|
|
instructions of the present document.
|
|
Please note that this list can change at any time.
|
|
The best way to get an up to date version is to look at
|
|
<ulink url="http://www.pateam.org/list.html">http://www.pateam.org/list.html</ulink>.
|
|
This is the place to find relevant information about a specific model,
|
|
including special boot procedures.
|
|
More hardware information can be found on <ulink url="http://www.openpa.net/">OpenPA</ulink>.
|
|
</para>
|
|
|
|
<para>
|
|
SMP machines should work with SMP kernels (and UP ones, of course) unless stated otherwise.
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>All 712 models.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>All 715 models including Strider series.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>All 705, 710, 720, 730, 750 models should work.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Some 725, 735 (no HVD SCSI), 755 models are now working.
|
|
But since there was not a lot of feedback about these machines, we can not be
|
|
more explicit.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>The VME-like systems are supported. This includes 742 and 743.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>A180 and similar.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>A500, and similar (rp2400 series).</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>BXXX models like B132, B160 and B180. These boxes can be used in the
|
|
framebuffer mode through the Standard Text Interface.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>BXXXX models like B1000, B2000 and B2600. These boxes can be used with
|
|
<literal>STI_CONSOLE</literal>, but framebuffer only works with VIS-EG cards.
|
|
FX adapters are not supported.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>CXXX models like C100, C110, C160, C180, C200, C240, C360.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>CXXXX models. Indeed, BXXXX and CXXXX are the same kind of machines,
|
|
based on Astro/Elroy (aka SBA/LBA) chipsets with varying CPU speeds,
|
|
number of memory/PCI slots. C3000, C3600, C3750 are reported to be working.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>D class works unless you have a Remote Management Card installed. Even then,
|
|
it still kind of works, it's just that ttyS0 gets assigned to the second
|
|
serial port and you have to switch cables around.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>J class is quite well supported. It has the same split as C class,
|
|
<emphasis>i.e.</emphasis> JXXX and J2240 are U2/Uturn based and JXXXX are
|
|
Astro/Elroy. It is the SMP version of CXXXX models.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>K class is supported if you are using recent ISO images (<emphasis>e.g.</emphasis>
|
|
Sarge ones).</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>L class and similar (rp5400 series).</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>N class: N4000 (some rp7400 series are reported to work).</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>R class is basically the same as D class.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>
|
|
These are not really working yet but work is being carried on.
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>The current 8-way (and bigger) machines using SX1000 chipset and pa8800
|
|
(or pa8900) processors do not work yet. Similarly, smaller 2-socket and
|
|
4-socket platforms using ZX1 chipset and pa8800 (or pa8900) such as rp3400 series do
|
|
not work correctly yet either.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>
|
|
No plan to get the following hardware completely supported in the near future:
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>E class: E35 and E55 are known to work diskless. The SCSI support is not expected
|
|
to work anytime soon.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>F,G,H,I classes: Currently not supported.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>SuperDome: It boots "single-cell", multi-IOMMU doesn't work.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>T 5XX and V class: Nobody is working on it at the moment.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>rp8400: these are cell based and probably don't work yet.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>
|
|
The following hardware might never work:
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>T600.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Vis-FX graphic adapters.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
|
|
</chapter>
|
|
|
|
|
|
|
|
|
|
<chapter id="preparation">
|
|
<title>Preparing to boot</title>
|
|
|
|
<highlights><para>Like any other system, machines based on &PA; processors have to
|
|
go through several steps in order to get &L; up and running. The next
|
|
section introduces you to the early boot management of your &PA; computer.
|
|
(By the way, to be a bit less awkward, we might from time to time call it a
|
|
<emphasis>'PA'</emphasis> box). This chapter will give you some
|
|
key concepts like &BA;.</para></highlights>
|
|
|
|
<sect1 id="bootadmin">
|
|
<title>&BA;</title>
|
|
|
|
<highlights><para>First of all, you must learn what is and how to use &BA; on your
|
|
&PA; box, before thinking about doing anything with it.</para></highlights>
|
|
|
|
<para>&BA; is a <emphasis>firmware</emphasis> application,
|
|
used to manage a &PA; machine at an early boot stage,
|
|
<emphasis>i.e.</emphasis> when the box has not yet started its
|
|
<emphasis>Operating System</emphasis>. It is also known as the
|
|
<xref linkend="glossbch" />. Those familiar with the x86 world
|
|
will probably see it as a kind of <emphasis>BIOS</emphasis>,
|
|
whilst PPC fans might think of it as an equivalent for
|
|
<emphasis>Open Firmware</emphasis>.</para>
|
|
|
|
|
|
<para>We named it &BA;
|
|
throughout this document since it is the name it is the most common prompt it
|
|
will display on
|
|
most &PA; machines. You will see through this HOWTO that there
|
|
are many references to it, therefore it's worth
|
|
saying that minimalistic &BA; skills are mandatory!</para>
|
|
|
|
|
|
<sect2 id="enterbootadmin">
|
|
<title>Entering the &BA; interface</title>
|
|
|
|
<para>Entering the &BA; management tool isn't that awful:</para>
|
|
|
|
<orderedlist numeration="arabic">
|
|
<listitem>
|
|
<para>Turn your &PA; box on.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>During the boot process, the following message will appear
|
|
on the current <emphasis>console</emphasis> (see <xref linkend="consoles" />):
|
|
<programlisting><computeroutput>
|
|
Searching for Potential Boot Devices.
|
|
To terminate search, press and hold the ESCAPE key.
|
|
</computeroutput></programlisting>
|
|
When this message is displayed, press and hold the <keycap>Esc</keycap> key
|
|
until an option menu appears. This can take a while, be patient. On recent
|
|
machines, pressing any key interrupts the boot process as well.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>By default, you should enter the &BA; console.
|
|
Though on some 715s and 725s, an option menu looking like this may be shown:
|
|
<programlisting><computeroutput>
|
|
b) Boot from specified device
|
|
s) Search for bootable devices
|
|
a) Enter Boot Administration mode
|
|
x) Exit and continue boot sequence
|
|
?) Help
|
|
|
|
Select from menu:
|
|
</computeroutput></programlisting>
|
|
Type '<keycap>a</keycap>' and hit <keycap>Enter</keycap> to enter
|
|
Boot Administration mode. This will bring up a
|
|
'<computeroutput>BOOT_ADMIN></computeroutput>' prompt.</para>
|
|
</listitem>
|
|
</orderedlist>
|
|
|
|
<para>Once you have the '<computeroutput>BOOT_ADMIN></computeroutput>'
|
|
prompt, you can pat yourself on the back: you are in &BA; mode!</para>
|
|
|
|
<para>As it has been said before, the prompt can differ between machines. On recent ones,
|
|
for instance, it looks like that:
|
|
<programlisting><computeroutput>
|
|
Main Menu: Enter command or menu >
|
|
</computeroutput></programlisting>
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
|
|
<sect2 id="bootadminhelp">
|
|
<title>&BA; commands</title>
|
|
|
|
<para>&BA; is an early boot subsystem (a Boot Console Handler, as said before)
|
|
where you can execute a limited set of commands. You should find here everything
|
|
you need to know about them.</para>
|
|
|
|
<para>All HP-PA systems have a <acronym>BCH</acronym>. The display can be different but the idea remains the same.
|
|
That's why the following list is not complete but consistent enough.
|
|
Another important thing is that for each command, you have a shorter way
|
|
to invoke it. You can see the shortcut shown as uppercase letters in
|
|
the command name. Full names will be used in this section.</para>
|
|
|
|
<caution>
|
|
<para>Be cautious when dealing with the <acronym>BCH</acronym>, you can harm your system.</para>
|
|
</caution>
|
|
|
|
<note>
|
|
<para>Some commands may appear in several different menus, and all commands listed
|
|
here may not necessarily be available on your particular system, this is normal.</para>
|
|
</note>
|
|
|
|
|
|
<sect3>
|
|
<title>The <literal>main</literal> commands</title>
|
|
|
|
<para>These commands are the basic ones.</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><command>boot</command> may be followed by an argument
|
|
which indicates the path you want to boot. The path should be
|
|
the definition of a device like for example
|
|
<computeroutput>FWSCSI.6.0</computeroutput> or
|
|
<computeroutput>PRI</computeroutput> if you have set this
|
|
variable correctly. Usually defaults to <computeroutput>PRI</computeroutput>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><command>path</command> displays or sets the current paths.
|
|
Invoked with only one argument it will display the current path of the
|
|
entity passed as argument: <command>path alt</command> will display the
|
|
current alternative boot path. <command>path pri fwscsi.6.0</command> will
|
|
setup the primary boot path as the device attached to Fast and Wide SCSI
|
|
controller with ID 6 and LUN 0. You can also set and display the paths
|
|
of console (graphics/serial) and keyboard (ps2/hil/usb).</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><command>search</command> is a very useful command.
|
|
It automagically checks all possible boot devices and displays
|
|
these bootable paths. In several firmware versions, it links them
|
|
to a shortcut (like <computeroutput>P0</computeroutput>). It can even search
|
|
the LAN, if the box is able to boot it. Some firmware revisions allow you
|
|
to restrain the search path like: <command>search lan</command> or
|
|
<command>search disk</command>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><command>display</command> redisplays the current menu.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><command>help</command> gives you an overview of the
|
|
available commands and their action. <command>help <parameter>name</parameter>
|
|
</command> will give you details on command <parameter>name</parameter>.
|
|
By default, you can list all <literal>main</literal> commands by
|
|
typing <command>help main</command>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><command>main</command> will bring you back to the
|
|
<literal>main</literal> menu, whatever menu you might be currently
|
|
browsing.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>On almost every systems, there is a
|
|
<command>reset</command> instruction. It restarts the machine with
|
|
the latest parameters you have set.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
</sect3>
|
|
|
|
|
|
<sect3>
|
|
<title>The <literal>configuration</literal> commands</title>
|
|
|
|
<para>These commands are available in the
|
|
<computeroutput>configuration</computeroutput> menu. So, in order to use
|
|
them, you must enter this menu by typing <command>configuration</command>
|
|
at the '<computeroutput>BOOT_ADMIN></computeroutput>' prompt.</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><command>auto</command> will tell you if the box will automatically
|
|
start booting when switched on, or will do a search for boot devices, depending
|
|
on the first argument passed to the command (<parameter>boot</parameter>,
|
|
<parameter>search</parameter>, <parameter>start</parameter>). You can modify this
|
|
parameter with the keywords <parameter>ON</parameter> and <parameter>OFF</parameter>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><command>default</command> sets back the factory defaults.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><command>monitor</command> (only in <link linkend="graphicsconsole">graphic
|
|
console</link>) sets your display configuration by typing <command>monitor
|
|
<replaceable><path></replaceable> <replaceable><type></replaceable></command>
|
|
which indicates your console path and type. You can list the available modes by typing
|
|
<command>monitor list</command>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><command>fastboot</command> displays or sets the boot tests execution.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="bootadminfo">
|
|
<title>The <literal>information</literal> commands</title>
|
|
|
|
<para>They give you access to global information about your system.
|
|
Going into this menu is done by asking for <command>information</command>.</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><command>all</command> should display everything.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><command>bootinfo</command> lists all the boot parameters of the system.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><command>fwrversion</command> gives your firmware revision.
|
|
You can check if your firmware is up-to-date at
|
|
<ulink url="ftp://us-ffs.external.hp.com/firmware_patches/hp/cpu/catalog">this
|
|
webpage</ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><command>lanaddress</command> shows the MAC (Ethernet) address of the system.
|
|
On some boxes (especially 712s), two different addresses may appear. The one you are
|
|
looking for is the first.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
</sect3>
|
|
|
|
|
|
<sect3>
|
|
<title>The <literal>service</literal> commands</title>
|
|
|
|
<warning><para>It is a &PA; guru menu.</para></warning>
|
|
|
|
<para>You will find nothing really interesting for an end-user here.
|
|
We recommend you not to play with it unless you <emphasis>really</emphasis>
|
|
know what you are doing.</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><command>pim [<proc>] [HPMC|LPMC|TOC]</command> displays the content
|
|
of a <xref linkend="glosspim"/> and Error Log. It is very useful after a
|
|
<xref linkend="glosstoc"/> to collect debugging information.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><command>clearpim</command> clears <xref linkend="glosspim"/> data.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><command>scroll</command> enables or disables the scrolling mode in &BA;
|
|
on recent boxes.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
</sect3>
|
|
|
|
</sect2>
|
|
|
|
</sect1>
|
|
|
|
|
|
<sect1 id="consoles">
|
|
<title>Consoles</title>
|
|
|
|
<highlights><para>
|
|
Throughout your PA-RISC experience, you will be often told about
|
|
<emphasis>consoles</emphasis>. This section aims at de-obfuscating what
|
|
this word means and how to use said <emphasis>consoles</emphasis>.
|
|
</para></highlights>
|
|
|
|
<para>
|
|
In order to boot your &PA; system with the &PL; kernel,
|
|
you must first set up a <emphasis>console</emphasis>.
|
|
A <emphasis>console</emphasis> is basically the device where the kernel
|
|
(and the firmware) will display its output, and where
|
|
input can by sent to control the system at an early boot stage.
|
|
You can use either <emphasis>graphic console</emphasis>, which requires
|
|
having a monitor and a keyboard attached to the system,
|
|
or <emphasis>serial console</emphasis>, which allows serial line
|
|
communication between the system and another Linux machine,
|
|
or any VT system.
|
|
</para>
|
|
|
|
<note><para>Please note that the firmware console and kernel console
|
|
are not necessarily the same. For instance, it is possible to
|
|
interact with &BA; using keyboard & monitor, and once &PL; is up,
|
|
to have kernel output sent to serial port only. By default,
|
|
<xref linkend="glosspalo" /> will try to use firmware console as the
|
|
kernel one.
|
|
</para></note>
|
|
|
|
<tip><para>
|
|
Workstations usually boot in graphic mode, whereas servers
|
|
boot in serial mode. Some boxes will also automatically switch
|
|
to serial if no keyboard is connected, or if you hold down
|
|
<literal>TOC</literal> switch while powering the system on.
|
|
</para></tip>
|
|
|
|
<para>
|
|
If you don't know what the actual console of your box is,
|
|
it's quite simple: find the place where first output is sent when
|
|
the box is turned on (serial line or monitor output, if any), that is
|
|
the console.
|
|
</para>
|
|
|
|
<para>
|
|
If you are trying to setup a &PA; workstation and have a monitor handy,
|
|
the easiest method is to use <emphasis>graphic console</emphasis>.
|
|
If you get into troubles, or are trying to configure a server, choose
|
|
<emphasis>serial console</emphasis>.
|
|
</para>
|
|
|
|
|
|
<sect2 id="graphicsconsole">
|
|
<title>Using graphic console</title>
|
|
|
|
<caution><para>
|
|
To use the graphic console, you must first ensure that
|
|
the Linux kernel supports your system's graphic card.
|
|
</para></caution>
|
|
|
|
<para>
|
|
There are two ways to deal with the graphic console.
|
|
If you think about bug-reporting any trouble, you must know how to
|
|
differentiate both. First, the <emphasis>STI</emphasis> console is
|
|
the classical video text console, like <emphasis>VGA</emphasis> on a
|
|
common PC for example. This name is due to the fact that each &PA;
|
|
box with graphical capabilities features the <xref linkend="glosssti" />
|
|
which defines some standardized ways to access the video memory.
|
|
The other graphic console is the well known
|
|
<emphasis>framebuffer</emphasis> console (which on
|
|
HP-PA uses STI in a special manner, hence the name
|
|
<emphasis>STIfb</emphasis>). In this case, when booting,
|
|
you will see a characteristic little penguin appearing on
|
|
the top-left corner. This is the easiest way to differentiate
|
|
the two graphic modes.
|
|
</para>
|
|
|
|
<para>
|
|
Obviously, if you can use graphic console, it is the easiest way to proceed.
|
|
Nevertheless, you must be sure that your hardware is supported.
|
|
</para>
|
|
|
|
<important><para>
|
|
All HP-provided graphics cards can deal with <xref linkend="glosssticon" />,
|
|
but not all of them are <xref linkend="glossstifb" /> supported in Linux.
|
|
This is especially true for Vis-FX cards that can only be used through STIcon.
|
|
</para></important>
|
|
|
|
</sect2>
|
|
|
|
|
|
<sect2 id="serialconsole">
|
|
<title>Using serial console</title>
|
|
|
|
<para>
|
|
The serial console is a good way to obtain all console messages,
|
|
including the <link linkend="glossbch"><acronym>BCH</acronym></link> ones.
|
|
It is very useful for bug reports, as its output can be easily dumped.
|
|
Moreover, most of the &PA; servers can only be managed with serial console.
|
|
</para>
|
|
|
|
<note><para>
|
|
The only cases where serial console <emphasis>HAS TO</emphasis> be used is
|
|
either if you don't have a monitor handy, or if the machine doesn't
|
|
support graphics. It is also possible that the kernel can <emphasis>NOT</emphasis>
|
|
handle some specific graphics hardware present in the machine, but that is
|
|
pretty rare (<link linkend="glosssticon">STIcon</link> should work everywhere).
|
|
</para></note>
|
|
|
|
<para>
|
|
Here is the procedure to setup serial console support.
|
|
</para>
|
|
|
|
|
|
<sect3 id="cable">
|
|
<title>Serial Cable</title>
|
|
|
|
<para>
|
|
To connect a &PA; machine to a PC's RS232 port, you need a
|
|
9-pin-to-9-pin female plugs null-modem cable.
|
|
You should be able to obtain such a cable at your local computer
|
|
hardware reseller.
|
|
Obviously, you can also choose to connect the other end of the
|
|
cable to a terminal (in this case it will probably need
|
|
a 25-pin male plug). Anyway, the most practical method is
|
|
to connect it to another box running <command>minicom</command>
|
|
or <command>cu</command>, which makes all output easily available for
|
|
further usage (dump report, session log, and so on).
|
|
</para>
|
|
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="minicom">
|
|
<title>Configuring <command>minicom</command> on &L;</title>
|
|
|
|
<para>
|
|
In order to communicate with a &PA; machine on a serial line,
|
|
you have to set it up in serial console mode (see
|
|
<link linkend="changingtoserial">below</link>),
|
|
and configure a serial communication program. We recommend
|
|
<command>minicom</command>, which can be found in most
|
|
&L; distributions. If you don't have <command>minicom</command>
|
|
on your system, you can find the latest package on any major
|
|
&L; software website.
|
|
</para>
|
|
|
|
<para>
|
|
Most of the <command>minicom</command> configuration is machine dependent.
|
|
However, you must ensure that:
|
|
</para>
|
|
|
|
<orderedlist numeration="loweralpha">
|
|
<listitem>
|
|
<para>The baud rate is set to 9600</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Protocol is set to 8-N-1 (8bit data, No parity check, 1 stop bit)</para>
|
|
</listitem>
|
|
</orderedlist>
|
|
|
|
<para>
|
|
Don't worry too much as these are the default values on &PL;.
|
|
If you are running <command>minicom</command> on a PC, you will
|
|
probably need to change the baud rate.
|
|
</para>
|
|
|
|
</sect3>
|
|
|
|
</sect2>
|
|
|
|
|
|
<sect2 id="switchingconsoles">
|
|
<title>Switching consoles</title>
|
|
|
|
<para>
|
|
It might prove useful that you learn how to manage the console mode on a &PA; box.
|
|
The following section will explain the various operations regarding console modes.
|
|
</para>
|
|
|
|
|
|
<sect3 id="checkingcurrentmode">
|
|
<title>Checking current console mode</title>
|
|
|
|
<para>
|
|
Type: <command>path console</command> to see the current console mode.
|
|
</para>
|
|
|
|
<para>
|
|
If it's <emphasis>graphic console</emphasis> mode, it will return
|
|
something like: '<computeroutput>Console path = graphic_1</computeroutput>'.
|
|
</para>
|
|
|
|
<para>
|
|
If it's <emphasis>serial console</emphasis>, it will return:
|
|
'<computeroutput>Console path = rs232_a.9600.8.none</computeroutput>'
|
|
or something similar.
|
|
</para>
|
|
|
|
<note><para>
|
|
On some models, there can be slight differences in the naming, but the idea stays
|
|
the same. If you want to see more descriptions here, please send us a message describing
|
|
the box you use and what you get.
|
|
</para></note>
|
|
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="changingtoserial">
|
|
<title>Changing to serial console mode</title>
|
|
|
|
<para>
|
|
To change to serial console mode, type the following command at the
|
|
'<computeroutput>BOOT_ADMIN></computeroutput>' command prompt:
|
|
</para>
|
|
|
|
<para>
|
|
<command>path console rs232_a.9600.8.none</command>
|
|
</para>
|
|
|
|
<para>or, like on B132L+</para>
|
|
|
|
<para>
|
|
<command>path console serial_1</command>
|
|
</para>
|
|
|
|
<para>
|
|
Anyway, on most boxes if you try to setup an invalid path for the console,
|
|
you will be warned and prompted again for a valid path.
|
|
To verify that the console path has been correctly set, type
|
|
<command>path console</command>. This should return something like
|
|
'<computeroutput>Console path = rs232_a.9600.8.none</computeroutput>',
|
|
indicating that the system is now set up to boot using serial console,
|
|
on RS232 port 'A'.
|
|
If your machine has only one, this is OK, if not, take care to use the right one.
|
|
<command>reset</command> will reboot your system with the new parameters.
|
|
</para>
|
|
|
|
|
|
<sect4 id="serial712">
|
|
<title>How can I change the boot console to serial on a 712?</title>
|
|
|
|
<para>
|
|
Unfortunately, it is <emphasis>*normally*</emphasis> not possible.
|
|
Although 712s are configured for in-house HP development to use serial,
|
|
this cannot be set in &BA;. You will have to use graphic console on 712s.
|
|
And why the hell would we use this beautiful 712 with serial console when
|
|
we can have X on it?!
|
|
</para>
|
|
|
|
<para>
|
|
Anyway, if you feel like trying bleeding edge solutions, there is a tip at the
|
|
<ulink url="http://lists.parisc-linux.org/pipermail/parisc-linux/1999-December/008117.html">&PL; mailing list archive</ulink>.
|
|
This explains how to change the console from an <emphasis>HP/UX
|
|
<link linkend="glossisl">ISL</link></emphasis> prompt. Since you actually
|
|
<emphasis>need</emphasis> HP/UX to be able to do the serial trick,
|
|
you can find a small HP/UX <emphasis>lifimage</emphasis> here:
|
|
<ulink url="http://www.pateam.org/archive/uxbootlf">http://www.pateam.org/archive/uxbootlf</ulink>.
|
|
(See further <xref linkend="bootnetwork" /> to learn how to
|
|
<emphasis>netboot</emphasis> a lifimage).
|
|
In fact, serial console on 712 is especially useful if you want to boot the box
|
|
without having a keyboard attached to it, which is otherwise not possible.
|
|
</para>
|
|
|
|
<warning><para>
|
|
The following takedown is highly unofficial, unsupported and in a general
|
|
way a <emphasis>bad idea</emphasis>, as you can make your 712 unbootable,
|
|
needing intervention from a HP-techie, if something goes wrong. Beware!
|
|
</para></warning>
|
|
|
|
<para>
|
|
Here is the procedure:
|
|
</para>
|
|
|
|
<orderedlist numeration="arabic">
|
|
<listitem>
|
|
<para>
|
|
Turn the box on and when in &BA;, boot into <application>HP/UX ISL</application>.
|
|
For example:
|
|
</para>
|
|
|
|
<programlisting><computeroutput>
|
|
BOOT_ADMIN> boot lan isl
|
|
</computeroutput></programlisting>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Once you get the '<computeroutput>ISL></computeroutput>' prompt,
|
|
type the following:
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>Switching to serial: <command>conspath 2/0/4.0x283</command></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Switching to graphic: <command>conspath 1/0/0.0</command></para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Still at the '<computeroutput>ISL></computeroutput>' prompt,
|
|
type <command>disp</command>, and check that console path is either
|
|
'<computeroutput>(hex) 2/0/4.283.0.0.0.0.0</computeroutput>'
|
|
for serial, or '<computeroutput>(hex) 1/0/0.0.0.0.0.0.0</computeroutput>'
|
|
for graphic.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Power cycle the system to bring it up on the new console.</para>
|
|
</listitem>
|
|
</orderedlist>
|
|
|
|
</sect4>
|
|
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="changingtographic">
|
|
<title>Changing to graphic console mode</title>
|
|
|
|
<para>
|
|
This is the reverse of the previous operation.
|
|
By checking your console path, you should see
|
|
'<computeroutput>Console path = rs232_a.9600.8.none</computeroutput>'.
|
|
Now, you can switch to the graphic mode by issuing the following command at
|
|
'<computeroutput>BOOT_ADMIN></computeroutput>' prompt:
|
|
</para>
|
|
|
|
<para>
|
|
<command>path console graphic_1</command>
|
|
</para>
|
|
|
|
<para>
|
|
The actual <emphasis>switch</emphasis> will happen after a
|
|
<command>reset</command>. If the monitor does not seem to
|
|
work properly, try to press the <keycap>Tab</keycap> key
|
|
(on the keyboard attached to the box of course)
|
|
at the beginning of the boot sequence to change the resolution of the display.
|
|
By pressing this key, the monitor resolution cycles from one to another.
|
|
</para>
|
|
|
|
<tip><para>Keep that in mind when changing monitors.</para></tip>
|
|
|
|
</sect3>
|
|
|
|
</sect2>
|
|
|
|
</sect1>
|
|
|
|
|
|
</chapter>
|
|
|
|
|
|
|
|
|
|
<chapter id="palo">
|
|
<title>&PO;, the &PL; kernel loader</title>
|
|
|
|
<sect1 id="whatispalo">
|
|
<title>What is &PO;?</title>
|
|
|
|
<highlights><para>
|
|
&PO; is a set of two programs, a boot loader,
|
|
which is loaded by the &PA; <emphasis>firmware</emphasis> into memory
|
|
and then executed, and a boot media management tool, which
|
|
prepares and updates bootable media such as hard disk drives.
|
|
</para></highlights>
|
|
|
|
<para>
|
|
The &PO; boot loader executable is stored in a file called
|
|
<filename>iplboot</filename>. '<literal>IPL</literal>' is HP
|
|
jargon for <emphasis>Initial Program Loader</emphasis>
|
|
(See <link linkend="glossipl">the glossary</link>).
|
|
|
|
The boot media management tool is called &PO;, which
|
|
stands for &PL; LOader, just as on x86 the boot media
|
|
management tool is called <application>LILO</application>.
|
|
</para>
|
|
|
|
<para>
|
|
Even though &PO; is much alike <application>LILO</application>
|
|
(both have a userland application and a boot loader executable),
|
|
it's worth mentioning that &PO; doesn't usually need to be called
|
|
every time you build and install a new kernel, as
|
|
<application>LILO</application> does<footnote id="ftn-compare-po-lilo">
|
|
<para>For the knowledge addict:
|
|
&PO; can actually access and read ext2/ext3 filesystem, and therefore follow symlinks,
|
|
whereas <application>LILO</application> bootloader will only know the physical
|
|
disk address to access the kernel. See
|
|
<ulink url="http://home.att.net/~lilo-boot/lbuild.htm">this</ulink>
|
|
for further details.</para></footnote>.
|
|
</para>
|
|
|
|
<note><para>
|
|
&PO; is strongly related to &PL; development. Thus, several versions have
|
|
been released. Some changes in the way <command>make palo</command> operates
|
|
are explained by the author of &PO;, <emphasis>Paul Bame</emphasis>, in this
|
|
<ulink url="http://lists.parisc-linux.org/hypermail/parisc-linux/9451.html">mail</ulink>.
|
|
</para></note>
|
|
|
|
</sect1>
|
|
|
|
|
|
|
|
<sect1 id="whatdoespalo">
|
|
<title>What does &PO;?</title>
|
|
|
|
<para>
|
|
The main idea is to boot a kernel, passing it all needed parameters.
|
|
This is what the <emphasis>boot loader</emphasis> part of &PO; does
|
|
(see <xref linkend="paloearlyboot" />).
|
|
Once it has been called by the <emphasis>firmware</emphasis>,
|
|
it will load the Linux Kernel in memory, passing to it the given
|
|
arguments, and tell the processor to branch to its entry point.
|
|
This will begin the execution of the kernel on the &PA; computer.
|
|
</para>
|
|
|
|
<para>
|
|
The &PO; management tool can transform the usual
|
|
<filename>vmlinux</filename> into a &PA; bootable
|
|
<emphasis>lifimage</emphasis>, including or not
|
|
<literal>RAMDISK</literal> or <literal>NFSROOT</literal> support.
|
|
However, it can also make a hard disk drive bootable, specifying
|
|
the console output and the root device.
|
|
We are going to see all these points precisely.
|
|
</para>
|
|
|
|
<important><para>
|
|
What must be kept in mind is that <filename>vmlinux</filename>
|
|
is the kernel alone, which is not bootable as is.
|
|
It needs &PO; to be turned into a bootable
|
|
<filename>lifimage</filename> for CD or network boot,
|
|
or to be loaded at boot time from a prepared hard
|
|
disk drive. Have a look at <xref linkend="gloss" /> about these words.
|
|
Quoting a well known &PL; hacker:
|
|
<blockquote>
|
|
<attribution>Richard Hirst</attribution>
|
|
<para><emphasis>
|
|
People often try to put a lifimage in /boot, or a vmlinux on the
|
|
network boot server.
|
|
</emphasis></para>
|
|
</blockquote>
|
|
|
|
Which is obviously wrong.
|
|
</para></important>
|
|
|
|
</sect1>
|
|
|
|
<sect1 id="paloappusage">
|
|
<title>&PO; management tool usage</title>
|
|
|
|
<para>
|
|
Here we will show what can be done with the &PO; boot media
|
|
management tool. For in-depth information about <command>palo</command>
|
|
usage, we strongly advise you to take a look at &PO;'s
|
|
<filename>README</filename> file, which can be found in
|
|
<filename class="directory">palo/</filename> directory on
|
|
<ulink url="http://cvs.parisc-linux.org/">http://cvs.parisc-linux.org/</ulink>.
|
|
</para>
|
|
|
|
<para>
|
|
For the next two steps, you will need a compiler toolchain,
|
|
see <xref linkend="gcc" />.
|
|
</para>
|
|
|
|
<sect2 id="lifimagewithramdisk">
|
|
<title>Making a <filename>lifimage</filename> with <literal>RAMDISK</literal></title>
|
|
|
|
<para>
|
|
First things first: when should you walk this way?
|
|
</para>
|
|
|
|
<para>
|
|
At an earlier stage of the &PL; project, the <filename>lifimage</filename>
|
|
was very useful. In fact, simply putting this file in a boot server
|
|
tree allows you to boot your PA box using the <command>boot lan</command>
|
|
instruction without any further involvement
|
|
(see <xref linkend="bootnetwork" />).
|
|
|
|
The main advantage of a <literal>RAMDISK</literal> is that it unpacks
|
|
its own file system in RAM, and therefore is completely independent
|
|
of the machine I/O capabilities (hard drives, etc). The main drawback
|
|
is that you have to build your own <literal>RAMDISK</literal> if
|
|
you have memory constraints or need some customized files. Now, let's see
|
|
how to obtain a <filename>lifimage</filename> with <literal>RAMDISK</literal>.
|
|
</para>
|
|
|
|
<para>
|
|
We assume you got the latest source of the &PL; kernel tree
|
|
(to which we'll refer below as the
|
|
"<filename class="directory">linux/</filename> directory"),
|
|
and that you are somewhat familiar with kernel configuration. Check
|
|
<xref linkend="kernelconf" /> for &PA; specific options.
|
|
|
|
Mainly, you will need a (cross-)compiler, the
|
|
<filename class="directory">linux/</filename> directory and the &PO;
|
|
package installed. If you do not have it, run as
|
|
<emphasis>root</emphasis> <command>apt-get install palo</command>.
|
|
Everything can also be found at
|
|
<ulink url="http://www.parisc-linux.org/">http://www.parisc-linux.org/</ulink>.
|
|
|
|
Go through the kernel configuration step.
|
|
Then, run <command>make palo</command> and if &PO; is installed,
|
|
the following message should appear at the end of the compilation:
|
|
|
|
<programlisting>
|
|
A generic palo config file (./palo.conf) has been created for you.
|
|
You should check it and re-run "make palo".
|
|
WARNING: the "lifimage" file is now placed in this directory by default!
|
|
</programlisting>
|
|
|
|
So, edit the <filename>palo.conf</filename> file:
|
|
<programlisting>
|
|
# This a generic Palo configuration file. For more information about how
|
|
# it works try 'palo -?'.
|
|
#
|
|
# Most people using 'make palo' want a bootable file, usable for
|
|
# network or tape booting for example.
|
|
--init-tape=lifimage
|
|
--recoverykernel=vmlinux
|
|
|
|
########## Pick your ROOT here! ##########
|
|
# You need at least one 'root='!
|
|
#
|
|
# If you want a root ramdisk, use the next 2 lines
|
|
# (Edit the ramdisk image name!!!!)
|
|
--ramdisk=ram-disk-image-file
|
|
--commandline=0/vmlinux HOME=/ root=/dev/ram initrd=0/ramdisk
|
|
|
|
# If you want NFS root, use the following command line (Edit the HOSTNAME!!!)
|
|
#--commandline=0/vmlinux HOME=/ root=/dev/nfs nfsroot=HOSTNAME ip=bootp
|
|
|
|
# If you have root on a disk partition, use this (Edit the partition name!!!)
|
|
#--commandline=0/vmlinux HOME=/ root=/dev/sda1
|
|
</programlisting>
|
|
|
|
As you can see, the <literal>RAMDISK</literal> mode is the default. The string
|
|
<replaceable>ram-disk-image-file</replaceable> should give to &PO; the path
|
|
of your <literal>RAMDISK</literal> file.
|
|
You shouldn't change anything else to this file.
|
|
After editing <filename>palo.conf</filename>, you can run
|
|
<command>make palo</command> again. The result, a <filename>lifimage</filename>
|
|
file, is waiting for you in the <filename>linux/</filename> directory.
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="lifimagewithnfsroot">
|
|
<title>Making a <filename>lifimage</filename> with <literal>NFSROOT</literal></title>
|
|
|
|
<para>
|
|
This method is widely used because the kernel and the file system
|
|
are directly accessible on your boot server.
|
|
It is also very easy to test a new kernel.
|
|
You just have to generate the kernel and put it in the correct directory.
|
|
When starting up, the PA box will boot the new kernel by typing <command>boot lan</command>
|
|
in &BA;.
|
|
Finally, it is the only way to go for systems which I/O devices are not supported
|
|
(such as E class, by the writing of this document).
|
|
</para>
|
|
|
|
<para>
|
|
Enabling <literal>NFSROOT</literal> support is easier than
|
|
<literal>RAMDISK</literal>. You have to edit <filename>palo.conf</filename>
|
|
to specify the boot server IP address instead of the string
|
|
<replaceable>HOSTNAME</replaceable>.
|
|
For instance, if your server has 10.10.10.2 as its IP address,
|
|
then the <filename>palo.conf</filename> file should contain:
|
|
|
|
<programlisting>
|
|
# This a generic Palo configuration file. For more information about how
|
|
# it works try 'palo -?'.
|
|
#
|
|
# Most people using 'make palo' want a bootable file, usable for
|
|
# network or tape booting for example.
|
|
--init-tape=lifimage
|
|
--recoverykernel=vmlinux
|
|
|
|
########## Pick your ROOT here! ##########
|
|
# You need at least one 'root='!
|
|
#
|
|
# If you want a root ramdisk, use the next 2 lines
|
|
# (Edit the ramdisk image name!!!!)
|
|
#--ramdisk=ram-disk-image-file
|
|
#--commandline=0/vmlinux HOME=/ root=/dev/ram initrd=0/ramdisk
|
|
|
|
# If you want NFS root, use the following command line (Edit the HOSTNAME!!!)
|
|
--commandline=0/vmlinux HOME=/ root=/dev/nfs nfsroot=10.10.10.2 ip=bootp
|
|
|
|
# If you have root on a disk partition, use this (Edit the partition name!!!)
|
|
#--commandline=0/vmlinux HOME=/ root=/dev/sda1
|
|
</programlisting>
|
|
|
|
If you have another IP, this field must be filled in with the correct data.
|
|
You shouldn't change anything else to this file.
|
|
After having properly configured <filename>palo.conf</filename>,
|
|
you can go into the <filename class="directory">linux/</filename>
|
|
directory and issue a <command>make palo</command>.
|
|
The result, a <filename>lifimage</filename> file, is as usual waiting for
|
|
you in the <filename class="directory">linux/</filename> directory.
|
|
</para>
|
|
|
|
<para>
|
|
For advanced details on <literal>NFSROOT</literal> management, take a look
|
|
at <xref linkend="biblio" /> for the appropriate HOWTOs.
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="bootablepartition">
|
|
<title>Making a bootable partition</title>
|
|
|
|
<highlights><para>
|
|
In this part, &PO; can be seen as a <application>LILO</application> clone.
|
|
<command>palo</command> is mainly a program that enables a PA box to boot
|
|
a kernel present on its hard disk drive.
|
|
This section is going to explain how to make it work.
|
|
</para></highlights>
|
|
|
|
<para>
|
|
After installing the &PO; package, a copy of the default
|
|
<filename>palo.conf</filename> can be found at
|
|
<filename>/usr/share/doc/palo/palo.conf</filename>. We will explain here
|
|
how to customize it to fit your needs.
|
|
</para>
|
|
|
|
<para>
|
|
To setup a bootable hard disk, you have to partition it properly
|
|
(that is, if you want to use it as your primary boot device).
|
|
This implies that this step can only be achieved either if you have already
|
|
booted a minimal system on your &PA; box (from CD or network,
|
|
see <xref linkend="bootsolutions" />), or if you intend to prepare your hard
|
|
disk using another computer than the target one (which can be useful to unpack
|
|
and setup a downloaded file system for a slow box, for example).
|
|
The point of this HOWTO is not to teach you how to use <command>fdisk</command>
|
|
and friends, so here are the few things you HAVE TO know:
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
A partition entirely contained within the first 2GB of your target device has
|
|
to be of partition type '<computeroutput>f0</computeroutput>',
|
|
which is the reserved partition type for &PO; boot loader.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
There are two ways to use &PO;: the old scheme (available on all versions),
|
|
in which that partition will only store configuration and recovery kernel;
|
|
and the new scheme (available since &PO; 1.5), in which that partition will
|
|
be formatted as ext2 or ext3 and mounted in <filename class="directory">/boot</filename>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
In the first case, the partition does not need to be huge. This is were &PO;
|
|
will save its configuration, recovery kernel(s) - about 5MB each - and optional
|
|
recovery ramdisk, so 32MB seem far sufficient.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Alternatively, in the second case, since you will use it as
|
|
<filename class="directory">/boot</filename>, you should size it decently.
|
|
100MB is a good cut.
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<warning><para>
|
|
Beware! The <filename>vmlinux</filename> file that will be actually booted
|
|
has also to be located within the first 2GB of the hard disk.
|
|
We strongly recommend to either (in the <emphasis>old</emphasis> scheme) create
|
|
a separate <filename class="directory">/boot</filename> partition at the beginning
|
|
of the disk (unless you plan to boot recovery kernels every time), or use the
|
|
<emphasis>new</emphasis> scheme and mount the &PO; partition as
|
|
<filename class="directory">/boot</filename>, because if ever your vmlinux binary
|
|
gets physically stored past the first 2GB of the disk
|
|
(like when filling up '/' with data), the box won't boot anymore.
|
|
</para></warning>
|
|
|
|
<para>
|
|
In fact, this third usage of &PO; is the most common as the default
|
|
<filename>/etc/palo.conf</filename> makes it easy to configure.
|
|
</para>
|
|
|
|
<sect3 id="palooldscheme">
|
|
<title>The old scheme: hidden partition</title>
|
|
|
|
<highlights><para>
|
|
The hidden partition is deprecated. Don't use this for a new setup. Use the
|
|
new scheme instead (see <xref linkend="palonewscheme" />).
|
|
The hidden partition method is documented for the sake of posterity.
|
|
</para></highlights>
|
|
|
|
<para>
|
|
Here is the output of <command>fdisk</command> which represents
|
|
the hard drive of a box with 16MB &PO; space, 128MB swap space
|
|
and about 1GB '<literal>/</literal>' partition:
|
|
</para>
|
|
|
|
<programlisting><computeroutput>
|
|
bash# fdisk -l /dev/sda
|
|
|
|
Disk /dev/sda: 133 heads, 62 sectors, 1017 cylinders
|
|
Units = cylinders of 8246 * 512 bytes
|
|
|
|
Device Boot Start End Blocks Id System
|
|
/dev/sda1 * 1 4 16461 f0 Linux/&PA; boot
|
|
/dev/sda2 5 34 123690 82 Linux swap
|
|
/dev/sda3 35 277 1001889 83 Linux
|
|
</computeroutput></programlisting>
|
|
|
|
<para>
|
|
Now let's deal with &PO; configuration.
|
|
Here are the various parameters you can change:
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><parameter>recoverykernel</parameter> is (as the name suggests)
|
|
the path to the kernel you want to boot within a failsafe session,
|
|
it will be stored in the '<literal>f0</literal>-type' partition.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><parameter>bootloader</parameter> is the path
|
|
to the <filename>iplboot</filename> boot loader utility which is
|
|
created by &PO; when you issue a <command>make iplboot</command>.</para>
|
|
<note><para>Usually you don't want to change or even specify this.</para></note>
|
|
</listitem>
|
|
<listitem>
|
|
<para><parameter>init-partitioned</parameter> is used
|
|
to indicate the pre-partionned device where palo will write its
|
|
boot parameters. The effect is immediate. It means that &PO; is
|
|
going to write on (and erase the content of) the '<literal>f0</literal>'
|
|
partition of this device, which has to exist.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><parameter>commandline</parameter>:
|
|
the first digit is the number of your ext2/ext3 partition where the
|
|
kernel file is located, as reported by <command>fdisk</command>.
|
|
Logically, the next string is the absolute path to the kernel
|
|
<emphasis>from the root of THIS partition</emphasis>
|
|
<footnote id="kpath"><para>Example: /boot is mounted from a separate partition,
|
|
which number is, say, 4 according to <command>fdisk</command>.
|
|
From a &L; point of view, the absolute path of the file is
|
|
<filename>/boot/vmlinux</filename>, but from a <emphasis>partition</emphasis>
|
|
point of view, it is <filename>/vmlinux</filename>. Therefore,
|
|
the commandline will start with "<literal>4/vmlinux</literal>".
|
|
We hope that's clear enough!</para></footnote>.
|
|
The following space separated parameters (do NOT use any quotation
|
|
mark!) will be passed to the kernel as its arguments. <emphasis>e.g.</emphasis>:
|
|
<literal>HOME=</literal> and <literal>TERM=</literal> are
|
|
environmental parameters passed to <command>init</command>
|
|
when booting. They are not compulsory but they can be useful.
|
|
<literal>root=</literal> tells the kernel which partition it
|
|
must mount as the root file system while booting. It can be
|
|
tricky when you have more than one disk, and is a mandatory
|
|
argument. Maximum length for the commandline is 127 characters.
|
|
</para>
|
|
|
|
<para>
|
|
You can also add <literal>console=</literal>,
|
|
to force the designation of the output console.
|
|
You should remember that <literal>console=ttyS0</literal> is for
|
|
a serial console and <literal>console=tty0</literal> is for a
|
|
STI (graphic) console. Support for the <acronym>MUX</acronym>
|
|
console (if enabled in the kernel, see <xref linkend="kernelconf" />)
|
|
has been added, using <literal>console=ttyB0</literal>.
|
|
Recent versions of &PO; auto detect the right console path
|
|
(except for <acronym>MUX</acronym>), and can figure out whether
|
|
a 32bit or 64bit kernel should be used. If not, please mail
|
|
to the mailing list. Last but not least, if you are using
|
|
&D; 2.6 kernels, you will also need to add
|
|
<literal>initrd=X/path/to/initrd</literal>, following the same
|
|
rules as for the kernel path<footnoteref linkend="kpath" />, see above.
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>
|
|
According the above <command>fdisk</command> example, we want to use
|
|
<filename class="devicefile">/dev/sda3</filename> as our root partition. Thus,
|
|
the configuration file should look like that:
|
|
|
|
<programlisting>
|
|
# The following arguments are set up for booting from /dev/sda, specifically
|
|
# mounting partition 3 as root, and using /boot/vmlinux as both the
|
|
# recovery kernel, and the default dynamically-booted kernel.
|
|
--recoverykernel=/boot/vmlinux
|
|
--init-partitioned=/dev/sda
|
|
--commandline=3/boot/vmlinux root=/dev/sda3
|
|
</programlisting>
|
|
|
|
</para>
|
|
</sect3>
|
|
|
|
<sect3 id="palonewscheme">
|
|
<title>The new scheme: mounted partition</title>
|
|
|
|
<highlights><para>
|
|
Following is a practical example using the new way of doing things, by using a
|
|
formatted &PO; partition. That scheme should be the preferred one for new installations.
|
|
</para></highlights>
|
|
|
|
<para>
|
|
Looking at the previous example (<xref linkend="palooldscheme" />), very little things
|
|
need to be changed. Essentially, if you had the need for a separate <filename
|
|
class="directory">/boot</filename> partition, it will be gone in the scheme detailed
|
|
below. The configuration for &PO; will be a little bit different as well, but that's
|
|
about it.
|
|
</para>
|
|
|
|
<para>
|
|
Here is the output of <command>fdisk</command> which represents
|
|
the hard drive of a box with 100MB &PO; space (which will be mounted as <filename
|
|
class="directory">/boot</filename>), 128MB swap space
|
|
and about 1GB '<literal>/</literal>' partition (bear in mind that the
|
|
<literal>f0</literal> partition must still be wholy contained within the first 2GB
|
|
of the disk):
|
|
</para>
|
|
|
|
<programlisting><computeroutput>
|
|
bash# fdisk -l /dev/sda
|
|
|
|
Disk /dev/sda: 133 heads, 62 sectors, 1017 cylinders
|
|
Units = cylinders of 8246 * 512 bytes
|
|
|
|
Device Boot Start End Blocks Id System
|
|
/dev/sda1 * 1 26 100461 f0 Linux/&PA; boot
|
|
/dev/sda2 27 36 123690 82 Linux swap
|
|
/dev/sda3 37 277 917889 83 Linux
|
|
</computeroutput></programlisting>
|
|
|
|
<para>
|
|
Now let's deal with &PO; configuration. Contrary to the previous example, there
|
|
are far less options to put in the configuration file, and the setup is a single step
|
|
operation: the <emphasis>initialization</emphasis> step, which needs only to be done
|
|
once.
|
|
</para>
|
|
|
|
<para>
|
|
To initialize for the first time the &PO; partition as something the Linux system
|
|
can understand (<literal>ext2</literal> or <literal>ext3</literal> filesystem), you need
|
|
to run the following command (as <literal>root</literal>):
|
|
</para>
|
|
|
|
<programlisting>
|
|
&prompt; <command>palo</command> <userinput>--format-as=<replaceable>N</replaceable> --init-partitioned=<replaceable>target_disk</replaceable></userinput>
|
|
</programlisting>
|
|
|
|
<para>
|
|
Where <replaceable>N</replaceable> is either <literal>2</literal> for <literal>ext2</literal>
|
|
or <literal>3</literal> for <literal>ext3</literal>, and <replaceable>target_disk</replaceable>
|
|
is the device which contains the &PO; partition, <filename class="devicefile">/dev/sda</filename>
|
|
in the current example. Continuing with this example, assuming we want an <literal>ext3</literal>
|
|
partition we would use:
|
|
</para>
|
|
|
|
<programlisting>
|
|
&prompt; <command>palo</command> <userinput>--format-as=3 --init-partitioned=/dev/sda</userinput>
|
|
</programlisting>
|
|
|
|
<warning><para>
|
|
Do <emphasis>NOT</emphasis> use <command>mkfs</command> or <command>mke2fs</command>
|
|
to generate the filesystem on this partition. &PO; marks blocks as used where the boot loader
|
|
portion of &PO; is stored on disk. These tools don't know about &PO; boot loader!
|
|
</para></warning>
|
|
|
|
<note><para>
|
|
This needs to be run only once for it will erase any existing data on the
|
|
<literal>f0</literal> partition.
|
|
</para></note>
|
|
|
|
<para>
|
|
Finally, we need to tell &PO; about the partition, how we want it to be used, and
|
|
how we don't want it to be erased everytime &PO; is being run. Thus, keeping in sync
|
|
with our current example,
|
|
the configuration file should look like that:
|
|
|
|
<programlisting>
|
|
# The following arguments are set up for booting from /dev/sda, specifically
|
|
# mounting partition 3 as root and booting the vmlinux file in /dev/sda1, palo
|
|
# partition formatted as ext3.
|
|
--update-partitioned=/dev/sda --format-as=3
|
|
--commandline=1/vmlinux root=/dev/sda3
|
|
</programlisting>
|
|
|
|
</para>
|
|
|
|
<para>
|
|
As one can see, since we will be storing our kernels directly on the <literal>f0</literal>
|
|
partition, we tell &PO; to load them from it (hence the <literal>1</literal> in the
|
|
<literal>commandline</literal> argument.
|
|
</para>
|
|
|
|
<note><para>
|
|
In the previous section (<xref linkend="palooldscheme" />) we dealt with the
|
|
<parameter>init-partitioned</parameter> parameter. Here, we use
|
|
<parameter>update-partitioned</parameter> instead, which, contrary to the former,
|
|
tells &PO; to not erase the content of the partition when run<footnote><para>The
|
|
<parameter>format-as</parameter> switch is a bit misleading. When used with
|
|
<parameter>init-partitioned</parameter> it is meant to tell which filesystem to format
|
|
the new partition, but with <parameter>update-partitioned</parameter>, it is meant to
|
|
tell &PO; which filesystem is used on the already formatted partition.</para></footnote>.
|
|
</para></note>
|
|
|
|
</sect3>
|
|
|
|
</sect2>
|
|
|
|
</sect1>
|
|
|
|
|
|
<sect1 id="paloearlyboot">
|
|
<title>How to use &PO; at early boot stage?</title>
|
|
|
|
<sect2 id="palotheory">
|
|
<title>The theory</title>
|
|
|
|
<para>
|
|
You have setup everything, rebooted your box, and suddenly you
|
|
want to change something to the kernel boot arguments,
|
|
or even boot another kernel. Damn it! How could you,
|
|
now that the box is booting? Well, stay calm and relax,
|
|
have a deep breath, we have the solution!
|
|
Unfortunately, by the time you'll learn about it, your box
|
|
will have finished booting ;o)
|
|
</para>
|
|
|
|
<para>
|
|
First, you must learn how to interact with &PO; during the startup sequence.
|
|
You have to enter &BA;, as explained in <xref linkend="enterbootadmin" />.
|
|
For some old models (up to 712 or so), you must add the
|
|
<parameter>ipl</parameter> (or <parameter>isl</parameter>) string to
|
|
your boot command in the &BA; console:
|
|
<programlisting><computeroutput>BOOT_ADMIN> </computeroutput>boot pri ipl</programlisting>
|
|
On most &PA; boxes, the system will ask you if you want to interact
|
|
with <emphasis>IPL</emphasis> anyway. You just have to answer
|
|
"<keycap>y</keycap>" and hit <keycap>Enter</keycap>.
|
|
You will then end up to &PO; configuration display, with the list
|
|
of all parameters and their corresponding numbers.
|
|
</para>
|
|
|
|
<para>
|
|
You just have to enter the number corresponding to the
|
|
parameter you want to change.
|
|
Hit <keycap>Enter</keycap>, modify it and validate the
|
|
changes by hitting <keycap>Enter</keycap> again.
|
|
The system will redisplay the new list.
|
|
This modification is not permanent<footnote><para>
|
|
To save your changes, you will have to run <command>/sbin/palo</command>
|
|
when your system will be up and running,
|
|
and it will write on the disk all the parameters contained in
|
|
the configuration file, (<filename>/etc/palo.conf</filename>), which
|
|
you will have properly modified if needed.</para></footnote>!
|
|
If you want to add a supplementary parameter, select any one
|
|
and write yours on the editing line, beginning with a space:
|
|
<programlisting>
|
|
<#> edit the numbered field
|
|
'b' boot with this command line
|
|
'r' restore command line
|
|
'l' list dir
|
|
? 0
|
|
3/boot/vmlinux initrd=3/initrd.img
|
|
</programlisting>
|
|
|
|
After validation, the list will count one more parameter.
|
|
If you want to delete one, select it and erase the complete entry.
|
|
You will see that the list counts one less parameter.
|
|
</para>
|
|
|
|
<para>
|
|
For more informations about &PO;, please take look at the
|
|
<ulink url="http://cvs.parisc-linux.org/*checkout*/palo/README.html?rev=HEAD">&PO; README</ulink>.
|
|
You can find a copy of this file after having installed the <command>palo</command>
|
|
package in <filename>/usr/share/doc/palo/README.html</filename>.
|
|
This HOWTO section is mostly inspired from the above file, written by Paul Bame.
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="paloexample">
|
|
<title>A complete example</title>
|
|
|
|
<highlights><para>
|
|
This example has been suggested by Michael Damaschke. We will use notions
|
|
explained in <xref linkend="bootadmin" /> and <xref linkend="palotheory" />,
|
|
and refer to concept such as <emphasis>console</emphasis>, seen in
|
|
<xref linkend="consoles" />.
|
|
So, let's go for the story of the happy &PL; user booting a kernel,
|
|
also called "<emphasis>I don't know how to configure my workstation
|
|
to use the kernel I want during boot sequence!</emphasis>".
|
|
</para></highlights>
|
|
|
|
<para>
|
|
After switching your workstation on, a message on the
|
|
console will tell you that the workstation is about to start
|
|
automatically the boot sequence, except if you hold the
|
|
<keycap>Esc</keycap> key to stop the auto-booting process.
|
|
This is a very difficult step: you must hold the
|
|
<keycap>Esc</keycap> key down ;o)
|
|
</para>
|
|
|
|
<note><para>
|
|
Depending on your model, you might need to press this key
|
|
during a quite long time.
|
|
</para></note>
|
|
|
|
<tip><para>
|
|
In some cases when using graphic console, the monitor can be
|
|
too slow to trigger on, and won't allow you to see the
|
|
warning message. A good workaround is to keep a close eye on
|
|
the keyboard's lights: when they all blink at once, this is
|
|
the right time to press and hold the <keycap>Esc</keycap> key.
|
|
If you still have troubles, please refer to <xref linkend="consoles" />.
|
|
</para></tip>
|
|
|
|
<para>
|
|
There are a few different ways to get access to
|
|
&BA; (see <xref linkend="enterbootadmin" />).
|
|
If you have an old box, you will see an information message displayed,
|
|
where the workstation's firmware tells you that it will
|
|
start searching for all bootable devices,
|
|
or that you can break this by holding down the <keycap>Esc</keycap> key.
|
|
This is the same procedure as just mentioned, you must
|
|
press the <keycap>Esc</keycap> key.
|
|
</para>
|
|
|
|
<para>
|
|
As usual, on some machines you might then get a menu where you should press the
|
|
<keycap>a</keycap> key followed by <keycap>Enter</keycap>.
|
|
You are now facing the deadly '<computeroutput>BOOT_ADMIN></computeroutput>'
|
|
prompt :^). First, we will turn off <literal>auto boot</literal>
|
|
process by entering the following lines:
|
|
</para>
|
|
|
|
<programlisting><computeroutput>BOOT_ADMIN> </computeroutput>auto boot off</programlisting>
|
|
|
|
<para>
|
|
then hit <keycap>Enter</keycap> to validate. This will prevent the
|
|
box from further attempts at auto-booting. In other words, you won't
|
|
have to stop the boot process with <keycap>Esc</keycap>, it will stop
|
|
on its own on subsequent reboots and wait for your instructions.
|
|
</para>
|
|
|
|
<para>
|
|
Now, you must tell the system from which boot device you
|
|
would like to boot. If it's a hard drive, it must have a
|
|
'<literal>f0</literal>' partition at the beginning
|
|
(see <xref linkend="bootsolutions" />).
|
|
</para>
|
|
|
|
<para>
|
|
In this example, the old kernel is <filename>vmlinux</filename> and
|
|
the new one is <filename>vmlinux-2.4.17-pa3</filename>.
|
|
The chosen SCSI boot device is designed by:
|
|
<computeroutput>
|
|
SCSI.<replaceable>X</replaceable>.0,
|
|
</computeroutput>
|
|
where <replaceable>X</replaceable> is the SCSI-ID of the disk you
|
|
want to boot from<footnote><para>For those who wonder what the final
|
|
0 means, it's the device LUN. Since most SCSI devices have only
|
|
one LUN (especially disks), you can safely use 0 as in this
|
|
example.</para></footnote>. <emphasis>e.g.:</emphasis>
|
|
</para>
|
|
|
|
<programlisting><computeroutput>BOOT_ADMIN> </computeroutput>boot SCSI.5.0</programlisting>
|
|
|
|
<para>
|
|
At the end of the previous command line, you must add the
|
|
<parameter>IPL</parameter> token if you have a HP 9000/7xx
|
|
system to specify that you want to interact with
|
|
<application>IPL</application>. If you have a more
|
|
recent hardware, the system will ask if you want to
|
|
interact with <application>IPL</application> anyway:
|
|
</para>
|
|
|
|
<programlisting><computeroutput>Interact with IPL (Y or N)?></computeroutput></programlisting>
|
|
|
|
<para>
|
|
Say <keycap>Y</keycap> and hit <keycap>Enter</keycap>.
|
|
Now, you can manually configure the &PO; boot parameters.
|
|
A new menu is displayed, where you can configure on line
|
|
'<computeroutput>0</computeroutput>' (selected by default)
|
|
the boot partition number, and the path of your boot kernel.
|
|
</para>
|
|
|
|
<para>
|
|
Here is the complete session log of a A500 serial console output,
|
|
taken from &PO; version 1.5. You can find in <xref linkend="oldpaloa500" />
|
|
a session log with an older version of palo, such as the one that
|
|
can be found on &D; 3.0 install disks.
|
|
</para>
|
|
|
|
<programlisting>
|
|
Main Menu: Enter command or menu > bo scsi.5.0
|
|
Interact with IPL (Y, N, or Cancel)?> y
|
|
|
|
Booting...
|
|
Boot IO Dependent Code (IODC) revision 1
|
|
|
|
|
|
HARD Booted.
|
|
palo ipl 1.5 root@c3k Fri May 14 16:17:38 MDT 2004
|
|
Skipping extended partition 6 - beyond reach of IPL
|
|
|
|
Partition Start(MB) End(MB) Id Type
|
|
1 1 31 f0 Palo
|
|
2 32 153 83 ext2
|
|
3 154 1107 82 swap
|
|
5 1108 5875 83 ext2
|
|
|
|
PALO(F0) partition contains:
|
|
0/vmlinux64 5279419 bytes @ 0x44000
|
|
|
|
Information: No console specified on kernel command line. This is normal.
|
|
PALO will choose the console currently used by firmware (serial).
|
|
Current command line:
|
|
2/vmlinux root=/dev/sdb5 HOME=/ console=ttyS0 TERM=vt102
|
|
0: 2/vmlinux
|
|
1: root=/dev/sdb5
|
|
2: HOME=/
|
|
3: console=ttyS0
|
|
4: TERM=vt102
|
|
|
|
<#> edit the numbered field
|
|
'b' boot with this command line
|
|
'r' restore command line
|
|
'l' list dir
|
|
? 0
|
|
2/vmlinux-2.6-cvs initrd=2/initrd.img-cvs
|
|
Current command line:
|
|
2/vmlinux-2.6-cvs initrd=2/initrd.img-cvs root=/dev/sdb5 HOME=/ console=ttyS0 TERM=vt102
|
|
0: 2/vmlinux-2.6-cvs
|
|
1: initrd=2/initrd.img-cvs
|
|
2: root=/dev/sdb5
|
|
3: HOME=/
|
|
4: console=ttyS0
|
|
5: TERM=vt102
|
|
|
|
<#> edit the numbered field
|
|
'b' boot with this command line
|
|
'r' restore command line
|
|
'l' list dir
|
|
? 1
|
|
|
|
Current command line:
|
|
2/vmlinux-2.6-cvs root=/dev/sdb5 HOME=/ console=ttyS0 TERM=vt102
|
|
0: 2/vmlinux-2.6-cvs
|
|
1: root=/dev/sdb5
|
|
2: HOME=/
|
|
3: console=ttyS0
|
|
4: TERM=vt102
|
|
|
|
<#> edit the numbered field
|
|
'b' boot with this command line
|
|
'r' restore command line
|
|
'l' list dir
|
|
? b
|
|
</programlisting>
|
|
|
|
<para>
|
|
&PO; was first setup to boot the kernel file <filename>vmlinux</filename>
|
|
located on the second partition of the SCSI device ID 5 LUN 0.
|
|
(We know this since we have asked &BA; to boot on this device).
|
|
But we wanted another kernel this time.
|
|
We have pressed the <keycap>Enter</keycap> key (to validate the default
|
|
choice '<computeroutput>0</computeroutput>')
|
|
and modified the text to match our needs, here
|
|
<filename>vmlinux-2.6-cvs</filename>. We have also
|
|
added an <computeroutput>initrd=2/initrd.img-cvs</computeroutput> argument
|
|
to the command line. We have validated our changes
|
|
by hitting the <keycap>Enter</keycap> key.
|
|
Finally we have decided that we didn't want this
|
|
additional argument, so we have selected it and erased it.
|
|
At the end it asked again which field we wanted to edit, we
|
|
just typed '<computeroutput>b</computeroutput>' instead
|
|
of any number and hit <keycap>Enter</keycap> to boot our new kernel.
|
|
</para>
|
|
|
|
<caution><para>
|
|
Please don't change any other parameter unless you
|
|
really know what you are doing!
|
|
</para></caution>
|
|
|
|
<para>
|
|
That's it! &PO; has no more secrets for you :-)
|
|
</para>
|
|
|
|
<note><para>
|
|
As you might have noticed, the &BA; interface can take several
|
|
aspects, so don't be disappointed if yours does not
|
|
exactly match our examples.
|
|
</para></note>
|
|
|
|
</sect2>
|
|
|
|
</sect1>
|
|
|
|
</chapter>
|
|
|
|
|
|
|
|
|
|
<chapter id="bootsolutions">
|
|
<title>Available boot solutions</title>
|
|
|
|
<sect1 id="bootcd">
|
|
<title>Booting from CD</title>
|
|
|
|
<highlights><para>
|
|
Booting from CD is one of the easiest way to start and
|
|
install your &PA; machine; assuming you have a CD drive
|
|
handy and a bootable CD. You can download official &D;
|
|
ISOs as well as <emphasis>Net Install</emphasis> ISO
|
|
(see <xref linkend="glossnetinst" />) from the
|
|
<ulink url="http://www.debian.org/devel/debian-installer/">&D; Installer pages</ulink>,
|
|
or from the <ulink url="ftp://www.parisc-linux.org/cd-images/">&PA;/Linux official website</ulink>.
|
|
</para></highlights>
|
|
|
|
<orderedlist numeration="lowerroman">
|
|
<listitem>
|
|
<para>Start the box and enter the &BA; mode. (<xref linkend="enterbootadmin"/>)</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Place your bootable CD on the CD tray and close it.
|
|
Sounds obvious, but we know guys who missed that step :)
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
There are two options from there: either you know the
|
|
full <literal>PATH</literal> to your CD device,
|
|
then you can jump to next step, or you don't.
|
|
In this last case, issue a <command>search ipl</command>
|
|
to list all available bootable devices.
|
|
You can also specify
|
|
<command>search <replaceable>[PATH]</replaceable></command>,
|
|
which is fastest.
|
|
For instance if you want to search the SCSI bus:
|
|
</para>
|
|
|
|
<programlisting>search SCSI</programlisting>
|
|
|
|
<para>
|
|
On recent boxes, <command>search disk</command> is quite helpful.
|
|
Take a look at <command>help search</command> for details specific to your box.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Once you know the full <literal>PATH</literal> to your CD drive,
|
|
you can issue a <command>boot <replaceable><PATH></replaceable></command>.
|
|
That's all. If everything goes fine, it will start booting the CD present
|
|
in the CD reader. Real life example:
|
|
</para>
|
|
|
|
<programlisting>boot ide</programlisting>
|
|
</listitem>
|
|
</orderedlist>
|
|
|
|
</sect1>
|
|
|
|
|
|
<sect1 id="boothd">
|
|
<title>Booting from hard drive</title>
|
|
|
|
<highlights><para>
|
|
Booting from hard drive is not really more difficult that
|
|
booting from CD. The only thing really important is that
|
|
your hard drive has to be correctly prepared. Take a look
|
|
at <xref linkend="bootablepartition"/> to learn how to
|
|
prepare it.
|
|
</para></highlights>
|
|
|
|
<orderedlist numeration="lowerroman">
|
|
<listitem>
|
|
<para>
|
|
Start the box and enter the &BA; mode.
|
|
(<xref linkend="enterbootadmin"/>)
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
There are two options from there: either you know the
|
|
full <literal>PATH</literal> to your hard disk device,
|
|
then you can jump to next step, or you don't.
|
|
In this last case, issue a <command>search ipl</command>
|
|
to list all available bootable devices.
|
|
You can also specify
|
|
<command>search <replaceable>[PATH]</replaceable></command>.
|
|
For instance if you want to search the Single Ended SCSI bus:
|
|
</para>
|
|
|
|
<programlisting>search SESCSI</programlisting>
|
|
|
|
<para>
|
|
Take a look at <command>help search</command>
|
|
for details specific to your box.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Once you know the full <literal>PATH</literal> to your hard drive,
|
|
you can issue a <command>boot <replaceable><PATH></replaceable></command>.
|
|
That's all. If everything goes fine, it will start booting the kernel
|
|
as setup by &PO; (see <xref linkend="bootablepartition"/>).
|
|
Real life example:
|
|
</para>
|
|
|
|
<programlisting>boot scsi.6</programlisting>
|
|
</listitem>
|
|
</orderedlist>
|
|
|
|
</sect1>
|
|
|
|
|
|
<sect1 id="bootnetwork">
|
|
<title>Booting from network</title>
|
|
|
|
<highlights><para>
|
|
Booting from the network is only required in certain cases. Booting from the network is very
|
|
usefull when you have unsupported I/O devices, diskless systems, or systems with broken hardware.
|
|
Network booting is detailed below.
|
|
</para></highlights>
|
|
|
|
<sect2 id="preparingnetboot">
|
|
<title>Preparing to boot from network</title>
|
|
|
|
<highlights><para>
|
|
Booting from the network involves two machines: the <emphasis>boot server</emphasis>
|
|
and the <emphasis>boot client</emphasis>, the latter being the &PA; system you are
|
|
trying to start up, and the former, the machine that will serve over the network
|
|
the files which the client needs.
|
|
The rest of this section will extensively deal with setting up the <emphasis>boot
|
|
server</emphasis> since this is probably the trickiest part.
|
|
</para></highlights>
|
|
|
|
<important><para>
|
|
You will need a <emphasis>lifimage</emphasis> to perform a network boot.
|
|
See <xref linkend="whatdoespalo"/> to learn how to create one.
|
|
You can also use the one from
|
|
<ulink url="http://ftp.debian.org/debian/dists/sarge/main/installer-hppa/current/images/netboot/2.6/boot.img">
|
|
&D; Installer</ulink>.
|
|
</para></important>
|
|
|
|
<note><para>
|
|
Needless to say, all server-side setup is meant to be performed by the
|
|
<emphasis>super-user</emphasis>, also known as <literal>root</literal>.
|
|
</para></note>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="rbootorbootp">
|
|
<title>rboot or bootp?</title>
|
|
|
|
<highlights><para>
|
|
All 'recent' machines can boot using
|
|
<literal>BOOTP</literal>, starting from 715/100,
|
|
715/120, and 712s. Older ones, mostly early 715s,
|
|
710s and 725s need <literal>RBOOT</literal>.
|
|
</para></highlights>
|
|
|
|
<note><para>
|
|
To use <literal>BOOTP</literal> you have to enable
|
|
the
|
|
<menuchoice>
|
|
<guimenu>IP: Kernel level autoconfiguration</guimenu>
|
|
<guimenuitem>IP: BOOTP support</guimenuitem>
|
|
</menuchoice>
|
|
within the '<literal>Networking options</literal>'
|
|
section of the kernel configuration, if you want to use a
|
|
<emphasis>home-made</emphasis> kernel. See <xref linkend="vmlinux" />
|
|
for details.
|
|
</para></note>
|
|
|
|
<para>
|
|
Please note that though <xref linkend="usingrbootd" /> deals with
|
|
<literal>RBOOT</literal> only, two different implementations of the
|
|
<literal>BOOTP</literal> protocol are detailed in <xref linkend="usingdhcp" />
|
|
and <xref linkend="usingbootp" />. We detail these two <emphasis>because
|
|
we can</emphasis>, but if you need to use the <literal>BOOTP</literal>
|
|
protocol, you will have to choose one.
|
|
</para>
|
|
|
|
<tip><para>
|
|
If you don't know which <literal>BOOTP</literal> implementation to use,
|
|
go for the <command>dhcp</command> one, it is much easier to deal with.
|
|
</para></tip>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="usingrbootd">
|
|
<title>Using rboot</title>
|
|
|
|
<sect3>
|
|
<title>Obtaining rbootd</title>
|
|
|
|
<para>
|
|
If you have an old machine that requires <command>rboot</command>
|
|
to boot over network, use the following procedure to set up and
|
|
configure a boot server, and boot using the &PA;/Linux kernel.
|
|
</para>
|
|
|
|
<para>
|
|
Old machines, including the Scorpio 715s, use the
|
|
<literal>RBOOT</literal> protocol. You need <command>rbootd</command>
|
|
to handle their boot requests. Look for it in your favorite distribution
|
|
archive (assuming you will be servicing boot requests from a Linux box).
|
|
Here are two ways of getting the <command>rboot</command> daemon:
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
If you are using a &D;-powered server (which you really should be doing ;o),
|
|
you're almost done. Run from a command shell:
|
|
</para>
|
|
|
|
<programlisting>
|
|
&prompt; <command>apt-get</command> <userinput>install rbootd</userinput>
|
|
</programlisting>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
If you can't find any <command>rbootd</command> package for your system
|
|
(which is very possible since it is a very old netboot protocol), you can find
|
|
its source in the &D; archive:
|
|
<ulink url="http://packages.debian.org/stable/net/rbootd.html">rbootd</ulink>.
|
|
You will have to build it from source.
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
</sect3>
|
|
|
|
<sect3 id="rbootd">
|
|
<title>Configuring rbootd</title>
|
|
|
|
<para>
|
|
As we already said, to boot a <literal>RBOOT</literal>-aware system, you need
|
|
a separate machine with <command>rbootd</command>
|
|
installed (this is the 'boot server') on which you will store the
|
|
&PA;/Linux kernel <emphasis>lifimage</emphasis> that you want to use to boot
|
|
your &PA; system with.
|
|
</para>
|
|
|
|
<para>
|
|
Once the <command>rbootd</command> server software is installed,
|
|
read the following to configure it to work with your &PA; system:
|
|
</para>
|
|
|
|
<para>
|
|
In <filename>/etc/rbootd.conf</filename> you will have to add a line like:
|
|
</para>
|
|
|
|
<programlisting>ethernet_addr bootfile</programlisting>
|
|
|
|
<orderedlist numeration="arabic">
|
|
<listitem>
|
|
<para>
|
|
Replace <replaceable>bootfile</replaceable> with the name of your
|
|
&PA;/Linux kernel image, usually '<filename>lifimage</filename>'.
|
|
</para>
|
|
</listitem>
|
|
<listitem id="getmac">
|
|
<para>
|
|
Now get the Ethernet address of your &PA; system by typing
|
|
<command>lanaddress</command> at the
|
|
'<computeroutput>BOOT_ADMIN></computeroutput>' prompt
|
|
(see <xref linkend="bootadminfo" />).
|
|
</para>
|
|
<para>
|
|
It will return a number like
|
|
<computeroutput>080009-7004b6</computeroutput>. Take note of this number.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
In <filename>/etc/rbootd.conf</filename> on your boot server, the
|
|
Ethernet address has to be colon-delimited. That means you will have to modify
|
|
the number you just obtained so that every set of two characters (after removing the
|
|
'-') is separated by a colon. For example:
|
|
<computeroutput>080009-7004b6</computeroutput> becomes
|
|
<computeroutput>08:00:09:70:04:b6</computeroutput>.
|
|
Add the colon delimited Ethernet address to
|
|
<filename>/etc/rbootd.conf</filename> on your boot server. The
|
|
resulting file will look something like this:
|
|
</para>
|
|
|
|
<programlisting>
|
|
# ethernet addr boot file comments
|
|
|
|
08:00:09:87:e4:8f lifimage_715 # PA/Linux kernel for 715/33
|
|
08:00:09:70:04:b6 lifimage_720 # PA/Linux kernel for 720
|
|
</programlisting>
|
|
|
|
<para>
|
|
This <filename>rbootd.conf</filename> example contains the Ethernet
|
|
addresses and boot file names for two different machines.
|
|
</para>
|
|
|
|
<para>
|
|
Once you have changed the configuration file, restart
|
|
<command>rbootd</command>.
|
|
</para>
|
|
</listitem>
|
|
</orderedlist>
|
|
|
|
<para>
|
|
By default, <command>rbootd</command> assumes that bootfiles are located
|
|
in <filename class="directory">/var/lib/rbootd/</filename>. Therefore,
|
|
you will have to put your bootable kernel image in that directory, or,
|
|
if you really hate that directory for some reason, you can rebuild
|
|
<command>rbootd</command> to use a different directory.
|
|
</para>
|
|
|
|
<para>
|
|
The easiest thing, of course, is just to drop your kernel images in
|
|
the default directory!
|
|
</para>
|
|
|
|
</sect3>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="usingdhcp">
|
|
<title>Using dhcp/tftp</title>
|
|
|
|
<para>
|
|
We will see here how to setup a <literal>DHCP</literal> server
|
|
to handle <literal>BOOTP</literal> requests (since &PA; box use
|
|
<literal>BOOTP</literal>, unless they need <literal>RBOOT</literal>,
|
|
as mentioned above).
|
|
</para>
|
|
|
|
<note><para>
|
|
&W; users might want to look at <xref linkend="win2kdhcp" />.
|
|
</para></note>
|
|
|
|
<sect3>
|
|
<title>Obtaining dhcp/tftp</title>
|
|
|
|
<para>
|
|
&D; users will just have to install the packages using the
|
|
following commands, executed as <literal>root</literal>:
|
|
</para>
|
|
|
|
<programlisting>
|
|
&prompt; <command>apt-get</command> <userinput>install dhcp tftpd</userinput>
|
|
</programlisting>
|
|
|
|
<para>
|
|
If you need rpm packages (for the ISC dhcp server), the best
|
|
way is to go to <ulink url="http://rpmfind.net/">http://rpmfind.net/</ulink>.
|
|
</para>
|
|
|
|
<note><para>
|
|
The dhcp package can do much more than a simple bootp daemon.
|
|
Nevertheless, it is also known to be much easier to configure.
|
|
If you really want to try regular <command>bootp</command>, skip
|
|
this and go to <xref linkend="usingbootp" />.
|
|
</para></note>
|
|
|
|
</sect3>
|
|
|
|
<sect3>
|
|
<title>Configuring dhcp/tftp</title>
|
|
|
|
<para>
|
|
Here are the instructions to set up <command>dhcp</command> on your
|
|
boot server. To keep this explanation simple, we will assume that
|
|
you want to assign a fixed IP to your box, without DNS update. Your
|
|
subnet will be <literal>192.168.1.0/24</literal>, with optional:
|
|
gateway at <literal>192.168.1.1</literal>, domain name
|
|
<literal>foo.com</literal> and DNS at <literal>192.168.1.4</literal>.
|
|
Feel free to replace these values with those which would suit your
|
|
needs in the next sections.
|
|
</para>
|
|
|
|
<note><para>
|
|
This section is dedicated to &D; users.
|
|
For others distributions, it should be similar though
|
|
there may be some differences like default directories.
|
|
</para></note>
|
|
|
|
<orderedlist numeration="arabic">
|
|
<listitem>
|
|
<para>
|
|
Edit <filename>/etc/inetd.conf</filename> on your boot
|
|
server to add the following line, if it doesn't already exist:
|
|
<programlisting>
|
|
tftp dgram udp wait nobody /usr/sbin/tcpd \
|
|
/usr/sbin/in.tftpd /tftpboot
|
|
</programlisting>
|
|
Here, <filename class="directory">/tftpboot/</filename>
|
|
is being used as tftpd server's root (this is where you will put the
|
|
<emphasis>lifimage</emphasis> file). You can choose another
|
|
directory if you want. According to <command>man tftpd</command>,
|
|
this is the usual default directory.
|
|
</para>
|
|
|
|
<para>
|
|
When this is done, reload <command>inetd</command> with:
|
|
<command>/etc/init.d/inetd reload</command>. Non-&D; users can also
|
|
issue a <command>killall -HUP inetd</command>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
According to <command>man 5 dhcpd.conf</command>, edit the
|
|
<filename>/etc/dhcpd.conf</filename> file to contain something like:
|
|
<programlisting>
|
|
allow bootp;
|
|
default-lease-time 600;
|
|
max-lease-time 7200;
|
|
# This will tell the box its hostname while booting:
|
|
use-host-decl-names on;
|
|
|
|
subnet <replaceable>192.168.1.0</replaceable> netmask 255.255.255.0 {
|
|
option routers <replaceable>192.168.1.1</replaceable>;
|
|
option domain-name "<replaceable>foo.com</replaceable>";
|
|
option domain-name-server <replaceable>192.168.1.4</replaceable>;
|
|
}
|
|
|
|
host <replaceable>[hostname]</replaceable> {
|
|
hardware ethernet <replaceable>[mac address]</replaceable>;
|
|
fixed-address <replaceable>[ip address]</replaceable>;
|
|
filename "<replaceable>[boot filename]</replaceable>";
|
|
option root-path "<replaceable>[root path]</replaceable>";
|
|
}
|
|
</programlisting>
|
|
You have to fill in the <replaceable>[hostname]</replaceable>,
|
|
<replaceable>[mac address]</replaceable>,
|
|
<replaceable>[ip address]</replaceable>,
|
|
<replaceable>[boot filename]</replaceable> and
|
|
<replaceable>[root path]</replaceable> fields with the
|
|
appropriate information, where:
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
<replaceable>[hostname]</replaceable>
|
|
is the name of the &PA; system.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<replaceable>[mac address]</replaceable>
|
|
is the colon-delimited ethernet address of the &PA; system, which
|
|
can be obtained by typing <command>lanaddress</command> at the
|
|
'<computeroutput>BOOT_ADMIN></computeroutput>' prompt
|
|
(see <xref linkend="bootadminfo" />).
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<replaceable>[ip address]</replaceable>
|
|
is the IP address you wish to assign to the &PA; system.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<replaceable>[boot filename]</replaceable>
|
|
is the name of the bootable kernel image you want to boot your system with.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<replaceable>[root path]</replaceable>
|
|
is the path to the NFS root filesystem exported by the server.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Additionally, if the tftp server you want to use is not the same as the one
|
|
running the dhcp server, you can add <computeroutput>next-server
|
|
<replaceable>[ip address]</replaceable>;</computeroutput>, replacing
|
|
<replaceable>[ip address]</replaceable> with the actual IP of the tftp
|
|
server, to the dhcp configuration.
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>
|
|
You'll end up with something like this for each box
|
|
you want to <emphasis>netboot</emphasis>:
|
|
<programlisting>
|
|
host tatooine {
|
|
hardware ethernet 00:40:05:18:0c:dd;
|
|
fixed-address 192.168.1.22;
|
|
filename "lifimage-tatooine";
|
|
option root-path "/exports/tatooineroot";
|
|
}
|
|
</programlisting>
|
|
</para>
|
|
</listitem>
|
|
</orderedlist>
|
|
</sect3>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="usingbootp">
|
|
<title>Using bootp/tftp</title>
|
|
|
|
<sect3>
|
|
<title>Obtaining bootp/tftp</title>
|
|
|
|
<para>
|
|
For &D; users, you just have to install the packages by typing
|
|
these commands as user <literal>root</literal>:
|
|
<programlisting>
|
|
&prompt; <command>apt-get</command> <userinput>install bootp tftpd</userinput>
|
|
</programlisting>
|
|
If you need rpm packages, the best way is to go to
|
|
<ulink url="http://rpmfind.net/">http://rpmfind.net/</ulink>.
|
|
</para>
|
|
|
|
<warning><para>
|
|
You'll have been warned! This daemon is far more obfuscated
|
|
in its configuration.
|
|
</para></warning>
|
|
|
|
</sect3>
|
|
|
|
<sect3>
|
|
<title>Configuring bootp/tftp</title>
|
|
|
|
<para>
|
|
Follow these instructions to use the <command>bootp</command>
|
|
daemon on your boot server:
|
|
</para>
|
|
|
|
<note><para>
|
|
This section is dedicated to &D; users.
|
|
For others distributions, it should be similar though
|
|
there may be some differences like default directories.
|
|
</para></note>
|
|
|
|
<orderedlist numeration="arabic">
|
|
<listitem>
|
|
<para>
|
|
Edit <filename>/etc/inetd.conf</filename> on your boot server
|
|
to add the following lines, if they don't already exist:
|
|
<programlisting>
|
|
tftp dgram udp wait nobody /usr/sbin/tcpd \
|
|
/usr/sbin/in.tftpd /tftpboot
|
|
bootps dgram udp wait root /usr/sbin/bootpd \
|
|
bootpd -i -t 120
|
|
</programlisting>
|
|
Here, <filename class="directory">/tftpboot/</filename> is being
|
|
used as tftpd server's root (this is where you will put the
|
|
<emphasis>lifimage</emphasis> file). You can choose another directory
|
|
if you want. According to <command>man tftpd</command>, this
|
|
is the usual default directory.
|
|
</para>
|
|
|
|
<para>
|
|
When this is done, reload <command>inetd</command> with:
|
|
<command>/etc/init.d/inetd reload</command>. Non-&D; users can also issue
|
|
a <command>killall -HUP inetd</command>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
According to <command>man 5 bootptab</command>, edit the
|
|
<filename>/etc/bootptab</filename> file to contain:
|
|
<programlisting>
|
|
<replaceable>[hostname]</replaceable>:hd=/tftpboot:\
|
|
:rp=<replaceable>[root path]</replaceable>:\
|
|
:ht=ethernet:\
|
|
:ha=<replaceable>[mac address]</replaceable>:\
|
|
:ip=<replaceable>[ip address]</replaceable>:\
|
|
:bf=<replaceable>[boot filename]</replaceable>:\
|
|
:sm=255.255.255.0:\
|
|
:to=7200:
|
|
</programlisting>
|
|
You have to fill in the <replaceable>[hostname]</replaceable>,
|
|
<replaceable>[mac address]</replaceable>,
|
|
<replaceable>[ip address]</replaceable> and
|
|
<replaceable>[root path]</replaceable>
|
|
fields with the appropriate information, where:
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
<replaceable>[hostname]</replaceable> is the name
|
|
of the &PA; system.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<replaceable>[mac address]</replaceable> is the
|
|
NOT-delimited ethernet address of the &PA; system, which can be obtained
|
|
by typing <command>lanaddress</command> at the
|
|
'<computeroutput>BOOT_ADMIN></computeroutput>' prompt
|
|
(see <xref linkend="bootadminfo" />).
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<replaceable>[ip address]</replaceable> is the
|
|
IP address you wish to assign to the &PA; system.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<replaceable>[boot filename]</replaceable> is the
|
|
name of the bootable kernel image you want to boot your system with.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<replaceable>[root path]</replaceable> is the
|
|
path to the NFS root filesystem exported by the server.
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>You'll end up with something like this:</para>
|
|
|
|
<programlisting>
|
|
vodka:hd=/tftpboot:\
|
|
:rp=/usr/src/parisc/:\
|
|
:ht=ethernet:\
|
|
:ha=080069088717:\
|
|
:ip=140.244.9.208:\
|
|
:bf=lifimage:\
|
|
:sm=255.255.255.0:\
|
|
:to=7200:
|
|
</programlisting>
|
|
</listitem>
|
|
</orderedlist>
|
|
|
|
</sect3>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="realnetboot">
|
|
<title>Effectively booting from network</title>
|
|
|
|
<highlights><para>
|
|
To conclude with the developers' way to boot the
|
|
kernel, this section will tell you how to actually boot your
|
|
system from a network server. But it tends to be less and less used.
|
|
Most users will prefer to stick to <xref linkend="boothd" /> once
|
|
their system is properly setup.
|
|
</para></highlights>
|
|
|
|
<para>
|
|
Here we are. We assume that you've done everything outlined
|
|
above, your network boot server is on the same physical subnet as
|
|
your &PA; machine, you've got a bootable &PL; kernel lifimage
|
|
on your boot server, and you're willing to give it a try.
|
|
If everything is ready (including you!), the following procedure
|
|
will introduce you to the joy of network booting your PA box into &L;.
|
|
</para>
|
|
|
|
<orderedlist numeration="arabic">
|
|
<listitem>
|
|
<para>Fire up your &PA; system.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Watch your &PA; box starting up. When the following message
|
|
appears during the &PA; machine's boot process, press
|
|
and hold the <keycap>Esc</keycap> key:
|
|
|
|
<programlisting>
|
|
Searching for Potential Boot Devices.
|
|
To terminate search, press and hold the ESCAPE key.
|
|
</programlisting>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
If needed, select '<computeroutput>a) Enter Boot Administration
|
|
mode</computeroutput>' from the menu. This brings up the
|
|
'<computeroutput>BOOT_ADMIN></computeroutput>' prompt.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Type the following at the prompt: <command>boot lan</command>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Watch your &PA; system magically becoming a &PL; system.
|
|
Ta dah!
|
|
</para>
|
|
</listitem>
|
|
</orderedlist>
|
|
|
|
<note><para>
|
|
Of course your are supposed to run only one boot server
|
|
at a time on your network, in order to avoid conflicts...
|
|
</para></note>
|
|
|
|
</sect2>
|
|
|
|
</sect1>
|
|
|
|
</chapter>
|
|
|
|
|
|
|
|
|
|
<chapter id="vmlinux">
|
|
<title>Building and installing a custom kernel</title>
|
|
|
|
<highlights><para>
|
|
To build a Linux kernel, you need a compiler and the kernel source.
|
|
The first element is not a trivial thing to find because it
|
|
depends on how you want to build your kernel.
|
|
The second is easier since it can be found at
|
|
<ulink url="http://cvs.parisc-linux.org/"> the official CVS site</ulink>.
|
|
First, we will discuss about <command>GCC</command> compiler.
|
|
Then, the preparation of the build will be explained.
|
|
The last paragraph will deal with the installation of this new kernel.
|
|
</para></highlights>
|
|
<!-- XXX Find a valid kernel build howto? -->
|
|
|
|
<note><para>
|
|
We will deal only with a kernel built without modules,
|
|
to simplify the explanations.
|
|
</para></note>
|
|
|
|
<sect1 id="gcc">
|
|
<title>GCC compiler</title>
|
|
|
|
<highlights><para>
|
|
You can build the kernel directly on your own &PA; box (<emphasis>self-hosted</emphasis>
|
|
or <emphasis>native</emphasis> build).
|
|
But on old systems, you may prefer to use another - faster - non &PA; computer
|
|
to compile your kernel (<emphasis>cross-compilation</emphasis>). We will see the
|
|
two possibilities.
|
|
</para></highlights>
|
|
|
|
<note><para>
|
|
By the time version 1.0 of this howto was released, only gcc-3.0.X was able
|
|
to build working kernels. There was a bug in more recent versions that made
|
|
the box crash when network activity occurs. It should be fixed by now, so
|
|
using the latest version of gcc should be fine. If ever the above mentioned
|
|
bug occurs, you'll know what's wrong. Anyway, if you want to build
|
|
any kernel after 2.6.12-rc3, you will need at least <command>gcc-3.3</command>.
|
|
</para></note>
|
|
|
|
<sect2 id="nativebuild">
|
|
<title>Native build</title>
|
|
|
|
<para>
|
|
Since &D; was the first distribution to support &PA; architecture,
|
|
if you want to use the <emphasis>Super Cow</emphasis> powers,
|
|
you need to have some basic knowledge about the &D; packaging system.
|
|
We will explain here how to quickly get a gcc compiler ready on your &PA; box.
|
|
If you are not using &D;, well, we're afraid we can't do much
|
|
for you: you will have to transpose what is said below to your distribution.
|
|
We will assume you know how to use
|
|
</para>
|
|
|
|
<para>
|
|
If you are using your own &PA; box, you only need the good old
|
|
<command>GCC</command> compiler. You can install the required tools to build a
|
|
kernel by issuing:
|
|
</para>
|
|
|
|
<programlisting>
|
|
&prompt; <command>apt-get</command> <userinput>install build-essential libncurses5-dev</userinput>
|
|
</programlisting>
|
|
|
|
<para>
|
|
Essentially, this will install everything you need to build a kernel
|
|
(and even a bit more). This boils down to <command>binutils</command>,
|
|
<command>gcc</command>, <command>libc-dev</command>, <command>make</command>,
|
|
<command>fileutils</command> and <command>libncurses5-dev</command>.
|
|
</para>
|
|
|
|
<para>When this is done, you can proceed to the kernel settings.</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="crosscompile">
|
|
<title>Cross compiled build</title>
|
|
|
|
<para>
|
|
In this kernel build method, everything depends on the architecture
|
|
of your building machine. If you want to compile your own toolchain, there
|
|
is a slightly out-of-date HOWTO (<xref linkend="bibxc" />). Otherwise, we
|
|
assume you can either find a cross-compiler package for your build host, or
|
|
make one by yourself.
|
|
</para>
|
|
|
|
<important><para>
|
|
As there is not yet a 64bit userspace on HP-PA, you have to cross-compile
|
|
64bit kernel even if you are building on a 64bit &PA; box. You can get
|
|
unofficial debs for hppa64 compilers and binutils by running for instance:
|
|
<programlisting>
|
|
&prompt; <command>apt-get</command> <userinput>install gcc-3.3-hppa64 binutils-hppa64</userinput>
|
|
</programlisting>
|
|
See the <ulink url="http://www.parisc-linux.org/">&PA; Linux Website</ulink>
|
|
for details.
|
|
</para></important>
|
|
|
|
</sect2>
|
|
|
|
</sect1>
|
|
|
|
|
|
<sect1 id="kernelconf">
|
|
<title>Kernel configuration</title>
|
|
|
|
<para>
|
|
If you want to take advantage of the latest kernel improvements, we
|
|
suggest you retrieve it from the official
|
|
<ulink url="http://cvs.parisc-linux.org/">&PA;/Linux CVS</ulink>.
|
|
Please mind that the <emphasis>vanilla</emphasis> kernel that can
|
|
be found at <ulink url="http://www.kernel.org/">http://www.kernel.org/</ulink>
|
|
is generally out of sync with the above mentioned CVS kernel, and that
|
|
snapshots of this kernel are available too, check the
|
|
<ulink url="http://cvs.parisc-linux.org/download/">download area</ulink>.
|
|
In the following, we will focus on a fresh CVS tree.
|
|
</para>
|
|
|
|
<para>
|
|
The best way to obtain appreciable performances is to get a well
|
|
configured kernel. For the &PA; platform, <command>make oldconfig</command>
|
|
is a kind of default setup. If you want to make your own kernel,
|
|
the first step is to know what hardware you have. The best way to
|
|
grab useful info is to look at your box and find a maximum of data
|
|
(model name, partnumber, chipsets, and so on). If you have already
|
|
booted your box, you can take a look at <command>dmesg</command>
|
|
output. Then, go to the <ulink url="http://hwdb.parisc-linux.org/">official
|
|
hardware database</ulink> or to the
|
|
<ulink url="http://partsurfer.hp.com/">HP partsurfer website</ulink>.
|
|
</para>
|
|
|
|
<para>
|
|
Once you know what is inside your box and what you want to do with it,
|
|
just run <command>make menuconfig</command> or another config command.
|
|
</para>
|
|
|
|
<sect2 id="kernelconf24">
|
|
<title>Configuring 2.4 kernels</title>
|
|
|
|
<highlights><para>
|
|
Here is a brief list of architecture dependent menus for 2.4 kernels.
|
|
You should take a look at them, to see if the values set match
|
|
your hardware. Mind that 2.4 kernels are now considered <emphasis>deprecated</emphasis>
|
|
anyway: you will not get community support for them.
|
|
</para></highlights>
|
|
|
|
<note><para>
|
|
Remember that <command>make oldconfig</command> is a
|
|
good base to start with, since it works for almost any machine.
|
|
</para></note>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><emphasis>Processor type</emphasis> - indicates your CPU model</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><emphasis>General options</emphasis> - tells you what is going to be enabled in your kernel (U2/Uturn, USC/GSC/HSC, Lasi, Wax, Dino, LBA/Elroy, SuperIO)</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><emphasis>Parallel port support</emphasis> - enables/disables the Lasi/ASP parport</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><emphasis>SCSI support</emphasis> - check there for your SCSI chipset (Lasi, Zalon, NCR/SYM53C8XX or other)</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><emphasis>Network device support</emphasis> - is used to set your network card (Lasi, Tulip...)</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><emphasis>Character devices</emphasis> - defines your I/O capabilities (Lasi, Dino, MUX see <xref linkend="MUX24" />)</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><emphasis>HIL Support</emphasis> - useful if you have a HIL controller. See below <xref linkend="HIL24" />.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><emphasis>Console drivers</emphasis> - is directly related to your console mode (STI console or STI framebuffer)</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><emphasis>Sound</emphasis> - enables/disables the Harmony driver</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>
|
|
As you can see, menus specifically concerned by &PA; hardware are not
|
|
that numerous, but there are lots of dependencies between them. Now,
|
|
you must configure the kernel accordingly to what you plan to use
|
|
this box for. Here is a list of some menus you should be going
|
|
through to configure additional functionalities you might want:
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
<emphasis>General setup</emphasis> - is responsible for binary
|
|
formats handled by the kernel. You need ELF, and can try SOM
|
|
(support for HP/UX binaries. It *might* work with some static
|
|
executables).
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<emphasis>Block devices</emphasis> - sets the ramdisk and loopback
|
|
support. You probably won't use them.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<emphasis>ATA/IDE/MFM/RLL support</emphasis> - You will need to
|
|
check this to enable IDE. See <xref linkend="IDE24" />.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<emphasis>File Systems/Network File Systems</emphasis> - is where
|
|
to set EXT3 or NFS support.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<emphasis>USB support</emphasis> - If you have enabled
|
|
<emphasis>SuperIO</emphasis> and want USB, look here:
|
|
<xref linkend="USB24" />.
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<note><para>
|
|
By the time this HOWTO was written, there was no floppy drive
|
|
support; and what's more, it is not expected to ever be supported.
|
|
</para></note>
|
|
|
|
<para>
|
|
When you're done with it, save your kernel configuration.
|
|
Everything is written in the <filename>.config</filename> file.
|
|
You should back it up because <command>make distclean</command>
|
|
will remove it. At this stage, you can do
|
|
<command>make dep vmlinux</command> and if everything goes fine,
|
|
you will have a new kernel in a couple of minutes.
|
|
</para>
|
|
|
|
<para>
|
|
Here follows brief information about specific hardware configurations.
|
|
</para>
|
|
|
|
<sect3 id="HIL24">
|
|
<title><acronym>HIL</acronym> Support in 2.4</title>
|
|
|
|
<para>
|
|
Since <literal>kernel-2.4.18-pa45</literal>, there is a full
|
|
<acronym>HIL</acronym> support, for mice, tablets and keyboards.
|
|
It is based on the <emphasis>Linux Input Driver</emphasis> model.
|
|
See the <ulink url="http://www.parisc-linux.org/faq/">&PA;/Linux FAQ</ulink>
|
|
and the <ulink url="http://lists.parisc-linux.org/pipermail/parisc-linux/2002-June/016757.html">mail</ulink>
|
|
posted on the mailing list by <emphasis>Helge Deller</emphasis>.
|
|
Here is how to configure it:
|
|
</para>
|
|
|
|
<orderedlist numeration="arabic">
|
|
<listitem>
|
|
<para>Make sure you have a 2.4.18-pa45 or higher kernel source.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Look at your kernel configuration for the following options:
|
|
<programlisting>
|
|
CONFIG_INPUT=y
|
|
CONFIG_INPUT_KEYBDEV=y
|
|
CONFIG_INPUT_MOUSEDEV=y
|
|
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
|
|
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
|
|
CONFIG_INPUT_EVDEV=y
|
|
|
|
CONFIG_INPUT_SERIO=y
|
|
|
|
CONFIG_HIL=y
|
|
CONFIG_HP_SDC=y
|
|
CONFIG_HIL_MLC=y
|
|
CONFIG_HP_SDC_MLC=y
|
|
CONFIG_HIL_KBD=y
|
|
CONFIG_HIL_PTR=y
|
|
</programlisting>
|
|
|
|
<note><para>
|
|
There is no more <literal>CONFIG_HIL_KBD_BASIC</literal>.
|
|
</para></note>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
On your target system, check that the following devices are available:
|
|
|
|
<programlisting>
|
|
/dev/input/mice
|
|
/dev/input/mouseX
|
|
/dev/input/eventX
|
|
</programlisting>
|
|
|
|
If they are not yet present, create them as <literal>root</literal> by running:
|
|
|
|
<programlisting>
|
|
&prompt; <command>cd /dev; MAKEDEV input</command>
|
|
</programlisting>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Configure <command>gpm</command> with the following
|
|
options in <filename>/etc/gpm.conf</filename>:
|
|
|
|
<programlisting>
|
|
device=/dev/input/mice
|
|
type=imps2
|
|
</programlisting>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Here is a sample <filename>/etc/X11/XF86Config-4</filename>:
|
|
|
|
<programlisting>
|
|
Section "InputDevice"
|
|
Identifier "HIL Keyboard"
|
|
Driver "keyboard"
|
|
Option "CoreKeyboard"
|
|
EndSection
|
|
Section "InputDevice"
|
|
Identifier "HIL Mouse"
|
|
Driver "mouse"
|
|
Option "CorePointer"
|
|
Option "Device" "/dev/input/mice"
|
|
Option "Protocol" "ImPS/2"
|
|
Option "ZAxisMapping" "4 5"
|
|
EndSection
|
|
Section "ServerLayout"
|
|
Identifier "Default Layout"
|
|
Screen "Default Screen"
|
|
InputDevice "HIL Keyboard"
|
|
InputDevice "HIL Mouse"
|
|
EndSection
|
|
</programlisting>
|
|
|
|
You can also download a sample <filename>XF86Config-4</filename> here:
|
|
<ulink url="ftp://ftp.parisc-linux.org/XFree86/XF86Config-4">ftp://ftp.parisc-linux.org/XFree86/XF86Config-4</ulink>,
|
|
adjust color depth and resolution, and put it in your
|
|
<filename class="directory">/etc/X11/</filename>.
|
|
</para>
|
|
</listitem>
|
|
</orderedlist>
|
|
</sect3>
|
|
|
|
<sect3 id="USB24">
|
|
<title><acronym>USB</acronym> Support in 2.4</title>
|
|
|
|
<para>
|
|
<acronym>USB</acronym> support on HP-PA is still experimental, therefore it is
|
|
only configured as modules in default kernel configuration.
|
|
We have tried to install a B2000 with builtin <acronym>USB</acronym> support,
|
|
both 32 and 64bit, and it worked fine, despite some keyboard problems.
|
|
Don't worry, nothing critical: the range of keys located between
|
|
the main part of the keyboard (the letters, backspace, enter...)
|
|
and the numeric pad are broken. They do not behave at all as expected.
|
|
</para>
|
|
|
|
<tip><para>
|
|
You can use the numeric pad as arrow keys: when <keycap>NumLock</keycap>
|
|
is not activated, it behaves as a navigation pad. <emphasis>e.g.</emphasis>
|
|
<keycap>8</keycap> is <keycap>Up Arrow</keycap>, <keycap>4</keycap> is
|
|
<keycap>Left Arrow</keycap> and so on.
|
|
</para></tip>
|
|
|
|
<orderedlist numeration="arabic">
|
|
<listitem>
|
|
<para>Make sure you have a 2.4.18 or higher kernel source.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Look at your kernel configuration for the following options:
|
|
|
|
<programlisting>
|
|
CONFIG_SUPERIO=y
|
|
CONFIG_HOTPLUG=y
|
|
|
|
CONFIG_INPUT=y
|
|
CONFIG_INPUT_KEYBDEV=y
|
|
CONFIG_INPUT_MOUSEDEV=y
|
|
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
|
|
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
|
|
CONFIG_INPUT_EVDEV=y
|
|
|
|
CONFIG_USB=y
|
|
CONFIG_USB_DEVICEFS=y
|
|
CONFIG_USB_OHCI=y
|
|
CONFIG_HID=y
|
|
</programlisting>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
On your target system, check that the following devices
|
|
are available:
|
|
|
|
<programlisting>
|
|
/dev/input/mice
|
|
/dev/input/mouseX
|
|
/dev/input/eventX
|
|
</programlisting>
|
|
|
|
If they are not yet present, create them as <literal>root</literal> by running:
|
|
|
|
<programlisting>
|
|
&prompt; <command>cd /dev; MAKEDEV input</command>
|
|
</programlisting>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Configure <command>gpm</command> with the following options
|
|
in <filename>/etc/gpm.conf</filename>:
|
|
|
|
<programlisting>
|
|
device=/dev/input/mice
|
|
type=imps2
|
|
</programlisting>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
The XF86-Config-4 is similar to the
|
|
<literal>HIL</literal> one, as it is also using the <emphasis>Linux
|
|
Input Driver</emphasis>.
|
|
</para>
|
|
</listitem>
|
|
</orderedlist>
|
|
|
|
</sect3>
|
|
|
|
<sect3 id="MUX24">
|
|
<title><acronym>MUX</acronym> Console Support in 2.4</title>
|
|
|
|
<para>
|
|
<literal>MUX Console</literal> has been improved by
|
|
<emphasis>Richard Hirst</emphasis> in 2.4.18-pa37 kernel,
|
|
though it is still a very <emphasis>experimental</emphasis> feature.
|
|
It is expected to provide adequate <literal>MUX Console</literal>
|
|
support to <literal>E-</literal> and <literal>K-Class</literal> machines.
|
|
Feedback would be really appreciated.
|
|
</para>
|
|
|
|
<para>Now follow these steps to get it to work:</para>
|
|
|
|
<orderedlist numeration="arabic">
|
|
<listitem>
|
|
<para>
|
|
Make sure you have a 2.4.18-pa37 or higher kernel source.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Look at your kernel configuration for the following options:
|
|
|
|
<programlisting>
|
|
CONFIG_SERIAL_CONSOLE=y
|
|
|
|
CONFIG_SERIAL_GSC=y
|
|
|
|
CONFIG_SERIAL_NONSTANDARD=y
|
|
CONFIG_SERIAL_MUX=y
|
|
</programlisting>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
On your target system, check that the following devices are available:
|
|
|
|
<programlisting>
|
|
/dev/ttyB0
|
|
</programlisting>
|
|
|
|
If they are not yet present, create them as <literal>root</literal> by running:
|
|
|
|
<programlisting>
|
|
&prompt; <command>cd /dev; MAKEDEV ttyB0</command>
|
|
</programlisting>
|
|
|
|
<note><para>
|
|
It needs a recent <literal>MAKEDEV</literal> package to be
|
|
created this way.
|
|
</para></note>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Now you can boot your system, taking care that &PO; uses
|
|
<computeroutput>console=ttyB0</computeroutput>.
|
|
</para>
|
|
</listitem>
|
|
</orderedlist>
|
|
|
|
</sect3>
|
|
|
|
<sect3 id="IDE24">
|
|
<title><acronym>IDE</acronym> Devices Support in 2.4</title>
|
|
|
|
<para>
|
|
There is nothing really special about <acronym>IDE</acronym>
|
|
support. You have to check that the <emphasis>IDE Chipset</emphasis>
|
|
in use in your box is supported by the kernel. A common chipset
|
|
found on &PA; hardware is <literal>NS87415</literal>.
|
|
You can find it on B2000, J5000 and C3000 for instance. You will
|
|
need <acronym>IDE</acronym> support to use some CD-ROM devices.
|
|
</para>
|
|
|
|
<para>
|
|
Here is an example to get <acronym>IDE</acronym> to work with this chipset:
|
|
</para>
|
|
|
|
<orderedlist numeration="arabic">
|
|
<listitem>
|
|
<para>Make sure you have a recent kernel source.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Look at your kernel configuration for the following options:
|
|
|
|
<programlisting>
|
|
CONFIG_IOMMU_CCIO=y
|
|
CONFIG_PCI=y
|
|
CONFIG_PCI_LBA=y
|
|
CONFIG_IOSAPIC=y
|
|
CONFIG_IOMMU_SBA=y
|
|
CONFIG_SUPERIO=y
|
|
|
|
CONFIG_IDE=y
|
|
|
|
CONFIG_BLK_DEV_IDE=y
|
|
|
|
CONFIG_BLK_DEV_IDEPCI=y
|
|
CONFIG_BLK_DEV_IDEDMA=y
|
|
CONFIG_BLK_DEV_ADMA=y
|
|
CONFIG_BLK_DEV_IDEDMA=y
|
|
CONFIG_BLK_DEV_NS87415=y
|
|
</programlisting>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
On your target system, check that the following devices
|
|
are available:
|
|
|
|
<programlisting>
|
|
/dev/hd*
|
|
</programlisting>
|
|
|
|
If they are not yet present, create them as <literal>root</literal> by running:
|
|
|
|
<programlisting>
|
|
&prompt; <command>cd /dev; MAKEDEV hda hdb hdc hdd hde</command>
|
|
</programlisting>
|
|
</para>
|
|
</listitem>
|
|
</orderedlist>
|
|
|
|
<note><para>
|
|
Of course we didn't mention much of the architecture
|
|
independent options. Moreover, the above settings may vary depending
|
|
on your hardware. This is just an example.
|
|
</para></note>
|
|
</sect3>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="kernelconf26">
|
|
<title>Configuring 2.6 kernels</title>
|
|
|
|
<highlights><para>
|
|
Here is a brief list of architecture dependent menus for 2.6 kernels.
|
|
You should take a look at them, to see if the values set match
|
|
your hardware:
|
|
</para></highlights>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><emphasis>Processor type and features</emphasis> - indicates your CPU model
|
|
and some specific features such as SMP or Discontigmem support</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><emphasis>Bus options</emphasis> - tells you what bus support is going to be
|
|
enabled in your kernel (U2/Uturn, USC/GSC/HSC, Lasi, Wax, Dino, LBA/Elroy, SuperIO)</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><emphasis>PA-RISC specific drivers</emphasis> - enables/disables some &PA; specific
|
|
drivers, such as LED support, GSP and Stable Storage support.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>
|
|
As you can see, menus specifically concerned by &PA; hardware are not
|
|
that numerous, and everything else is much generic by now. Still,
|
|
you must configure the kernel accordingly to what you plan to use
|
|
this box for and what features you want supported. Many other drivers are found in
|
|
their respective submenus, such as SCSI, with the Zalon, Lasi SCSI and SYM2 drivers being
|
|
there, or the Framebuffer devices (STI) in the Graphics Support menu, or the sound drivers
|
|
(Harmony and AD1889) in the Sound menu. Help is often provided, feel free to look at it.
|
|
</para>
|
|
|
|
<note><para>
|
|
Most of what was said for 2.4 is somewhat still applicable to 2.6.
|
|
</para></note>
|
|
|
|
<!-- XXX improve? -->
|
|
</sect2>
|
|
|
|
</sect1>
|
|
|
|
|
|
<sect1 id="kernelinstall">
|
|
<title>Kernel installation</title>
|
|
|
|
<para>
|
|
If you have made a native build on the box you wish to install, you can setup
|
|
the new kernel as follows:
|
|
within the kernel source tree <filename>linux/</filename>, as <literal>root</literal> execute:
|
|
|
|
<programlisting>
|
|
&prompt; <command>cp vmlinux /boot/vmlinux-<replaceable>[kernelversion]</replaceable></command>
|
|
&prompt; <command>cp System.map /boot/System.map-<replaceable>[kernelversion]</replaceable></command>
|
|
&prompt; <command>cp .config /boot/config-<replaceable>[kernelversion]</replaceable></command>
|
|
</programlisting>
|
|
|
|
Though it is not mandatory, we suggest you to replace
|
|
<replaceable>[kernelversion]</replaceable> by the version of the
|
|
kernel you built, <emphasis>e.g.</emphasis>:
|
|
<filename>vmlinux-2.4.18-pa44</filename>. This will help you
|
|
dealing with multiple kernel versions on the same machine.
|
|
The same applies to <filename>.config</filename>.
|
|
It is not needed to have a working kernel, though it might
|
|
be very helpful when configuring a new one.
|
|
Now, do <command>cd /boot</command>, make sure that
|
|
<filename>vmlinux</filename> is a symbolic link to another
|
|
file, as in the following example:
|
|
|
|
<programlisting>
|
|
&prompt; <command>ls -l vmlinux</command>
|
|
<computeroutput>lrwxrwxrwx 1 root root 35 Jun 23 01:38 vmlinux -> vmlinux-2.4.18-64-SMP</computeroutput>
|
|
</programlisting>
|
|
|
|
Make sure to remember the name of the kernel actually running
|
|
on your box if ever the new one won't work properly.
|
|
You are now able to ask &PO; to boot on it if needed
|
|
(see <xref linkend="palo" /> for more information).
|
|
Now do the following:
|
|
|
|
<programlisting>
|
|
&prompt; <command>rm -f vmlinux</command>
|
|
&prompt; <command>ln -s vmlinux-<replaceable>[kernelversion]</replaceable> vmlinux</command>
|
|
&prompt; <command>sync</command>
|
|
</programlisting>
|
|
|
|
If you want to boot from network you can forget all this,
|
|
as you will need to set &PO; as explained in the
|
|
<xref linkend="paloappusage" />, and run <command>make palo</command>
|
|
to create the bootable <emphasis>lifimage</emphasis>.
|
|
</para>
|
|
|
|
<para>
|
|
If you have made a cross-compiled build or built a kernel on a
|
|
PA box which is not the one you wish to install,
|
|
you have to find a way to put <filename>vmlinux</filename>,
|
|
<filename>System.map</filename> and eventually <filename>.config</filename>
|
|
in <filename class="directory">/boot/</filename> as mentioned before.
|
|
You can use the network (like <command>ftp</command>)
|
|
or a CD to do so, or even direct copy to the hard disk drive.
|
|
</para>
|
|
|
|
</sect1>
|
|
|
|
</chapter>
|
|
|
|
|
|
|
|
|
|
<appendix id="win2kdhcp">
|
|
<title>&W; 2003 boot server howto</title>
|
|
|
|
<abstract>
|
|
<para>
|
|
This appendix has been greatly contributed by <emphasis>Jeremy Drake</emphasis>.
|
|
It describes the process of setting up a &W; 2003 Server to serve boot requests
|
|
for a &PL; box.
|
|
</para>
|
|
</abstract>
|
|
|
|
<sect1 id="win2ksetupdhcp">
|
|
<title>Setup the DHCP service</title>
|
|
|
|
<para>
|
|
As for the UNIX/Linux based approach (discussed in <xref linkend="bootnetwork" />),
|
|
you need to collect some information and data before setting everything up.
|
|
First of all, you need the MAC address of your &PA; box.
|
|
Please check <link linkend="getmac"><command>rboot</command> preparation</link> for details.
|
|
You are going to need a <glossterm linkend="glosslifimage">lifimage</glossterm> file.
|
|
Please read <xref linkend="preparingnetboot" />.
|
|
</para>
|
|
|
|
<para>
|
|
Then, you have to enable DHCP service on your &W; box.
|
|
You can do that by going into the <emphasis>Control Panel</emphasis>,
|
|
open <emphasis>Add/Remove Programs</emphasis>, select <emphasis>Windows
|
|
Components</emphasis> and finally <emphasis>Networking Services</emphasis>.
|
|
There, enable <emphasis>Dynamic Host Configuration Protocol (DHCP)</emphasis>.
|
|
</para>
|
|
|
|
<para>
|
|
You need to configure the DHCP service now. Launch the DHCP admin tool by
|
|
going into the <emphasis>Control Panel</emphasis>, open <emphasis>Admin
|
|
Tools</emphasis> and select <emphasis>DHCP</emphasis>.
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>Expand the server tree.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Right click on
|
|
<menuchoice>
|
|
<guimenu>Reservations</guimenu>
|
|
<guimenuitem>New Reservation...</guimenuitem>
|
|
</menuchoice>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
In <emphasis>Reservation name</emphasis>, put the workstation's host
|
|
name. Enter an unused IP address. Enter the &PA; box' MAC address (no
|
|
delimiters, just the hex number). Select <emphasis>Both</emphasis> for whether it
|
|
should be bootp or dhcp. Click <emphasis>Ok</emphasis> to close this window.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Look for your newly created reservation at the bottom of the
|
|
list under <emphasis>Reservations</emphasis> and click it.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Right click on <emphasis>Configure Options...</emphasis></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
It should have inherited your server's default
|
|
options, so we won't cover setting router, dns, wins and lease length.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Scroll down the list of options to 066: <emphasis>Boot
|
|
Server Host Name</emphasis>. Check the box next to option 066.
|
|
Enter your tftp server's ip address, because IPL can't resolve hostnames.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Check option 067: <emphasis>Bootfile Name</emphasis> and
|
|
enter the name of the lifimage. Generally, <emphasis>lifimage</emphasis>
|
|
is a good choice here.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Click <emphasis>Ok</emphasis> and your dhcp server is ready!</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
|
|
</sect1>
|
|
|
|
|
|
<sect1 id="win2ksetuptftp">
|
|
<title>Get & setup the TFTP server</title>
|
|
|
|
<para>
|
|
To get the network boot process operational, you need the TFTP service that
|
|
provides the basic file system at boot time. Get Tftpd from
|
|
<ulink url="http://tftpd32.jounin.net/">http://tftpd32.jounin.net/</ulink>.
|
|
You must download the latest version in zip format. Unzip it and store it in
|
|
your favorite place. Then, you must setup the monster.
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>Run tftpd32.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Click the <emphasis>Browse</emphasis> button.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Browse to where you put your lifimage, highlight
|
|
it and click <emphasis>Ok</emphasis>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Make sure the IP address below the directory is
|
|
the one you gave to your &PA; box.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Let tftpd32 open. The tftp server only runs
|
|
when the <acronym>GUI</acronym> is displayed.
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
If you want to run it as a NT service, you have to download a
|
|
<trademark>Microsoft</trademark> program. Please refer to the
|
|
<ulink url="http://perso.wanadoo.fr/philippe.jounin/tftpd32.html#FAQ">\
|
|
Tftpd32 FAQ</ulink>.
|
|
</para>
|
|
|
|
</sect1>
|
|
|
|
|
|
<sect1 id="tryw2k">
|
|
<title>Attempt to netboot</title>
|
|
|
|
<para>
|
|
Now, you are fully set up to try to boot your &PA; box via network.
|
|
You can follow the instructions in <xref linkend="realnetboot" />.
|
|
</para>
|
|
|
|
<para>
|
|
If you have any trouble, start by looking at those points and then ask the
|
|
<ulink url="http://www.parisc-linux.org/mailing-lists/">&PL; mailing list</ulink>.
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
Settings on the DHCP server (verify the &PA; MAC address is correct).
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Your dhcp server is on the same physical network segment as the &PA; box.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>The state of the network connection of the 2 boxes.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Try to tcpdump while you are booting the &PA; box over the lan.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
|
|
</sect1>
|
|
|
|
</appendix>
|
|
|
|
|
|
|
|
|
|
<appendix id="oldpalo">
|
|
<title>Older &PO; dumps</title>
|
|
|
|
<sect1 id="oldpaloa500">
|
|
<title>A500 Session dump using &PO; 0.97</title>
|
|
<programlisting>
|
|
Main Menu: Enter command or menu > bo scsi.5.0 ipl
|
|
Interact with IPL (Y, N, or Cancel)?> y
|
|
|
|
|
|
Booting...
|
|
Boot IO Dependent Code (IODC) revision 1
|
|
|
|
|
|
HARD Booted.
|
|
palo ipl 0.97 root@c3k Tue Nov 27 14:51:48 MST 2001
|
|
Information: Boot device can't seek past 2Gb (ignore next error).
|
|
byteio_read: seekread() returned -1 expected 2048
|
|
|
|
Partition Start(MB) End(MB) Id Type
|
|
1 1 15 f0 Palo
|
|
2 16 503 82 swap
|
|
3 504 2887 83 ext2
|
|
|
|
PALO(F0) partition contains:
|
|
0/vmlinux64 3990942 bytes @ 0x44000
|
|
|
|
Information: No console specified on kernel command line. This is normal.
|
|
PALO will choose the console currently used by firmware (serial).
|
|
Current command line:
|
|
3/boot/vmlinux root=/dev/sda3 HOME=/ console=ttyS0 TERM=vt102
|
|
0: 3/boot/vmlinux
|
|
1: root=/dev/sda3
|
|
2: HOME=/
|
|
3: console=ttyS0
|
|
4: TERM=vt102
|
|
|
|
Edit which field?
|
|
(or 'b' to boot with this command line)? 0
|
|
3/boot/vmlinux-2.4.17-pa3 initrd=0/root.bin
|
|
Current command line:
|
|
3/boot/vmlinux-2.4.17-pa3 initrd=root.bin root=/dev/sda3 HOME=/
|
|
console=ttyS0 TERM=vt102
|
|
0: 3/boot/vmlinux-2.4.17-pa3
|
|
1: initrd=0/root.bin
|
|
2: root=/dev/sda3
|
|
3: HOME=/
|
|
4: console=ttyS0
|
|
5: TERM=vt102
|
|
|
|
|
|
Edit which field?
|
|
(or 'b' to boot with this command line)? 1
|
|
|
|
Current command line:
|
|
3/boot/vmlinux-2.4.17-pa3 root=/dev/sda3 HOME=/ console=ttyS0 TERM=vt102
|
|
0: 3/boot/vmlinux-2.4.17-pa3
|
|
1: root=/dev/sda3
|
|
2: HOME=/
|
|
3: console=ttyS0
|
|
4: TERM=vt102
|
|
|
|
Edit which field?
|
|
(or 'b' to boot with this command line)? b
|
|
</programlisting>
|
|
|
|
<para>
|
|
&PO; was first setup to boot the kernel file <filename>vmlinux</filename>
|
|
located on the third partition of the SCSI device ID 5 LUN 0.
|
|
(We know this since we have asked &BA; to boot on this device).
|
|
But we wanted another kernel this time.
|
|
We have pressed the <keycap>Enter</keycap> key (to validate the default
|
|
choice '<computeroutput>0</computeroutput>')
|
|
and modified the text to match our needs, here
|
|
<filename>vmlinux-2.4.17-pa3</filename>. We have also
|
|
added an <computeroutput>initrd=0/root.bin</computeroutput> argument
|
|
to the command line. We have validated our changes
|
|
by hitting the <keycap>Enter</keycap> key.
|
|
Finally we have decided that we didn't want this
|
|
additional argument, so we have selected it and erased it.
|
|
At the end it asked again which field we wanted to edit, we
|
|
just typed '<computeroutput>b</computeroutput>' instead
|
|
of any number and hit <keycap>Enter</keycap> to boot our new kernel.
|
|
</para>
|
|
|
|
</sect1>
|
|
|
|
</appendix>
|
|
|
|
|
|
|
|
|
|
<appendix id="contributors">
|
|
<title>HOWTO contributors</title>
|
|
|
|
<para>
|
|
The following people contributed or reviewed this HOWTO in one way or another.
|
|
</para>
|
|
|
|
<para>For Deb's version:
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
David Alexander deVries
|
|
<email>adevries@thepuffingroup.com</email>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Philip Imperial Schwan
|
|
<email>pschwan@thepuffingroup.com</email>
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
|
|
<para>For Thomas' versions:
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
Michael Damaschke
|
|
<email>sps01@uni-koeln.de</email>
|
|
Thanks for your example about &PO;
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Helge Deller
|
|
<email>deller@gmx.de</email>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Jeremy Drake
|
|
<email>jeremyd@apptechsys.com</email>
|
|
Thanks for your &W; boot server howto
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Grant Grundler
|
|
<email>grundler@parisc-linux.org</email>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Richard Hirst
|
|
<email>rhirst@parisc-linux.org</email>
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
|
|
<para>For Thibaut's versions:
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
Matthieu Delahaye
|
|
<email>delahaym@esiee.fr</email>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Helge Deller
|
|
<email>deller@gmx.de</email>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Grant Grundler
|
|
<email>grundler@parisc-linux.org</email>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Richard Hirst
|
|
<email>rhirst@parisc-linux.org</email>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Kyle McMartin
|
|
<email>kyle@mcmartin.ca</email>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Clement Moyroud
|
|
<email>moyroudc@esiee.fr</email>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Carlos O'Donnel
|
|
<email>carlos@systemhalted.org</email>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Matthew Wilcox
|
|
<email>matthew@wil.cx</email>
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
|
|
</appendix>
|
|
|
|
|
|
|
|
|
|
<glossary id="gloss">
|
|
<para>
|
|
This is a brief glossary of the &PA; specific terminology.
|
|
You can find a more detailed one at
|
|
<ulink url="http://www.parisc-linux.org/glossary/">http://www.parisc-linux.org/glossary/</ulink>.
|
|
</para>
|
|
|
|
<glossentry id="glossbch">
|
|
<glossterm>Boot Console Handler (<acronym>BCH</acronym>)</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
This is the early boot console available during boot up on most &PA; machines,
|
|
provided by the <xref linkend="glosspdc" />.
|
|
</para>
|
|
<glossseealso otherterm="glossbootadmin" />
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glossbootadmin">
|
|
<glossterm>BOOT_ADMIN</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
This a command line utility stored in the boot ROM of
|
|
the PA box, which is used to configure the computer during early boot
|
|
sequence. It is a part of the &PA; machine's firmware.
|
|
</para>
|
|
<glossseealso otherterm="glossbch" />
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glossgsp">
|
|
<glossterm>Guardian Service Processor (<acronym>GSP</acronym>)</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
The <acronym>GSP</acronym> is a console subsystem present
|
|
on certain &PA; systems, which provides several features such as remote
|
|
console, UPS management, system low level control.
|
|
</para>
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glosshpmc">
|
|
<glossterm>High Priority Machine Check (<acronym>HPMC</acronym>)</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
Fatal system error. <xref linkend="glosspdc" /> saves machine state in the
|
|
<xref linkend="glosspim" />.
|
|
</para>
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glosshppa">
|
|
<glossterm>Hewlett Packard Precision Architecture (<acronym>HP-PA</acronym>)</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
'HP-PA' (sometimes '<emphasis>hppa</emphasis>') is the short
|
|
way to refer to <emphasis>HP &PA;</emphasis> architecture. It's real meaning
|
|
is: '<emphasis>Hewlett Packard Precision Architecture</emphasis>'. It
|
|
is used for instance by <ulink url="http://www.debian.org/ports/hppa/">&D;</ulink>
|
|
and <ulink url="http://www.openbsd.org/hppa.html">OpenBSD</ulink> to point out
|
|
their ports.
|
|
</para>
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glossipl">
|
|
<glossterm>Initial Program Loader (<acronym>IPL</acronym>)</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
It is the HP standardized system bootstrap responsible for
|
|
loading the operating system's kernel on &PA; systems. It can be launched
|
|
from the &BA;.
|
|
</para>
|
|
<glossseealso otherterm="glossbootadmin" />
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glossisl">
|
|
<glossterm>Initial System Loader (<acronym>ISL</acronym>)</glossterm>
|
|
<glossdef>
|
|
<para>ISL is the executable that brings you into &BA;.</para>
|
|
<glossseealso otherterm="glossipl" />
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glosslif">
|
|
<glossterm>Logical Interchange Format (<acronym>LIF</acronym>)</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
This is a HP mass-storage format used for exchanging files
|
|
among HP computer systems. It basically contains a header (identifying it
|
|
as a LIF volume) and a directory of fixed size containing the files. The
|
|
size of the directory is fixed when the volume is created, which explains
|
|
many things about the way &PO; works!
|
|
</para>
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glosslifimage">
|
|
<glossterm>lifimage</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
It is the name contraction of <emphasis>LIF image</emphasis>, which is
|
|
indeed a file which format respects the <literal>LIF</literal> standard.
|
|
It can be seen as the equivalent of an <literal>ISO</literal> file,
|
|
having the <literal>LIF</literal> format instead of <literal>ISO9660</literal>.
|
|
</para>
|
|
<glossseealso otherterm="glosslif" />
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glosslpmc">
|
|
<glossterm>Low Priority Machine Check (<acronym>LPMC</acronym>)</glossterm>
|
|
<glossdef>
|
|
<para>Generally a recoverable system error.</para>
|
|
<glossseealso otherterm="glosshpmc" />
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glossmp">
|
|
<glossterm>Management Processor (<acronym>MP</acronym>)</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
The <acronym>MP</acronym> is a newer evolution of the <acronym>GSP</acronym>.
|
|
</para>
|
|
<glossseealso otherterm="glossgsp" />
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glossparisc">
|
|
<glossterm><acronym>&PA;</acronym></glossterm>
|
|
<glossdef>
|
|
<para>
|
|
PA stands for Precision Architecture. It is the name of two
|
|
generations of HP processors. They are classified as &PA; 1.X and &PA; 2.0.
|
|
But a system based on a &PA; processor is commonly called a HP-PA box.
|
|
</para>
|
|
<glossseealso otherterm="glosshppa" />
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glosspalo">
|
|
<glossterm>PA LOader (<acronym>PALO</acronym>)</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
&PO; is the <emphasis>&PL; kernel LOader</emphasis>. It was
|
|
designed by Paul Bame as a <emphasis>LILO</emphasis> equivalent for the &PA;
|
|
architecture.
|
|
</para>
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glosspdc">
|
|
<glossterm>Processor-Dependent Code (<acronym>PDC</acronym>)</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
It is the firmware that handles all processor-dependent
|
|
functionalities, including hardware initialization and self-test procedures.
|
|
Once it has done this, it passes control to the ISL.
|
|
</para>
|
|
<glossseealso otherterm="glossisl" />
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glosspim">
|
|
<glossterm>Processor Internal Memory (<acronym>PIM</acronym>)</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
Machine state is saved here after <xref linkend="glosshpmc" />,
|
|
<xref linkend="glosslpmc" />, and <xref linkend="glosstoc" />.
|
|
See <literal>PDC_PIM</literal> in "PDC Procedures" chapter of &PA; I/O ACD
|
|
(available from <ulink url="http://www.parisc-linux.org/documentation/">
|
|
http://www.parisc-linux.org/documentation/</ulink>.
|
|
</para>
|
|
<glossseealso otherterm="glossisl" />
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glossnetinst">
|
|
<glossterm>netinst</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
This is not a &PA; specific term, though it needs
|
|
explanations. <emphasis>Network Install</emphasis>, also known as
|
|
<emphasis>netinst</emphasis>, are small ISOs containing everything you
|
|
need to boot a computer and install it from network. They are based on
|
|
the <ulink url="http://www.debian.org/">&D; distribution</ulink>.
|
|
</para>
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glosssuckyio">
|
|
<glossterm>SuckyIO</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
<literal>(added by special request)</literal> National
|
|
Semiconductor PC87560UBD, aka <emphasis>SuperIO</emphasis>.
|
|
Provides IDE, USB 1.1, Floppy Disk Controller, parallel port, 2 serial
|
|
ports, UIR (Infrared), etc. But since National denies the existence of
|
|
this chip and HP was the only client for this buggy PoS,
|
|
the name <emphasis>SuckyIO</emphasis> has stuck.
|
|
</para>
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glosssuperio">
|
|
<glossterm>SuperIO</glossterm>
|
|
<glossdef>
|
|
<para>Official term for <emphasis>SuckyIO</emphasis>.</para>
|
|
<glossseealso otherterm="glosssuckyio" />
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glosssti">
|
|
<glossterm>Standard Text Interface (<acronym>STI</acronym>)</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
It defines a standardized way to access the graphic subsystem
|
|
on HP-PA.
|
|
</para>
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glosssticon">
|
|
<glossterm>Standard Text Interface Console layer (<acronym>STIcon</acronym>)</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
It is the basic text-mode console that can run on top of any STI-capable device.
|
|
</para>
|
|
<glossseealso otherterm="glosssti" />
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glossstifb">
|
|
<glossterm>Standard Text Interface FrameBuffer layer (<acronym>STIfb</acronym>)</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
It is a superset of STI, providing standard API to access framebuffer
|
|
devices on HP-PA.
|
|
</para>
|
|
<glossseealso otherterm="glosssti" />
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
<glossentry id="glosstoc">
|
|
<glossterm>Transfer Of Control (<acronym>TOC</acronym>)</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
This acronym can usually be found on some &PA; boxes, right near a tiny
|
|
switch that is not often used (hopefully).
|
|
On HP/UX it would make a crash dump and reset the box. It
|
|
can also be requested from the <xref linkend="glossgsp" />. On Linux,
|
|
it will save the registers and reset, saved registers will be accessible
|
|
in the <xref linkend="glosspdc" />.
|
|
</para>
|
|
</glossdef>
|
|
</glossentry>
|
|
|
|
</glossary>
|
|
|
|
|
|
|
|
|
|
<bibliography id="biblio">
|
|
<para>
|
|
These documents might prove helpful to understand the present one,
|
|
or to open new horizons:
|
|
</para>
|
|
|
|
<biblioentry id="bibinstall">
|
|
<abbrev>Raymond 2000</abbrev>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>E. S.</firstname>
|
|
<surname>Raymond</surname>
|
|
</author>
|
|
</authorgroup>
|
|
<copyright>
|
|
<year>2000</year>
|
|
</copyright>
|
|
<title>
|
|
<ulink url="http://www.tldp.org/HOWTO/Installation-HOWTO/index.html">Installation-HOWTO</ulink>
|
|
</title>
|
|
<abstract>
|
|
<para>
|
|
How to obtain and install Linux software. It is the first
|
|
document which a new Linux user should read to get started.
|
|
</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry id="bibnfsroot">
|
|
<abbrev>Maor 1999</abbrev>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>O.</firstname>
|
|
<surname>Maor</surname>
|
|
</author>
|
|
</authorgroup>
|
|
<copyright>
|
|
<year>1999</year>
|
|
</copyright>
|
|
<title>
|
|
<ulink url="http://www.tldp.org/HOWTO/mini/NFS-Root-Client-mini-HOWTO/index.html">NFS-Root-Client Mini-HOWTO</ulink>
|
|
</title>
|
|
<abstract>
|
|
<para>
|
|
How to create client root directories on a server that is
|
|
using NFS Root mounted clients.
|
|
</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry id="bibnfsdiskless">
|
|
<abbrev>Kostyrka 1997</abbrev>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>A.</firstname>
|
|
<surname>Kostyrka</surname>
|
|
</author>
|
|
</authorgroup>
|
|
<copyright>
|
|
<year>1997</year>
|
|
</copyright>
|
|
<title>
|
|
<ulink url="http://www.tldp.org/HOWTO/mini/NFS-Root.html">NFS-Root Mini-HOWTO</ulink>
|
|
</title>
|
|
<abstract>
|
|
<para>
|
|
How to setup a 'disk-less' Linux workstation, which mounts
|
|
its root filesystem &V; NFS.
|
|
</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry id="bibdisk">
|
|
<abbrev>Harris et al. 1997</abbrev>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>T.</firstname>
|
|
<surname>Harris</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>K.</firstname>
|
|
<surname>Koehntopp</surname>
|
|
</author>
|
|
</authorgroup>
|
|
<copyright>
|
|
<year>1997</year>
|
|
</copyright>
|
|
<title>
|
|
<ulink url="http://www.tldp.org/HOWTO/mini/Partition/index.html">Linux Partition HOWTO</ulink>
|
|
</title>
|
|
<abstract>
|
|
<para>
|
|
Teaches you how to plan and layout disk space for your
|
|
Linux system.
|
|
</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
<biblioentry id="bibcvs">
|
|
<abbrev>Dev 1998</abbrev>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>A.</firstname>
|
|
<surname>Dev</surname>
|
|
</author>
|
|
</authorgroup>
|
|
<copyright>
|
|
<year>1998</year>
|
|
</copyright>
|
|
<title>
|
|
<ulink url="http://www.tldp.org/HOWTO/CVS-RCS-HOWTO.html">CVS-RCS-HOWTO</ulink>
|
|
</title>
|
|
<abstract>
|
|
<para>
|
|
This document is a "practical guide" to very
|
|
quickly setup CVS/RCS source code control system.
|
|
</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry id="bibapt">
|
|
<abbrev>Noronha Silva 2001</abbrev>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>G.</firstname>
|
|
<surname>Noronha Silva</surname>
|
|
</author>
|
|
</authorgroup>
|
|
<copyright>
|
|
<year>2001</year>
|
|
</copyright>
|
|
<title>
|
|
<ulink url="http://www.debian.org/doc/manuals/apt-howto/">APT HOWTO</ulink>
|
|
</title>
|
|
<abstract>
|
|
<para>
|
|
Will help you understand how the &D; package management
|
|
utility, APT, works.
|
|
</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry id="bibxc">
|
|
<abbrev>O'Donell 2002</abbrev>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>C.</firstname>
|
|
<surname>O'Donell</surname>
|
|
</author>
|
|
</authorgroup>
|
|
<copyright>
|
|
<year>2002</year>
|
|
</copyright>
|
|
<title>
|
|
<ulink url="http://www.parisc-linux.org/toolchain/PARISC-Linux-XC-HOWTO.html">The PARISC-Linux Cross Compiler HOWTO</ulink>
|
|
</title>
|
|
<abstract>
|
|
<para>
|
|
This is a semi-detailed guide for building a cross
|
|
compiler toolchain targeting &PA; systems.
|
|
</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry id="bibhp">
|
|
<abbrev>Cornec 1997</abbrev>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>B.</firstname>
|
|
<surname>Cornec</surname>
|
|
</author>
|
|
</authorgroup>
|
|
<copyright>
|
|
<year>1997</year>
|
|
</copyright>
|
|
<title>
|
|
<ulink url="http://www.tldp.org/HOWTO/HP-HOWTO/index.html">HP HOWTO</ulink>
|
|
</title>
|
|
<abstract>
|
|
<para>
|
|
Describes the use of products available in the
|
|
Hewlett-Packard (HP) catalog with Linux and some free software.
|
|
</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry id="bibdebian">
|
|
<abbrev>Perens et al. 1996</abbrev>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>B.</firstname>
|
|
<surname>Perens</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>S.</firstname>
|
|
<surname>Rudolph</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>I.</firstname>
|
|
<surname>Grobman</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>J.</firstname>
|
|
<surname>Treacy</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>A.</firstname>
|
|
<surname>Di Carlo</surname>
|
|
</author>
|
|
</authorgroup>
|
|
<copyright>
|
|
<year>1996</year>
|
|
</copyright>
|
|
<title>
|
|
<ulink url="http://ftp.debian.org/debian/dists/woody/main/disks-hppa/current/doc/index.en.html">&D; GNU/Linux 3.0 Installation Documentation Index</ulink>
|
|
</title>
|
|
<abstract>
|
|
<para>
|
|
Will help you to install and configure your &D;
|
|
GNU/Linux system.
|
|
</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry id="bibdebiansarge">
|
|
<abbrev>Debian Installer Team 2005</abbrev>
|
|
<authorgroup>
|
|
<author>
|
|
<surname>Debian Installer Team</surname>
|
|
</author>
|
|
</authorgroup>
|
|
<copyright>
|
|
<year>2004</year>
|
|
<year>2005</year>
|
|
</copyright>
|
|
<title>
|
|
<ulink url="http://www.debian.org/releases/sarge/hppa/">&D; GNU/Linux 3.1 Installation Documentation</ulink>
|
|
</title>
|
|
<abstract>
|
|
<para>
|
|
Will help you to install and configure your &D; Sarge
|
|
GNU/Linux system.
|
|
</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry id="bibgentoo">
|
|
<abbrev>Vermeulen et al. 2006</abbrev>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>S.</firstname>
|
|
<surname>Vermeulen</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>R.</firstname>
|
|
<surname>Marples</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>D.</firstname>
|
|
<surname>Robbins</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>C.</firstname>
|
|
<surname>Houser</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>J.</firstname>
|
|
<surname>Alexandratos</surname>
|
|
</author>
|
|
</authorgroup>
|
|
<copyright>
|
|
<year>2006</year>
|
|
</copyright>
|
|
<title>
|
|
<ulink url="http://www.gentoo.org/doc/en/handbook/handbook-hppa.xml">Gentoo HPPA Handbook</ulink>
|
|
</title>
|
|
<abstract>
|
|
<para>
|
|
A must read for the wannabe Gentoo user.
|
|
</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry id="bibkeyb">
|
|
<abbrev>Brouwer 1993</abbrev>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>A.</firstname>
|
|
<surname>Brouwer</surname>
|
|
</author>
|
|
</authorgroup>
|
|
<copyright>
|
|
<year>1993</year>
|
|
</copyright>
|
|
<title>
|
|
<ulink url="http://www.tldp.org/HOWTO/Keyboard-and-Console-HOWTO.html">The Linux keyboard and console HOWTO</ulink>
|
|
</title>
|
|
<abstract>
|
|
<para>
|
|
This note contains some information about the Linux
|
|
keyboard and console, and the use of non-ASCII characters.
|
|
</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry id="bibhpboot">
|
|
<abbrev>HP Booting</abbrev>
|
|
<title>
|
|
<ulink url="http://docs.hp.com/en/B2355-90950/ch05s01.html">HP documentation: Booting Systems</ulink>
|
|
</title>
|
|
<abstract>
|
|
<para>
|
|
This is an HP document detailing booting procedures.
|
|
</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
</bibliography>
|
|
</book>
|