First round of markup/spelling/grammar fixes.
This commit is contained in:
parent
d4621eac57
commit
4a08581493
@ -11,30 +11,30 @@ This file contains sparc64-specific installation instructions.
|
||||
|
||||
<para>This text describes how to install and boot the &arch;
|
||||
port. Users of this port are encouraged to subscribe to the
|
||||
freebsd-sparc mailing list.</para>
|
||||
&a.sparc;.</para>
|
||||
|
||||
<warning><para>The kernel and userland binaries mentioned below are
|
||||
highly experimental (for example, the kernel contains some ATA
|
||||
changes and eeprom handling code which could potentially be
|
||||
dangerous). Unless you know what you are doing and are willing to
|
||||
cope with any damage that might arise, you should probably not be
|
||||
trying this! So, use at your own risk!</para></warning>
|
||||
trying this. So, use at your own risk!</para></warning>
|
||||
|
||||
<sect2>
|
||||
<title>Preparations.</title>
|
||||
<title>Preparation</title>
|
||||
|
||||
<sect3>
|
||||
<title>Downloading Required Files</title>
|
||||
<para>If you are not installing from a CD-ROM, you will need to
|
||||
download some files via ftp (the URLs are given below). The
|
||||
<para>If you are not installing from a CDROM, you will need to
|
||||
download some files via FTP (the URLs are given below). The
|
||||
links in this document point to the main &os; FTP server.
|
||||
Please use a mirror instead if possible.</para>
|
||||
Please use a mirror site instead if possible.</para>
|
||||
</sect3>
|
||||
<sect3>
|
||||
<sect3 id="getting-to-prom-prompt">
|
||||
<title>Getting to the PROM Prompt</title>
|
||||
<para>Most &arch; systems are set up to boot automatically from
|
||||
disk; to install &os;, you need to boot over the network or from
|
||||
a CD-ROM, which requires you to break into the PROM.</para>
|
||||
disk. To install &os;, you need to boot over the network or from
|
||||
a CDROM, which requires you to break into the PROM (OpenFirmware).</para>
|
||||
|
||||
<para>To do this, reboot the system, and wait until the boot
|
||||
message appears. It depends on the model, but should look about
|
||||
@ -45,12 +45,21 @@ OpenBoot 4.2, 128 MB memory installed, Serial #51090132.
|
||||
Ethernet address 0:3:ba:b:92:d4, Host ID: 830b92d4.</screen>
|
||||
|
||||
<para>If your system proceeds to boot from disk at this point,
|
||||
you need press L1-A or Stop-A on the keyboard, or send a
|
||||
you need to press
|
||||
<keycombo action="simul">
|
||||
<keycap>L1</keycap>
|
||||
<keycap>A</keycap>
|
||||
</keycombo>
|
||||
or
|
||||
<keycombo action="simul">
|
||||
<keycap>Stop</keycap>
|
||||
<keycap>A</keycap>
|
||||
</keycombo>
|
||||
on the keyboard, or send a
|
||||
<command>BREAK</command> over the serial console (using for
|
||||
example <command>~#</command> in
|
||||
<application>tip</application> and
|
||||
<application>cu</application>, refer to their manual pages for
|
||||
more details) to get to the PROM prompt. It
|
||||
&man.tip.1; or
|
||||
&man.cu.1;) to get to the PROM prompt. It
|
||||
looks like
|
||||
<screen>ok </screen>
|
||||
or
|
||||
@ -60,24 +69,25 @@ Ethernet address 0:3:ba:b:92:d4, Host ID: 830b92d4.</screen>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>Installing from CD-ROM</title>
|
||||
<para>Place the CD-ROM into your drive, and break into the PROM as
|
||||
<title>Installing from CDROM</title>
|
||||
<para>Place the CDROM into your drive, and break into the PROM as
|
||||
described above. On the PROM prompt, type <command>boot
|
||||
cdrom</command>. The system should boot into single-user mode
|
||||
now, and you can create a root file system and install the base
|
||||
system archive as described below.</para>
|
||||
now, and you can create the disk label and install the base
|
||||
system archive as described in <xref
|
||||
linkend="creating-disk-label"> and <xref linkend="creating-root-filesystem">.</para>
|
||||
</sect2>
|
||||
<sect2>
|
||||
<title>Installing over the Network</title>
|
||||
<sect3>
|
||||
<title>Configuring the Netboot Server</title>
|
||||
|
||||
<para>A &arch; kernel is booted by having the firmware retrieve
|
||||
<para>A &os;/&arch; kernel is booted by having the firmware retrieve
|
||||
and execute a <application>loader</application>, which in turn
|
||||
fetches and executes the actual kernel. For this boot process,
|
||||
you need to set up <application>rarpd</application> and
|
||||
<application>tftpd</application> (for the firmware) and
|
||||
<application>bootpd</application> (for the
|
||||
you need to set up &man.rarpd.8; and
|
||||
&man.tftpd.8; (for the firmware) and
|
||||
&man.bootpd.8; (for the
|
||||
<application>loader</application>) on another networked
|
||||
system. The loader can fetch a kernel using TFTP or NFS. All
|
||||
of this is covered in detail below.</para>
|
||||
@ -85,38 +95,36 @@ Ethernet address 0:3:ba:b:92:d4, Host ID: 830b92d4.</screen>
|
||||
<sect4>
|
||||
<title>rarpd</title>
|
||||
|
||||
<para>You need to the Ethernet address of your &arch; system
|
||||
<para>You need to add the Ethernet address of your &os;/&arch; system
|
||||
to <filename>/etc/ethers</filename> on the netboot server.
|
||||
An entry looks like:</para>
|
||||
|
||||
<programlisting>0:3:ba:b:92:d4 your.host.name</programlisting>
|
||||
|
||||
<para>The ethernet address is usually displayed in the boot
|
||||
<para>The Ethernet address is usually displayed in the boot
|
||||
message.</para>
|
||||
|
||||
<para>Make sure <hostid>your.host.name</hostid> is in
|
||||
<filename>/etc/hosts</filename> or has a valid DNS entry (or
|
||||
use an IP). Then, start <application>rarpd</application> on
|
||||
a network interface that is on the same segment as the
|
||||
&arch; system. For example, if you were using a the first
|
||||
<devicename>xl</devicename> network card, you would type
|
||||
<command>rarpd xl0</command>.</para>
|
||||
use an IP address). Then, start &man.rarpd.8; on
|
||||
a network interface that is on the same subnet as the
|
||||
&os;/&arch; system.</para>
|
||||
|
||||
</sect4>
|
||||
|
||||
<sect4>
|
||||
<title>tftpd</title>
|
||||
|
||||
<para>Activate <application>tftp</application> in your
|
||||
<application>inetd</application> configuration by uncommenting
|
||||
the following line in your
|
||||
<para>Activate &man.tftpd.8; in your
|
||||
&man.inetd.8; configuration by uncommenting
|
||||
the following line in
|
||||
<filename>/etc/inetd.conf</filename>:</para>
|
||||
|
||||
<programlisting>tftp dgram udp wait nobody /usr/libexec/tftpd tftpd /tftpboot</programlisting>
|
||||
|
||||
|
||||
<para>You will then need to download a &os;/&arch; loader for
|
||||
<application>tftpd</application> to serve to your &arch;
|
||||
&man.tftpd.8; to serve to your &arch;
|
||||
client. There are currently two loaders to choose from:</para>
|
||||
|
||||
<itemizedlist>
|
||||
@ -127,17 +135,17 @@ Ethernet address 0:3:ba:b:92:d4, Host ID: 830b92d4.</screen>
|
||||
(<emphasis>for loading the kernel via NFS</emphasis>).</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>Copy the unpacked loader to
|
||||
<filename>/tftpboot</filename>, and name it after host IP in
|
||||
upper-case hexadecimal notation without dots (or use symlinks). For
|
||||
example, your setup may look like this, for an IP of
|
||||
<para>Copy the unpacked loader to your
|
||||
<filename>/tftpboot</filename> directory, and name it with the &os;/&arch; host's IP address in
|
||||
upper-case hexadecimal notation without dots (or use appropriately-named symbolic links). For
|
||||
example, your setup may look like this, for an IP address of
|
||||
<hostid>192.168.0.16</hostid>:</para>
|
||||
|
||||
<screen> lrwx------ 1 tmm users 9 Jul 24 17:05 /tftpboot/C0A80010 -> boot/loader
|
||||
-rw-r--r-- 1 tmm users 1643021 Oct 20 18:04 /tftpboot/boot/loader</screen>
|
||||
|
||||
<para>If you have trouble booting, it is very helpful to use
|
||||
<application>tcpdump</application> to monitor the TFTP
|
||||
&man.tcpdump.1; to monitor the TFTP
|
||||
requests. This will allow you to see the file name you need
|
||||
to use for the loader. Error replies by the TFTP server are
|
||||
most often due to incorrect file permissions.</para>
|
||||
@ -146,80 +154,89 @@ Ethernet address 0:3:ba:b:92:d4, Host ID: 830b92d4.</screen>
|
||||
<sect4>
|
||||
<title>Setting up bootpd/dhcpd</title>
|
||||
|
||||
<para>You can use either bootp or DHCP (both not both) to
|
||||
provide some parameters to the boot loader, such as a
|
||||
machine's IP address. If you are using another &os; machine
|
||||
as a netboot server, the bootp functionality is provided by
|
||||
&man.bootpd.8;, which is a part of the &os; base system.
|
||||
Several DHCP servers are provided in the &os; Ports
|
||||
Collection.</para>
|
||||
|
||||
<para>If you are going to use
|
||||
<application>bootpd</application>, create entries for you
|
||||
&arch; system in <filename>/etc/bootptab</filename>:</para>
|
||||
&man.bootpd.8;, create entries for your
|
||||
&os;/&arch; system in the server's <filename>/etc/bootptab</filename>:</para>
|
||||
|
||||
<programlisting> .default:\
|
||||
:bf="kernel":dn=local:ds=<your name server>:\
|
||||
:gw=<your gateway>:ht=ether:hd="/tftpboot/boot/kernel":hn:\
|
||||
:sa="<IP of the TFTP server>":\
|
||||
:rp="<IP of the NFS server>:<your NFS root directory>":\
|
||||
:sm=<your netmask>
|
||||
<programlisting>.default:\
|
||||
:bf="kernel":dn=local:ds=<your name server>:\
|
||||
:gw=<your gateway>:ht=ether:hd="/tftpboot/boot/kernel":hn:\
|
||||
:sa="<IP of the TFTP server>":\
|
||||
:rp="<IP of the NFS server>:<your NFS root directory>":\
|
||||
:sm=<your netmask>
|
||||
|
||||
<name of the entry>:\
|
||||
ha=<ethernet address>:ip=<IP of the &arch; system>:tc=.default</programlisting>
|
||||
<name of the entry>:\
|
||||
ha=<ethernet address>:ip=<IP of the &arch; system>:tc=.default</programlisting>
|
||||
|
||||
<para>The Ethernet address must be the same like the one in the
|
||||
<para>The Ethernet address must be the same as the one in the
|
||||
TFTP example above, but it is specified differently: also in
|
||||
hexadecimal notation, but without colons (for the example
|
||||
above, this would be 0003ba0b92d4). NFS/TFTP specific
|
||||
entries can be ommitted if the given method is not used. The
|
||||
strings given in the <command>bf</command> and
|
||||
<command>hd</command> properties are assembled to the boot
|
||||
above, this would be <literal>0003ba0b92d4</literal>). NFS/TFTP specific
|
||||
entries can be omitted if the given method is not used. The
|
||||
strings given in the <literal>hd</literal> and
|
||||
<literal>bf</literal> properties are concatenated to give the boot
|
||||
file name. If your kernel is named differently or you use
|
||||
another directory, change these values as required. If you
|
||||
are booting using NFS, remove the <command>bf</command>
|
||||
and <command>hd</command> settings (or change them to
|
||||
are booting using NFS, remove the <literal>bf</literal>
|
||||
and <literal>hd</literal> settings (or change them to
|
||||
specify the directory and file inside the NFS root hierarchy
|
||||
in which the kernel will reside). The name of the host entry
|
||||
is conventionally the host name without the domain appended.</para>
|
||||
|
||||
<para>Note that <application>bootpd</application> conflicts with
|
||||
<application>dhcpd</application>. <application>dhcpd</application>
|
||||
can also be set up accordingly, with an entry like the
|
||||
following (for <application>dhcpd</application> 2.x):</para>
|
||||
<para>For a DHCP server, add an entry similar to the following to your <filename>dhcpd.conf</filename> file. An example entry for
|
||||
<application>ISC DHCP</application> version 2 (available in
|
||||
the &os; Ports Collection as <filename
|
||||
role="package">net/isc-dhcp2</filename>) is shown
|
||||
below:</para>
|
||||
|
||||
<programlisting>host <name of the entry> {
|
||||
hardware ethernet <ethernet address>;
|
||||
option host-name "<full domain name of the system>";
|
||||
fixed-address <IP of the &arch; system>;
|
||||
always-reply-rfc1048 on;
|
||||
filename "kernel";
|
||||
option root-path "<IP of the NFS server>:<your NFS root directory>";
|
||||
hardware ethernet <ethernet address>;
|
||||
option host-name "<full domain name of the system>";
|
||||
fixed-address <IP of the &arch; system>;
|
||||
always-reply-rfc1048 on;
|
||||
filename "kernel";
|
||||
option root-path "<IP of the NFS server>:<your NFS root directory>";
|
||||
}</programlisting>
|
||||
|
||||
<para>The <command>filename</command> option corresponds to
|
||||
the concatenation of <command>bf</command> and
|
||||
<command>hd</command> above. The ethernet address is
|
||||
<para>The <literal>filename</literal> option corresponds to
|
||||
the concatenation of <literal>hd</literal> and
|
||||
<literal>bf</literal> above. The Ethernet address is
|
||||
specified in hexadecimal with colons, just like in the
|
||||
<application>rarpd</application> example
|
||||
above. <command>options root-path</command> corresponds to
|
||||
<command>rp</command>. If the name given in <command>option
|
||||
host-name</command> is resolvable, i.e. has DNS entry or is
|
||||
&man.rarpd.8; example
|
||||
above. <literal>options root-path</literal> corresponds to
|
||||
<literal>rp</literal>. If the name given in <literal>option
|
||||
host-name</literal> is resolvable, i.e. has a DNS entry or is
|
||||
associated with an address in
|
||||
<filename>/etc/hosts</filename>, the
|
||||
<command>fixed-address</command> specification can be ommitted.
|
||||
<literal>fixed-address</literal> specification can be omitted.
|
||||
</sect4>
|
||||
|
||||
<sect4>
|
||||
<title>Loading the Kernel over TFTP</title>
|
||||
|
||||
<para>Place the kernel in the directory specified using
|
||||
<command>bf</command> and <command>hd</command> in the
|
||||
<application>bootpd</application> propertiess or the
|
||||
corresponding <application>dhcpd</application> options as
|
||||
described above. That should be all that is needed.</para>
|
||||
<literal>bf</literal> and <literal>hd</literal> in the
|
||||
<application>bootpd</application> properties or the
|
||||
<application>dhcpd</application> <literal>filename</literal> as
|
||||
described above.</para>
|
||||
</sect4>
|
||||
|
||||
<sect4>
|
||||
<title>Loading the kernel over NFS</title>
|
||||
|
||||
<para>Export the root directory that was specified in bootp over
|
||||
<para>Export the root directory that was specified in <filename>/etc/bootptab</filename> over
|
||||
NFS, and place the kernel as
|
||||
<filename>boot/kernel/kernel</filename> inside it (or, if
|
||||
you use <command>bf</command> and <command>hd</command> or
|
||||
the <application>dhcpd</application> equivalent, the file
|
||||
you use <literal>bf</literal> and <literal>hd</literal> or
|
||||
the <application>dhcpd</application> <literal>filename</literal>, the file
|
||||
name you have specified this way).</para>
|
||||
</sect4>
|
||||
</sect3>
|
||||
@ -227,35 +244,37 @@ Ethernet address 0:3:ba:b:92:d4, Host ID: 830b92d4.</screen>
|
||||
<sect3>
|
||||
<title>Booting</title>
|
||||
|
||||
<para>If all goes well, you can now boot the kernel from the &arch;
|
||||
by dropping into OpenFirmware as described above. Now, just
|
||||
<para>If all goes well, you can now boot the &os; on your &arch; machine
|
||||
by dropping into the PROM prompt as described in <xref linkend="getting-to-prom-prompt">. Now, just
|
||||
type <command>boot net</command> and the system should
|
||||
boot. Specifically, the loader is retrieved via TFTP, it
|
||||
does then do a bootp request and will proceed to load the
|
||||
then does a bootp request and will proceed to load the
|
||||
kernel. Then, it should wait 10 seconds for user input and
|
||||
proceed to execute the kernel.</para>
|
||||
|
||||
<para>If something does not work in between, and you suspect
|
||||
TFTP/NFS/bootp problems, <application>ethereal</application>
|
||||
is usually a good help. The most common problems are bad file
|
||||
permissions. Also note that <application>rarpd</application>
|
||||
TFTP/NFS/bootp problems, <application>Ethereal</application>
|
||||
(available in the &os; Ports Collection as <filename role="package">
|
||||
net/ethereal</filename>)
|
||||
is usually helpful. The most common problems are related to bad file
|
||||
permissions. Also note that &man.rarpd.8;
|
||||
will not answer to packets under some circumstances, refer to
|
||||
the manual page for details.</para>
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<sect2 id="creating-disk-label">
|
||||
<title>Creating a Disk Label</title>
|
||||
|
||||
<para>The kernel supports the Sun disk label format, so you can
|
||||
label the disks you want to use with &os; from Solaris.</para>
|
||||
|
||||
<para>&os; disk labels must currently be created by hand, as
|
||||
<application>sysinstall</application> is not yet available on
|
||||
&arch;. Plese refer to the handbook for more information about
|
||||
&man.sysinstall.8; is not yet available on
|
||||
&os;/&arch;. Plese refer to the handbook for more information about
|
||||
labels and special partitions.</para>
|
||||
|
||||
<para>On &arch;, a Sun compatability label is embedded in the
|
||||
<para>On &os;/&arch;, a Sun compatability label is embedded in the
|
||||
&os; label; this is needed for the PROM to boot from disk. This
|
||||
imposes an additional restriction on the disk label format:
|
||||
partitions are required to start on a cylinder boundary.</para>
|
||||
@ -301,7 +320,7 @@ drivedata: 0
|
||||
</screen>
|
||||
|
||||
You can now add new partitions in the same format as the already
|
||||
present line. Using * in the offset field makes the procedure
|
||||
present line. Using <literal>*</literal> in the offset field makes the procedure
|
||||
easier; please refer to the manual page for more
|
||||
information.</para>
|
||||
|
||||
@ -310,7 +329,7 @@ drivedata: 0
|
||||
sectors per cylinder as shown in the information that is
|
||||
presented in the editor (1008 in the example above).</para>
|
||||
|
||||
<para>When you are done, quit the editor. This will cause the disk
|
||||
<para>When you are done, save your changes and quit the editor. This will cause the disk
|
||||
label to be written. </para>
|
||||
|
||||
<warning><para>This procedure will overwrite any disk label that
|
||||
@ -319,7 +338,7 @@ drivedata: 0
|
||||
respective partitions in the old and new label match
|
||||
exactly!</para></warning>
|
||||
|
||||
<para>Use <command>disklabel -B</command> if you want to make
|
||||
<para>Use <command>disklabel -B</command> if you want to make the
|
||||
disk bootable for &os;/&arch;.</para>
|
||||
|
||||
<warning><para>Using <command>disklabel -B</command> on a disk
|
||||
@ -337,43 +356,43 @@ drivedata: 0
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>Root File Systems</title>
|
||||
<sect2 id="creating-root-filesystem">
|
||||
<title>Creating the Root Fileystem</title>
|
||||
|
||||
<para>If you do not want to boot over the network, you will need
|
||||
<para>If you want to boot from a local disk, you will need
|
||||
to create a root file system to hold the base system binaries and
|
||||
configuration files (and optionally other file systems mounted
|
||||
in places like <filename>/usr</filename> and
|
||||
in places such as <filename>/usr</filename> and
|
||||
<filename>/var</filename>).</para>
|
||||
|
||||
<para>The kernel contains support for Sun disklabels, so you can
|
||||
use Solaris disks, which may even be newfs'ed from
|
||||
use Solaris disks, which may even be prepared using <application>newfs</application> under
|
||||
Solaris. NetBSD disk labels and file systems are also usable
|
||||
from &os;.</para>
|
||||
|
||||
<warning><para><emphasis>DO NOT</emphasis> run Solaris
|
||||
<warning><para>Do <emphasis>not</emphasis> run Solaris
|
||||
<application>fsck</application> on file systems
|
||||
modified by FreeBSD, it will damage the file
|
||||
permissions!</para></warning>
|
||||
modified by &os;. Doing so will damage the file
|
||||
permissions.</para></warning>
|
||||
|
||||
<para>To create file systems and to install the base system, boot
|
||||
from CD-ROM or via NFS and create a disk label as described
|
||||
above.
|
||||
from CDROM or via NFS and create a disk label as described
|
||||
in <xref linkend="creating-disk-label">.
|
||||
|
||||
<para>When booting the first time and you have not entered your
|
||||
root parition into <filename>/etc/fstab</filename> yet, you may
|
||||
need to specify your root partition partition on the mountroot
|
||||
root partition into <filename>/etc/fstab</filename> yet, you may
|
||||
need to specify your root partition on the mountroot
|
||||
prompt when booting (use a format like
|
||||
<command>ufs:<disk><parition></command>, i.e. leave the
|
||||
<command>ufs:<disk><partition></command>, i.e. leave the
|
||||
slice specification out). If the kernel does automatically
|
||||
attempt to boot from another file system, press a key a key
|
||||
other than enter on the <application>loader</application> prompt:
|
||||
attempt to boot from another file system, press a key
|
||||
other than <keycap>Enter</keycap> on the <application>loader</application> prompt:
|
||||
<screen>Hit [Enter] to boot immediately, or any other key for command prompt.</screen>
|
||||
Then, boot the kernel using <command>boot -a -s</command>, which
|
||||
will cause the kernel to ask you for the root partition and
|
||||
then boot into single-user mode. Once the root file system has
|
||||
been entered into <filename>/etc/fstab</filename>, it should be
|
||||
automatically mounted as <filename>/</filename>on the next
|
||||
automatically mounted as <filename>/</filename> on the next
|
||||
boot.</para>
|
||||
|
||||
<para>If you are booting over the network (via NFS), the above
|
||||
@ -382,24 +401,24 @@ drivedata: 0
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>Base System</title>
|
||||
<sect2 id="installing-base-system">
|
||||
<title>Installing the Base System</title>
|
||||
|
||||
<para>A <application>tar</application> archive which contains
|
||||
<para>A &man.tar.1; archive containing
|
||||
almost all binaries and configuration files from the base system
|
||||
is available at
|
||||
<ulink
|
||||
url="ftp://ftp://ftp.FreeBSD.org/pub/FreeBSD/development/sparc64/distrib.tar.gz"></ulink>.
|
||||
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/development/sparc64/distrib.tar.gz"></ulink>.
|
||||
|
||||
Unpack it to the directory that will serve as root directory of
|
||||
the &arch; system (on the NFS server when booting over the
|
||||
Unpack it to the directory that will serve as the root directory of
|
||||
the &os;/&arch; system (on the NFS server when booting over the
|
||||
network).</para>
|
||||
|
||||
<para>This should be sufficient to boot into multi-user mode. The
|
||||
system can then be configured like any other &os;
|
||||
system. You probably will want to edit
|
||||
<filename>/etc/fstab</filename> and
|
||||
<filename>/etc/rc.conf</filename> and to set a root password
|
||||
<filename>/etc/rc.conf</filename> and set a <username>root</username> password
|
||||
first.</para>
|
||||
|
||||
<para>Note that some programs from the base system may not be
|
||||
|
Loading…
Reference in New Issue
Block a user