NetBSD/distrib/notes/sparc/install
mbw b03b643f37 Major overhaul. Cleaned up a lot of explanations, clarified instructions,
provided more detail when necessary and removed extraneous instructions.

hardware: totally revamped to be more readable and include all known
supported hardware, now matches htdocs/Ports/sparc/hardware.html

install: new section on CD-ROM, netboot has instructions on setting up a
NetBSD server, removed disklabel instructions (miniroot/sysboot's
instructions are clear enough and have error-checking anyways)

prep: reorganized, put in cleaner explanation of SCSI target remapping on
OpenBOOT PROM 1 machines, put in instructions on how to figure out names
ROM uses for SCSI device, put in info about 100BaseTX network cards

upgrade: now points to ../common/upgrade
2000-10-21 04:49:26 +00:00

408 lines
16 KiB
Plaintext

.\" $NetBSD: install,v 1.31 2000/10/21 04:49:26 mbw Exp $
.\"
.\" Copyright (c) 1999, 2000 The NetBSD Foundation, Inc.
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\" 3. All advertising materials mentioning features or use of this software
.\" must display the following acknowledgement:
.\" This product includes software developed by the NetBSD
.\" Foundation, Inc. and its contributors.
.\" 4. Neither the name of The NetBSD Foundation nor the names of its
.\" contributors may be used to endorse or promote products derived
.\" from this software without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
.
Installing
.Nx
is a relatively complex process, but if you have
this document in hand it shouldn't be too much trouble.
.Pp
There are several ways to install
.Nx
onto your system. The easiest way is to use the `miniroot.fs' image copied to
your local disk's swap partition or a scratch drive.
If your sparc is hooked up in a network, you may configure another
.Ux
machine as a netboot server for your sparc. Alternatively, there is a pair of
floppy images that will boot your system and run the installer.
.Pp
For more information on the commands and variables available in
the OpenBoot PROM (present in all sun4c and sun4m machines), go to
.Lk http://docs.sun.com
and search for ``openboot reference'' (without quotes).
.Pp
.Sx Installing NetBSD by placing a bootable filesystem on a partitioned hard drive
.Pp
.Sx Installing NetBSD by using a bootable CD-ROM
.Pp
.Sx Installing NetBSD by using the bootable floppies
.Pp
.Sx Installing NetBSD by using a netboot setup
.
.Ss2 Installing NetBSD by placing a bootable filesystem on a partitioned hard drive
.
.Pa installation/miniroot/miniroot.fs.gz
is a compressed, self-contained
.Nx
filesystem holding all utilities necessary to install
.Nx
onto a disk attached to your system. It is distributed as a compressed plain
file you will transfer to a raw disk partition. You will then boot
this installer using the appropriate PROM command. The simplest case is
where you place the `miniroot.fs' filesystem on the swap partition of
your disk. Alternatively, you can place it on any
other unused partition on any disk (such as a Zip disk). Be forewarned
that you will not be able to install
.Nx
onto the partition that contains the `miniroot.fs' as this partition is
needed during the install process.
.Pp
Loading the filesystem onto a raw partition is straightforward.
First, download miniroot.fs to your system. Next, reboot in single-user
mode (i.e. `boot -s') to ensure that your system will not be swapping.
Finally, place the miniroot.fs on your partition of choice. On
.Nx
or SunOS the commands are:
.Pp
.Dl # Ic "gunzip miniroot.fs.gz"
.Dl # Ic "dd if=miniroot.fs of=/dev/rsd0b bs=4k conv=sync"
Here, `/dev/rsd0b' is assumed to be your swap partition. If you decide to
place miniroot.fs on a non-swap partition, it will overwrite all of the
contents of that partition, but you will not need to reboot into single-user
mode to write it.
.Pp
After transferring the filesystem to disk, bring the system down by:
.Dl # Ic halt
.Pp
Then boot the installer by typing the appropriate
command at the PROM prompt (this example is for the swap partition):
.Dl \*> Ic b sd(,,1)netbsd -s Li # for sunmon
.Dl ok Ic boot sd(,,1)netbsd -s Li # for OpenBOOT PROM 1
.Dl ok Ic boot disk:b netbsd -s Li # for OpenBOOT PROM 2
.Pp
The monitor boot command will load the
.Nx
kernel contained in the
filesystem image. After the initial probe messages you'll be
asked to start the install or upgrade procedure. Proceed to the section
.Sx Running the installation scripts.
below.
.
.Ss2 Installing NetBSD by using a bootable CD-ROM
.
If you wish to burn a CD-R containing a bootable NetBSD installation,
then you can either burn the prepared disk image in
.Pa installation/cdrom/netbsd-sparc.iso
or create your own.
If you wish to create your own, you should follow the directions on the
.Nx
Bootable CD-ROM HOW-TO at:
.Lk http://www.netbsd.org/Documentation/bootcd.html#sparcimage
.Pp
Once you have downloaded
.Pa netbsd-sparc.iso
or created your own disk image, then you need to burn it to a CD-R.
.Pp
The CD-ROM attached to your sparc must support 512 byte sectors to be
bootable.
All Sun brand CD-ROMs will work, as well as many other manufacturers. See
the Sun CD-ROM FAQ:
.Lk http://saturn.tlug.org/suncdfaq/
.Pp
Sun sets their CD-ROM drives to SCSI ID 6. We recommend you do the same.
.Pp
Boot the installer by typing the appropriate command at the PROM prompt:
.Dl \*> Ic b sd(,30,) Li # for sunmon
.Dl ok Ic boot sd(,30,) Li # for OpenBOOT PROM 1
.Dl ok Ic boot cdrom Li # for OpenBOOT PROM 2
.Pp
After the initial probe messages you'll be asked to start the
install or upgrade procedure. Proceed to the section
.Sx Running the installation scripts.
below.
.
.Ss2 Installing NetBSD by using the bootable floppies
.
The
.Nx
install floppies only work on the sun4c and sun4m machines.
Making the install floppies is fairly straightforward.
.Pp
.Nx
and SunOS use the same commands. First, get two 1.44 MB
floppy disks and format them either using the
.Xr fdformat 8
command or a PC.
.Dl # Ic "fdformat"
Be sure that the `fdformat' command completes successfully before proceeding;
on
.Nx
success is a string of all `V's, and on SunOS success is a string of
all `.'s.
.Pp
Next, transfer the two floppy images (
.Pa installation/floppy/boot.fs.gz
and
.Pa installation/floppy/instfs.fs.gz
) to the disks you just formatted.
You can do this step from
.Nx
, SunOS, or a Windows machine using
.Nm rawrite.exe
(available in the NetBSD/i386 distribution).
Insert the first floppy and run the following commands:
.Dl # Ic "gunzip boot.fs.gz"
.Dl # Ic "dd if=boot.fs of=/dev/rfd0a bs=36k"
.Dl # Ic "eject floppy"
.Pp
Insert the second floppy and run the following commands:
.Dl # Ic "gunzip instfs.fs.gz"
.Dl # Ic "dd if=instfs.fs of=/dev/rfd0a bs=36k"
.Dl # Ic "eject floppy"
.Pp
Be sure to label your floppies so you can later identify them.
.Pp
Insert the floppy labeled `boot.fs' into your sparc.
From the OpenBOOT prompt, boot the floppy with the following command:
.Dl ok Ic boot fd(,,1) # for OpenBOOT PROM 1
.Dl ok Ic boot /fd # for OpenBoot PROM 1 (alternate)
.Dl ok Ic boot floppy # for OpenBOOT PROM 2
.Pp
After the initial probe messages you'll be asked to insert the floppy
labeled "NetBSD instfs". After the installation tools have been loaded
from the `instfs' floppy, you'll be asked to start
the install or upgrade procedure. Proceed to the section
.Sx Running the installation scripts.
below.
.
.Ss2 Installing NetBSD by using a netboot setup
.
First, you must setup a netboot server to provide the services and files
your client needs. If you are using a
.Nx
system as the netboot server, have a look at the
.Xr diskless 8
manual page for a more detailed guide on how to proceed with this.
If the server runs another operating system, you should consult the
.Nx
Diskless HOW-TO, which will walk you through the steps necessary to
configure a netboot server on a variety of platforms.
.Lk http://www.netbsd.org/Documentation/network/netboot/
.Pp
This section will briefly describe what happens during a sparc
netboot, and the next section will give a brief set of directions on how
to set up your server. Your sparc initially broadcasts a RARP request, and
expects a server
to reply with your client's IP address. Next, it downloads a second stage
bootstrap program via TFTP from the server
that responded to the RARP request. It will look for a filename composed of
the machine's IP address followed by the machine's architecture, separated
by a period. For example, a sun4c machine which has been assigned IP
address 130.115.144.11, will make an TFTP request for `8273900B.SUN4C'.
This file is a symbolic link to the second-stage
boot program, which should be located in a place where the TFTP daemon
can find it (remember, many TFTP daemons run in a chroot'ed environment).
.Pp
The boot program to use is
.Pa installation/netboot/boot.net
Alternatively, you can find
the bootstrap program in
.Pa /usr/mdec/boot.net
in the
.Nx*M
distribution.
.(Note
The only difference between
.Pa /usr/mdec/boot.net No and Pa /usr/mdec/boot
is in the a.out header, which has been magically
transformed in a way that makes it usable on all versions of Sparc PROMs.
.Note)
.Pp
After the boot program has been loaded into memory and given control by
the PROM, it starts locating the machine's remote root directory through
the BOOTPARAM protocol. First a BOOTPARAM WHOAMI request is broadcast
on the local net. The answer to this request should contain
the client's name. This name is used in next step, a BOOTPARAM GETFILE
request -- sent to the server that responded to the WHOAMI request --
requesting the name and address of the machine that will serve the client's
root directory, as well as the path of the client's root on that server.
.Pp
Finally, this information is used to issue a REMOTE MOUNT
request to the client's root filesystem server, asking for an NFS file
handle corresponding to the root filesystem. Once the NFS mount is complete, the boot
program starts reading from the remote root filesystem in search of the
kernel which is then read into memory.
.Pp
.
.Ss2 Configuring your netboot server
.
Follow this section to configure a
.Nx
machine as your netboot server. We will use ``CC:CC:CC:CC:CC:CC'' as the
MAC address (ethernet hardware address) of your netboot client machine
that you wish to install
.Nx
on. We use ``192.168.1.10'' as the IP address of your client, and
``client.test.net'' as the name. The server name is ``server.test.net'',
and the path on the server to the NFS exported directory is
.Pa /export/client/root
although you may choose to use a different path. Create an
.Pa /etc/ethers
file with the following line:
.Dl "CC:CC:CC:CC:CC:CC client"
Add your client to the server's
.Pa /etc/hosts
file:
.Dl "192.168.1.10 client"
If rarpd is currently running, restart it (kill -HUP), otherwise start
rarpd:
.Dl # Ic "/usr/sbin/rarpd -a"
Next, create
.Pa /etc/bootparams
with the following line:
.Dl "client root=server:/export/client/root"
If rpc.bootparamd is currently running, restart it (kill -HUP), otherwise
start rpc.bootparamd:
.Dl # Ic "/usr/sbin/rpc.bootparamd"
Now, make sure the bootloader in
.Pa /tftpboot
is linked to, or a copy of,
.Pa boot.net
and is named appropriately for your client
(in this case, it would be C0A8010A.SUN4C).
.Dl # Ic "cp boot.net /tftpboot"
.Dl # Ic "ln -s /tftpboot/boot.net /tftpboot/C0A8010A.SUN4C"
Now, you should edit
.Pa /etc/inetd.conf
and make sure that the line starting with
.Pa tftp
is uncommented. You will need to kill -HUP the inetd process to enable
tftp if this line was previously commented out. The next
step is to set up NFS exports. Create the directory you are exporting for
the netboot client:
.Dl # Ic "mkdir -p /export/client/root"
Put the following line in
.Pa /etc/exports
to enable NFS sharing:
.Dl "/export/client/root -maproot=root client.test.net"
If your server is currently running NFS services, you only need to kill
-HUP the mountd process. Otherwise, you need to run:
.Dl # Ic "/sbin/mountd"
.Dl # Ic "/sbin/nfsd -tun 4"
Now, you need to place the files your netboot client will need.
As noted above in the section
.Pa Preparing your System for NetBSD Installation
you have several options when choosing a location to store the
distribution
filesets. However, the easiest way is to put the distribution
files into the exported directory for your client on the server.
.Dl # Ic "mv *.tgz /export/client/root"
Your client will need a kernel to boot (use
.Pa binary/kernel/netbsd.GENERIC.gz
).
.Dl # Ic "gunzip netbsd.GENERIC.gz"
.Dl # Ic "mv netbsd.GENERIC /export/client/root/netbsd"
Your client will need installation tools (use
.Pa installation/netboot/miniroot.tgz
).
.Dl # Ic "gunzip miniroot.tgz"
.Dl # Ic "cd /export/client/root"
.Dl # Ic "tar -xf miniroot.tar"
Now, netboot your sparc from the
server by entering the appropriate `boot' command at the monitor prompt.
Depending on the PROM version in your machine, this command takes one of
the following forms:
.Dl \*> Ic b le()netbsd Li # for sunmon
.Dl ok Ic boot le()netbsd Li # for OpenBOOT PROM 1
.Dl ok Ic boot net netbsd Li # for OpenBOOT PROM 2
.Pp
After the initial probe messages you'll be asked to start the
install or upgrade procedure. Proceed to the section
.Sx Running the installation scripts.
below.
.
.Ss2 Running the installation scripts
.
If you booted your system using the `miniroot.fs' image or the CD-ROM image,
you will be presented with a choice of two installation methods: a new
full-screen `sysinst' program, or the traditional script-based `miniroot'
program. The `sysinst' program is easier to use, but the `miniroot' program
is more flexible. Both of these installation methods will follow the same
set of procedures and will fully install
.Nx
on your sparc.
.Pp
You will frequently be asked for confirmation before the system proceeds
with each phase of the installation process.
.Pp
Occasionally, you will have to provide a piece of information such as the
name of the disk you want to install on, partitioning information,
or IP addresses and domain names
you want to assign. If your system has more than one disk, you may want
to look at the output of the
.Xr dmesg 8
command to see how your disks
have been identified by the kernel.
.(Note
If you repartition a hard drive, be certain that every partition starts
on a cylinder boundary for compatability with the sparc ROM.
.Note)
.Pp
The installation script goes through the following phases:
.(bullet -compact
determination of the disk on which to install
.Nx
.It
checking/creation of the partition information on the disk
.It
creating and mounting the
.Nx
filesystems
.It
setup of network configuration
.It
extraction of the distribution tar files
.It
installation of bootstrap programs
.bullet)
.Pp
Now try a reboot. Initially I'd suggest you "boot sd()netbsd -bs", then
try multiuser after that. If you boot single-user the
.Nx
incantation to make the root filesystem writable is
.Dl netbsd# Ic mount -u /dev/sd0a /
Your PROM might have been setup to instruct the boot program to load
a file called "vmunix". On OpenBOOT PROM systems you can change it to load
"netbsd" instead using the following commands:
.Pp
On OpenBOOT PROM 1:
.Dl ok Ic setenv boot-from sd(0,0,0)netbsd
.Pp
On OpenBOOT PROM 2:
.Dl ok Ic setenv boot-file netbsd
.Dl ok Ic setenv boot-device disk:a
.Pp
.Em Congratulations ,
you have successfully installed
.Nx \*V.