.\" $NetBSD: install,v 1.23 1999/12/28 11:05:48 simonb Exp $ .\" .\" Copyright (c) 1999 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. .\" . .(Note There may be updates to this procedure available from the NetBSD/pmax web page, at .Lk http://www.netbsd.org/Ports/pmax . .Note) .Pp To install or upgrade NetBSD, 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 NetBSD kernel plus an in-memory file system of utility programs. .Pp From most convenient to least convenient, the installation methods are: .Bl -enum .It Installation from an existing NetBSD or Ultrix system by booting the install kernel from an existing root filesystem. See the .Sx Installing from an existing system section later in these INSTALL notes. .It Copying a bootable diskimage onto the beginning of a disk and installing onto that disk. See the .Sx Install via diskimage section later in these INSTALL notes. .It Booting the install kernel over the network and installing onto a local disk. See the .Sx Install via netboot install kernel section later in these INSTALL notes. .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. .It For machines with some PROMs that cannot netboot standard kernels, you will need to set up an NFS server with a diskless root filesystem for trimmed-down network install kernel and run the installation system from the NFS root filesystem. See the .Sx Install via diskless boot section later in these INSTALL notes. .El .Pp You should familiarize yourself with the console PROM environment and the hardware configuration. The PROMs on the older DECstation 2100 and 3100 use one syntax. The PROMs on the TurboChannel machines use a completely different syntax. Be sure you know how to print the configuration of your machine, and how to boot from disk or network, as appropriate. .Pp On the 2100/3100, that's .Bd -literal -offset indent boot -f rz(0,N,0)netbsd (boot from rzN) boot -f tftp() (boot diskless via TFTP) boot -f mop() (boot via MOP from an Ultrix server) .Ed On the 5000/200, the equivalent is .Bd -literal -offset indent boot 5/rzN/netbsd boot 6/tftp boot 6/mop .Ed And on other 5000 series machines, .Bd -literal -offset indent boot 3/rzN/netbsd boot 3/tftp boot 3/mop .Ed You will also need to know the total size (in sectors) and the approximate geometry of the disks you are installing onto, so that you can label your disks for the BSD fast filesystem (FFS). For most SCSI drives (including all SCSI-2 drives), the kernel will correctly detect the disk geometry. The .Ic sysinst tool will suggest these as the default. .Pp If you're installing NetBSD/pmax for the first time it's a very good idea to pre-plan partition sizes for the disks on which you're installing NetBSD. 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 NetBSD again from scratch. .Pp Assuming a classic partition scheme with separate root (`/') and /usr filesystems, a comfortable size for the NetBSD root filesystem partition is about 32M. A good initial size for the swap partition is twice the amount of physical memory in your machine (though, unlike Ultrix, there are no restrictions on the size of the swap partition that would render part of your memory unusable). The default swap size is 64Mbytes, which is adequate for doing a full system build. A full binary installation, with X11R6.3, takes about 150MB in `/usr' - a 200MB `/usr' should be ample. . .Ss2 Install\ via\ a\ NetBSD\ CDROM . You can obtain the disk image or diskless boot tar file from the .Nx \*V .Tn CDROM . .Pp To mount the CDROM from a NetBSD/pmax host, type .D1 Ic mount\ -r\ -t\ cd9660\ /dev/rz Ns Ar X Ns Ic c\ /mnt and from an Ultrix host .D1 Ic mount\ -r\ -t\ cdfs\ -o\ nodefperm,noversion\ /dev/rz Ns Ar X Ns Ic c\ /mnt .No where Ar X is the SCSI id of the CDROM. .(Note Ultrix does not have Rock Ridge extensions so leave out everything between the first and last period (.) in the paths on the CD. For example, the path .Pa NetBSD-1.3.2 would show up as .Pa NetBSD-1.2 . .Note) .Pp The diskimage file can be found on the CDROM at the following location (relative to the mount point of the CD) .Dl pmax/installation/diskimage/diskimage.gz and the diskless boot tar file can be found at .Dl pmax/installation/netboot/diskimage.tgz Once you have located these files, continue on to either .Sx Install via netboot install kernel , .Sx Install via diskless boot , .Sx Install via diskimage or .Sx Installing from an existing system section later in the INSTALL notes. . .Ss2 Installing from an existing system . .(Note If you are installing NetBSD using an existing NetBSD system that is older than NetBSD-1.4, you will need to install new bootblocks before installing NetBSD-\*V. New bootblocks are in the tar file: .Dl pmax/installation/misc/bootblocks.tgz in the NetBSD-\*V distribution. To install the new bootblocks, use the following commands: .D1 # Ic "cd / .D1 # Ic "tar xvpfz .../pmax/installation/misc/bootblocks.tgz .D1 # Ic "/usr/mdec/installboot /dev/rrzXc /usr/mdec/bootxx_ffs where X is your boot disk SCSI ID. .Note) .Pp With new NetBSD bootblocks or using the Ultrix bootloader, you can boot the kernel located in: .Dl pmax/binary/kernel/install.gz On Ultrix systems you will need to gunzip this kernel before booting it. A copy of the gunzip binary for Ultrix systems is located in: .Dl pmax/installation/misc/gunzip.ultrix .Pp Then boot using: .D1 >> Ic "boot -f rz(0,X,0)install .D1 >> Ic "boot 5/rzX/install or .D1 >> Ic "boot 3/rzX/install where X is your boot disk SCSI ID, and continue to the .Sx Once you've booted the diskimage section . .Ss2 Install via diskimage . The diskimage file is in .Dl pmax/installation/diskimage/diskimage.gz . It is shipped compressed and is around 1150 kbytes, uncompressing to exactly 2 Mbytes. .Pp To install the diskimage onto disk rzX on a NetBSD/pmax system, do: .D1 Ic disklabel -W /dev/rrzXc .D1 Ic gunzip -c diskimage.gz\ |\ dd of=/dev/rrzXc bs=10240 .Pp When installing on a disk with no NetBSD or Ultrix label, you may get a message like: .Dl rzX: WARNING: trying Ultrix label, no disk label or when installing on an old Ultrix disk, you may get a message like: .Dl rzX: WARNING: using ULTRIX partition information when issuing the "disklabel -W /dev/rrzXc" command. This can safely be ignored. .Pp Most other NetBSD ports are similar, but use rsdXc instead of rrzXc. .Pp On NetBSD/i386, the `raw disk partition' is the 'd' parttion, so do: .D1 Ic disklabel -W /dev/rsdXd .D1 Ic gunzip -c diskimage.gz\ |\ dd of=/dev/rsdXd bs=10240 .Pp On NetBSD, be sure to use .Ic disklabel -W to enable writing to the label area of the disk. If you forget this and/or use the `block' device, the dd command may silently fail. .Pp On Ultrix systems, do: .D1 Ic gunzip -c diskimage.gz\ |\ dd of=/dev/rrzXc bs=10240 A copy of the gunzip program is located in .Dl pmax/installation/misc/gunzip.ultrix if you do not already have it. .Pp On MS-DOS, use an unzip utlility, then use rawrite. .Pp Then boot using: .D1 >> Ic "boot -f rz(0,X,0)netbsd .D1 >> Ic "boot 5/rzX/netbsd or .D1 >> Ic "boot 3/rzX/netbsd where X is your boot disk SCSI ID, and continue to the .Sx Once you've booted the diskimage section. . .Ss2 Install via netboot install kernel . Booting NetBSD/pmax \*V install kernel over a network requires a BOOTP or DHCP server and a TFTP server. (These are usually all run on the same machine.) There are two basic stages to the boot: .Pp . .Bl -bullet .It The pmax PROM software sends a BOOTP request to get its own address, the address of the TFTP server and the file to download. .It It downloads the file name obtained from BOOTP, which is the install kernel, via TFTP and then executes it. .El . .Pp You will need to set up servers for BOOTP and TFTP. .Pp For the BOOTP server you need to specify the: .Pp . .Bl -bullet -compact .It hardware type (Ethernet) .It hardware address (Ethernet MAC address) .It IP address of the client .It subnet mask of the client .It address of the TFTP server .It name of the kernel loaded via TFTP .El . .Pp Here's an example for a Unix system running bootpd: .Bd -literal -offset indent myhost.mydom.com:\e :ht=ethernet:ha=08002b123456:\e :ip=192.168.1.2:sm=255.255.255.0:\e :sa=192.168.1.1:bf=install:\e :rp=/usr/export/pmax: .Ed And here's an example for a Unix system running the ISC dhcpd: .Bd -literal -offset indent host pmax { hardware ethernet 08:0:2b:12:34:56; fixed-address 192.168.1.2; option host-name "myhost.mydom.com"; filename "install"; option domain-name-servers 192.168.1.1; option broadcast-address 255.255.255.0; option domain-name "my.domain"; option root-path "/usr/export/pmax"; } .Ed .Pp For the TFTP server, You will need to copy the .Ic install.ecoff kernel to the directory used by the TFTP server. This file must be gunziped. .Pp Then boot using: .D1 >> Ic "boot -f tftp() .D1 >> Ic "boot 6/tftp or .D1 >> Ic "boot 3/tftp .Pp and continue to the .Sx Once you've booted the diskimage section. . .Ss2 Install via diskless boot . The file .Dl pmax/installation/netboot/diskimage.tar.gz contains a suitable set of files for installing on an NFS server to set up a diskless root filesytem. (It is a tar copy of the contents of an installation ramdisk filesystem contained in the install kernel.) You will need to find an NFS server, unpack the tarfile, and setup BOOTP/dhcp service for your pmax. Instructions for setting up an NFS server and diskless booting are on the NetBSD/pmax netboot webpage at .Lk http://www.netbsd.org/Ports/pmax/netboot.html .Pp Since the system install utility, sysinst, requires a read/write root, installing via diskless boot is only feasible if your NFS server exports the diskless root read-write. If this is not possible, you should install via other of the other installation procedures. .Pp Once you have booted the kernel, continue to the .Sx Once you've booted the diskimage section. . .Ss2 Once you've booted the diskimage . Once you'e booted the installation kernel you will need to select your terminal type. Use .Ic pmax for a framebuffer console, .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