.\" $NetBSD: install,v 1.5 2002/07/26 15:41:56 rafal Exp $ .\" .\" Copyright (c) 1999-2002 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. .\" . .Pp To install or upgrade .Nx , you need to first boot an installation program and then interact with the screen-menu program .Ic sysinst . The installation program actually consists of the .Nx kernel plus an in-memory file system of utility programs. .Pp The installation methods are: .(enum Installation from an existing .Nx or .Tn IRIX system by booting the install kernel from an existing file system. .if 0 \{\ .It Copying a bootable diskimage onto the beginning of a disk and installing onto that disk. See the .Sx Diskless installation section later in these INSTALL notes. .\} .It Installation in a diskless environment. This means that you will install your entire system onto a remotely shared disk. .It Booting the install kernel over the network and installing onto a local disk. The beginning of the procedure is similar to diskless installation, but you will eventually end up writing the system onto your local disk. .if 0 \{\ .It Using a helper machine with a SCSI controller to copy the bootable diskimage onto the beginning of a disk, and moving the disk to the target machine. See the .Sx Install via diskimage section later in these INSTALL notes. .\} .enum) .Pp You should familiarize yourself with the console PROM environment and the hardware configuration. A good place to study PROM tricks is the IRIX "prom" manual page. Be sure you know how to print the configuration of your machine, and how to boot from disk or network, as appropriate. .Pp To boot from disk, use: .Pp .(bullet .Ic "All machine types:" .Pp .Dl ">> setenv systempartition scsi(0)disk(X)rdisk(0)partition(8)" .Dl ">> setenv osloadpartition scsi(0)disk(X)rdisk(0)partition(0)" .Dl ">> setenv osloadfilename netbsd" .Dl ">> setenv osloadoptions auto" .Dl ">> setenv osloader boot" .bullet) .Pp For all drives (including all SCSI-2 drives), the kernel should correctly detect the disk geometry. .Pp If you're installing .Nx*M for the first time it's a very good idea to pre-plan partition sizes for the disks onto which you're installing .Nx . Changing the size of partitions after you've installed is difficult. If you do not have a spare bootable disk, it may be simpler to re-install .Nx again from scratch. .Pp To be able to boot from local disk an SGI Volume Header partition is required. This special partition is accessed by the PROM to load the .Nx*M boot program. The partition should be about 2 MB in size, but can be reduced somewhat. The minimum size can approach 150k, but this doesn't leave room for upgrade boot programs. . .Ss2 Install via a bootable CD-ROM . The .Nx*M CD-ROM is not ISO-formatted. Since the older SGI PROMs do not understand ISO/CD-9660 formats, the CD-ROM image is generated with an SGI Volume Header and an FFS-formatted (BSD4.2) partition for the distribution. Furthermore, since the file system is FFS, the CD cannot be mounted under IRIX. .Pp To install from a .Nx*M CD-ROM, follow the procedure above for setting the PROM environment for SystemPartition, OSLoadPartition, OSLoader and OSLoadFilename. The SCSI and DISK values used should be for your attached CD-ROM drive, where .Ar X is the SCSI-ID of the CD-ROM. . Using the PROM command-line interface, you can boot the CD-ROM installation kernel as follows: .Pp .(tag 12n -offset indent -compact .It Ic ">> boot" .tag) .Pp .Ss2 Installation for diskless configurations This section assumes you know how to configure DHCP, TFTP, and NFS services on your server. .Pp .(enum Place the kernel into the TFTP server's download area. If the kernel has a .Dq .gz suffix, you must first uncompress it using the .Pa gunzip program. You must also decide which kernel you need to boot. .\" Because of differences in SGI hardware between different machines, .\" the kernel load addresses differ. .\" You will need GENERIC_INDY for the Indy and Indigo2, .\" while GENERIC should be enough for the O2. If your PROM can load ELF kernels directly (see the .Sx Preparing Your System for NetBSD installation section above), the GENERIC_INDY kernel will be sufficient. Otherwise, you will need the ECOFF version of the GENERIC_INDY kernel ( .Pa netbsd.ecoff-GENERIC_INDY ). .Pp .Dl server# Ic gunzip netbsd-GENERIC_INDY.gz .Dl server# Ic cp netbsd-GENERIC_INDY /tftpboot/netbsd-sgimips or .Dl server# Ic gunzip netbsd.ecoff-GENERIC_INDY.gz .Dl server# Ic cp netbsd.ecoff-GENERIC_INDY /tftpboot/netbsd-sgimips . .Pp Note that your DHCP server must be configured to specify this file as the boot file for the client. .It Unpack the distribution sets into the client's root directory on the server. .Pp .Dl server# Ic cd /export/client/mipseb .Dl server# Ic gzcat .../base.tgz | tar xvpf - .Dl server# Ic gzcat .../etc.tgz | tar xvpf - .Dl "[ repeat for all sets you wish to unpack ]" .It Load the kernel from the TFTP server: .Pp .Dl ">> setenv SystemPartition bootp():" .Dl ">> setenv netaddr your.ip.here.please" .Dl ">> boot" .enum) .Pp The installation of your diskless .Nx*M system is now complete! You may now skip ahead to any post-installation instructions. .Pp .Ss2 Installation to local disk from the network This section is a subset of the above section, and also assumes that you know how to configure DHCP and TFTP services on your server. .Pp .(enum Place the install kernel into the TFTP server's download area. Just as above, you need to place the correct bootable kernel into the TFTP server's download area. However, instead of a GENERIC_INDY kernel, you must use the correct INDY_INSTALL kernel. This kernel contains a ramdisk with the installation tools and will allow you to proceed with installation without further setup. .Pp If the kernel has a .Dq .gz suffix, you must first uncompress it using the .Pa gunzip program. As above, you must choose either the ELF (netbsd-INDY_INSTALL) or ECOFF (netbsd-INDY_INSTALL.ecoff) kernel. .Pp Note that your DHCP server must be configured to specify this file as the boot file for the client. .It Load the kernel from the TFTP server: .Pp .Dl ">> setenv SystemPartition bootp():" .Dl ">> setenv netaddr your.ip.here.please" .Dl ">> boot" .enum) .Pp .Ss2 Once you've booted the diskimage . Once you've booted the installation kernel you will need to select your terminal type. Use .\" .Ic iris-ansi .\" for an SGI graphics console (Not currently supported), .Ic vt100 for a serial console with a vt100-compatible terminal, or .Ic xterm or .Ic xterms for a .Xr tip 1 or .Xr cu 1 connection running in an .Xr xterm 1 . .Pp The system will then start the .Ic sysinst program. .so ../common/sysinst