ralph's update for 3100 install, plus edits for same by kirk
[unix-history] / usr / src / share / doc / smm / 01.setup / 2.t
index 4e1ee6d..a665749 100644 (file)
@@ -3,7 +3,7 @@
 .\"
 .\" %sccs.include.redist.roff%
 .\"
 .\"
 .\" %sccs.include.redist.roff%
 .\"
-.\"    @(#)2.t 6.1 (Berkeley) %G%
+.\"    @(#)2.t 6.8 (Berkeley) %G%
 .\"
 .ds lq ``
 .ds rq ''
 .\"
 .ds lq ``
 .ds rq ''
@@ -24,51 +24,55 @@ In either case, it is highly desirable to read and understand
 the remainder of this document before proceeding.
 .NH 2
 Bootstrapping from the tape
 the remainder of this document before proceeding.
 .NH 2
 Bootstrapping from the tape
-.PP
+.LP
 The set of files on the distribution tape are as follows:
 The set of files on the distribution tape are as follows:
-.DS
-1) standalone copy program
-2) disk image of the root filesystem
-3) dump image of the root filesystem
-4) tar image of the /var filesystem
-5) tar image of the /usr filesystem
-6) tar image of the rest of /usr/src
-7) tar image of /usr/src/sys
-8) (8mm tape only) tar image of /usr/src/X11R5
-.DE
-.PP
+.IP 1)
+dd (HP300 and DECstation) or dump (SPARC) image of the root filesystem
+.IP 2)
+tar image of the
+.Pn /var
+filesystem
+.IP 3)
+tar image of the
+.Pn /usr
+filesystem
+.IP 4)
+tar image of
+.Pn /usr/src/sys
+.IP 5)
+tar image of the rest of
+.Pn /usr/src
+.IP 6)
+(8mm tape only) tar image of
+.Pn /usr/src/X11R5
+.LP
 The tape bootstrap procedure used to create a
 working system involves the following major steps:
 .IP 1)
 Transfer a bootable root filesystem from the tape to a disk
 and get it booted and running.
 .IP 2)
 The tape bootstrap procedure used to create a
 working system involves the following major steps:
 .IP 1)
 Transfer a bootable root filesystem from the tape to a disk
 and get it booted and running.
 .IP 2)
-Build and restore the /var and /usr file systems from tape
-with \fItar\fP\|(1).
+Build and restore the
+.Pn /var
+and
+.Pn /usr
+filesystems from tape with
+.Xr tar (1).
 .IP 3)
 Extract the system and utility source files as desired.
 .PP
 .IP 3)
 Extract the system and utility source files as desired.
 .PP
-The details of the first step varies between architectures.
-The specific steps for the HP300, Sparc, and DecStation are
+The following sections describe the above steps in detail.
+The details of the first step vary between architectures.
+The specific steps for the HP300, SPARC, and DECstation are
 given in the next three sections respectively.
 given in the next three sections respectively.
-You should follow the specific instructions for your
-particular architecture.
-.PP
-The following sections describe the above steps in detail.  In these
-sections references to disk drives are of the form \fIxx\fP\|(\fId\fP,
-\fIp\fP) and references to files on tape drives are of the form
-\fIxx\fP\|(\fIc\fP,\fId\fP, \fIp\fP)
-where \fIxx\fP are device types described in section 1.2,
-\fIc\fP is the (optional) controller unit number,
-\fId\fP is the drive unit number, and \fIp\fP is a disk partition
-or tape file offset numbers as described in section 1.2.
-For the sake of simplicity, all disk examples will use the disk type
-``\*(Dk'' and all tape examples will similarly use ``\*(Mt'';
-the examples assume drive 0, partition 0.
-Commands you are expected to type are shown in italics, while that
+You should follow the instructions for your particular architecture.
+In all sections,
+commands you are expected to type are shown in italics, while that
 information printed by the system is shown emboldened.
 .NH 2
 Booting the HP300
 information printed by the system is shown emboldened.
 .NH 2
 Booting the HP300
+.NH 3
+Supported hardware
 .LP
 The hardware supported by \*(4B for the HP300/400 is as follows:
 .TS
 .LP
 The hardware supported by \*(4B for the HP300/400 is as follows:
 .TS
@@ -127,87 +131,185 @@ T}
 Major items not supported include the 310 and 332 CPUs, 400 series machines
 configured for Domain/OS, EISA and VME bus adaptors, audio, the centronics
 port, 1/2" tape drives (7980), CD-ROM, and the PVRX/TVRX 3D graphics displays.
 Major items not supported include the 310 and 332 CPUs, 400 series machines
 configured for Domain/OS, EISA and VME bus adaptors, audio, the centronics
 port, 1/2" tape drives (7980), CD-ROM, and the PVRX/TVRX 3D graphics displays.
+.NH 3
+Standalone device file naming
+.LP
+The standalone system device name syntax on the HP300 is of the form:
+.DS
+xx(a,c,u,p)
+.DE
+where
+\fIxx\fP is the device type,
+\fIa\fP specifies the adaptor to use,
+\fIc\fP the controller,
+\fIu\fP the unit, and
+\fIp\fP a partition.
+The \fIdevice type\fP differentiates the various disks and tapes and is one of:
+``rd'' (HP-IB CS80 disks),
+``ct'' (HP-IB CS80 cartridge tape),
+``sd'' (SCSI-I disks) or
+``st'' (SCSI-I tapes).
+The \fIadaptor\fP field is a logical HP-IB or SCSI bus adaptor card number.
+This will typically be
+0 for SCSI disks and tapes,
+0 for devices on the ``slow'' HP-IB interface (usually tapes) and
+1 for devices on the ``fast'' HP-IB interface (usually disks).
+To get a complete mapping of physical (select-code) to logical card numbers
+just type a ^C at the standalone prompt.
+The \fIcontroller\fP field is the disk or tape's target number on the
+HP-IB or SCSI bus.
+For SCSI the range is 0 to 6 (7 is the adaptor address) and
+for HP-IB the range is 0 to 7.
+The \fIunit\fP field is unused and should be 0.
+The \fIpartition\fP field is interpreted differently for tapes
+and disks: for disks it is a disk partition (in the range 0-7),
+and for tapes it is a file number offset on the tape.
+Thus, partition 2 of a SCSI disk drive at target 3 on SCSI bus 1
+would be ``sd(1,3,0,2)''.
+If you have only one of any type bus adaptor, you may omit the adaptor
+and controller numbers;
+e.g. ``sd(0,2)'' could be used instead of ``sd(0,0,0,2)''.
+The following examples always use the full syntax for clarity.
+.NH 3
+The Procedure
 .LP
 The basic steps involved in bringing up the HP300 are as follows:
 .IP 1)
 .LP
 The basic steps involved in bringing up the HP300 are as follows:
 .IP 1)
-Obtain a new disk and format it, if necessary.
+Obtain a second disk and format it, if necessary.
 .IP 2)
 .IP 2)
-Copy a root file system from the
+Copy a root filesystem from the
 tape onto the beginning of the disk.
 .IP 3)
 Boot the UNIX system on the new disk.
 .IP 4)
 tape onto the beginning of the disk.
 .IP 3)
 Boot the UNIX system on the new disk.
 .IP 4)
-If optimal performance is desired, restore the root file system
-using \fIrestore\fP\|(8).
+(Optional) Build a root filesystem optimized for your disk.
 .IP 5)
 .IP 5)
-Label the disks with the \fIdisklabel\fP\|(8) program.
-.NH 3
+Label the disks with the
+.Xr disklabel (8)
+program.
+.NH 4
 Step 1: formating a disk.
 .PP
 Step 1: formating a disk.
 .PP
-For your first system you will have to obtain a formatted disk.
+For your first system you will have to obtain a formatted disk
+of a type given in the ``supported hardware'' list above.
+Since most HP disk drives, with the exception of optical media,
+come pre-formatted there should be nothing to do.
+If necessary, you can format a disk under HP-UX using the
+.Xr mediainit (1m)
+program.
 Once you have \*(4B up and running on one machine you can use
 Once you have \*(4B up and running on one machine you can use
-the \fIscsiformat\fP\|(8) program to format additional disks.
-.NH 3
-Step 2: copying the root file system from tape to disk
-.PP
-There are two approaches to getting the root file system from tape to disk.
-If you have two disks, the easiest approach is to boot your vendor
-operating system from the first disk, and then use \fIdd\fP\|(1)
-to copy the root filesystem image from the tape to the beginning of the
-second disk. 
-The root filesystem image is the second file on the tape. 
+the
+.Xr scsiformat (8)
+program to format additional disks.
+.NH 4
+Step 2: copying the root filesystem from tape to disk
+.PP
+There are two approaches to getting the root filesystem from tape to disk.
+If you have an extra disk, the easiest approach is to use
+.Xr dd (1)
+under HP-UX to copy the root filesystem image from the tape to the beginning
+of the second disk.
+For HPs, the root filesystem image is the first file on the tape.
 It includes a disklabel and bootblock along with the root filesystem.
 It includes a disklabel and bootblock along with the root filesystem.
-The set of commands to copy it from the tape to the beginning of the disk are:
+An example command to copy the image from tape to the beginning of a disk is:
 .DS
 .DS
-mt -f /dev/nr\*(Mt0 fsf 1
-dd if=/dev/nr\*(Mt0 of=/dev/r\*(Dk1c bs=20b
+.ft CW
+dd if=/dev/rmt/0m of=/dev/rdsk/1s0 bs=20b
 .DE
 .DE
+The actual special file syntax may vary depending on unit numbers and
+the version of HP-UX that is running.
+Consult the HP-UX
+.Xr mt (7)
+and
+.Xr disk (7)
+man pages for details.
 .PP
 If you have only a single machine with a single disk,
 you need to use the more difficult approach of booting a
 .PP
 If you have only a single machine with a single disk,
 you need to use the more difficult approach of booting a
-standalone copy program, and using that to copy the 
+standalone copy program, and using that to copy the
 root filesystem image from the tape to the disk.
 root filesystem image from the tape to the disk.
-Disk 0 is normally used for
-this operation; this is reflected in the example procedure.  Another disk
-may be substituted if necessary, although several modifications will
-be necessary to create special files for the alternate disk.
-\fICopy\fP is loaded from the first file on the tape, and then:
+If your distribution is on 8mm tape and you have an 8mm drive attached
+to the target machine, you should be able to boot from the distribution
+tape directly.
+If you have the 9-track distribution or only have a CS80 cartridge or
+4mm DAT drive, you will need to create your own boot tape.
+To do this, you need to extract the first file of the distribution tape
+(the root image), copy it over to a machine with a supported HP tape
+drive and then create a bootable cartridge or DAT tape.
+For example:
+.DS
+.ft CW
+dd if=/dev/rst0 of=bootimage bs=20b
+rcp bootimage foo:/tmp/bootimage
+<login to foo>
+dd if=/tmp/bootimage of=/dev/rct/0m bs=20b
+.DE
+Once this tape is created you can boot and run the standalone tape
+copy program from it.
+The copy program is loaded just as any other program would be loaded
+by the bootrom in ``attended'' mode:
+reset the CPU,
+hold down the space bar until the word ``Keyboard'' appears in the
+installed interface list, and
+enter the menu selection for SYS_TCOPY.
+Once loaded and running:
 .DS
 .TS
 lw(2i) l.
 .DS
 .TS
 lw(2i) l.
-\fB:\|\fP\fI\*(Mt(0,0)copy\fP  (load and run copy program)
-\fBFrom:\fP \fI\*(Mt(0,1)\fP   (tape drive unit 0, second tape file)
-\fBTo:\fP \fI\*(Dk(0,2)\fP     (disk drive unit 0, third disk partition)
-\fBCopy completed: 1400 records copied\fP
+\fBFrom:\fP \fI^C\fP   (control-C to see logical adaptor assignments)
+\fBhpib0 at sc7\fP
+\fBscsi0 at sc14\fP
+\fBFrom:\fP \fIct(0,7,0,0)\fP  (HP-IB tape target 7, first tape file)
+\fBTo:\fP \fIsd(0,0,0,2)\fP    (SCSI disk target 0, third disk partition)
+\fBCopy completed: 2048 records copied\fP
 .TE
 .DE
 .TE
 .DE
-.NH 3
+.LP
+This copy will likely take 30 minutes or more.
+.NH 4
 Step 3: booting the root filesystem
 .PP
 You now have a bootable root filesystem on the disk.
 If you were previously running with two disks,
 Step 3: booting the root filesystem
 .PP
 You now have a bootable root filesystem on the disk.
 If you were previously running with two disks,
-shut down the machine, remove the disk that you previously booted on,
-set the unit number of the disk onto which you loaded \*(4B to zero,
-and power up the machine.
-If you used the standalone copy program,
-you should power down the machine, switch the tape drive offline,
-and power the machine back up.
-It should now find, boot, and run \*(4B with output that looks
-approximately like this:
+it would be best if you shut down the machine and turn off power on
+the HP-UX drive.
+It will be less confusing and it will eliminate any chance of accidentally
+destroying the HP-UX disk.
+Whether you booted from tape or copied from disk you should now reboot
+the machine and perform another assisted boot, this time with SYS_TBOOT.
+Once loaded and running the boot program will display the CPU type and
+prompt for a kernel file to boot:
+.DS
+.B
+HP433 CPU
+Boot
+.R
+\fB:\fP \fI/vmunix\fP
+.DE
+.LP
+After providing the kernel name, the machine will boot and run \*(4B with
+output that looks approximately like this:
 .DS
 .B
 .DS
 .B
-597316+34120+139288 start 0x9ec
-4.4BSD UNIX #3: Tue Jul  6 14:02:20 PDT 1993
-       (mckusick@vangogh.CS.Berkeley.EDU:/usr/obj/sys/compile/GENERIC.hp300)
-real mem  = xxx
+597316+34120+139288 start 0xfe8019ec
+Copyright (c) 1982, 1986, 1989, 1991, 1993
+       The Regents of the University of California.
+Copyright (c) 1992 Hewlett-Packard Company
+Copyright (c) 1992 Motorola Inc.
+All rights reserved.
+
+4.4BSD UNIX #1: Thu Jul  8 11:41:34 PDT 1993
+    mckusick@vangogh.CS.Berkeley.EDU:/usr/obj/sys/compile/GENERIC.hp300
+HP9000/433 (33MHz MC68040 CPU+MMU+FPU, 4k on-chip physical I/D caches)
+real mem = xxx
 avail mem = ###
 using ### buffers containing ### bytes of memory
 (... information about available devices ...)
 avail mem = ###
 using ### buffers containing ### bytes of memory
 (... information about available devices ...)
-root device? 
+root device?
 .R
 .DE
 .PP
 .R
 .DE
 .PP
-The first three numbers are printed out by the bootstrap programs and
+The first three numbers are printed out by the bootstrap program and
 are the sizes of different parts of the system (text, initialized and
 uninitialized data).  The system also allocates several system data
 structures after it starts running.  The sizes of these structures are
 are the sizes of different parts of the system (text, initialized and
 uninitialized data).  The system also allocates several system data
 structures after it starts running.  The sizes of these structures are
@@ -217,7 +319,7 @@ will be discussed later.
 .PP
 UNIX itself then runs for the first time and begins by printing out a banner
 identifying the release and
 .PP
 UNIX itself then runs for the first time and begins by printing out a banner
 identifying the release and
-version of the system that is in use and the date that it was compiled.  
+version of the system that is in use and the date that it was compiled. 
 .PP
 Next the
 .I mem
 .PP
 Next the
 .I mem
@@ -230,7 +332,7 @@ For example, if your machine has 16Mb bytes of memory, then
 .PP
 The messages that come out next show what devices were found on
 the current processor.  These messages are described in
 .PP
 The messages that come out next show what devices were found on
 the current processor.  These messages are described in
-\fIautoconf\fP\|(4).
+.Xr autoconf (4).
 The distributed system may not have
 found all the communications devices you have
 or all the mass storage peripherals you have, especially
 The distributed system may not have
 found all the communications devices you have
 or all the mass storage peripherals you have, especially
@@ -245,28 +347,30 @@ present in the configuration description
 is printed out at boot time as the system verifies that each device
 is present.
 .PP
 is printed out at boot time as the system verifies that each device
 is present.
 .PP
-The \*(lqroot device?\*(rq prompt was printed by the system 
-to ask you for the name of the root file system to use.
+The \*(lqroot device?\*(rq prompt was printed by the system
+to ask you for the name of the root filesystem to use.
 This happens because the distribution system is a \fIgeneric\fP
 system, i.e., it can be bootstrapped on a cpu with its root device
 This happens because the distribution system is a \fIgeneric\fP
 system, i.e., it can be bootstrapped on a cpu with its root device
-and paging area on any available disk drive.  You should respond to the
-root device question with ``\*(Dk0''.  This response indicates that
+and paging area on any available disk drive.
+You should respond to the root device question with ``\*(Dk0''.
+This response indicates that
 that the disk it is running on is drive 0 of type ``\*(Dk''.
 You will later build a system tailored to your configuration
 that will not ask this question when it is bootstrapped.
 .DS
 \fBroot device?\fP \fI\*(Dk0\fP
 that the disk it is running on is drive 0 of type ``\*(Dk''.
 You will later build a system tailored to your configuration
 that will not ask this question when it is bootstrapped.
 .DS
 \fBroot device?\fP \fI\*(Dk0\fP
-WARNING: preposterous time in file system \-\- CHECK AND RESET THE DATE!
+WARNING: preposterous time in filesystem \-\- CHECK AND RESET THE DATE!
 \fBerase ^?, kill ^U, intr ^C\fP
 \fB#\fP
 .DE
 .PP
 \fBerase ^?, kill ^U, intr ^C\fP
 \fB#\fP
 .DE
 .PP
-The \*(lqerase ...\*(rq message is part of the /.profile
+The \*(lqerase ...\*(rq message is part of the
+.Pn /.profile
 that was executed by the root shell when it started.  This message
 is present to inform you as to what values the character erase,
 line erase, and interrupt characters have been set.
 that was executed by the root shell when it started.  This message
 is present to inform you as to what values the character erase,
 line erase, and interrupt characters have been set.
-.NH 3
-Step 4: restoring the root file system
+.NH 4
+Step 4: (optional) restoring the root filesystem
 .PP
 UNIX is now running,
 and the \fIUNIX Programmer's manual\fP applies.  The ``#'' is the prompt
 .PP
 UNIX is now running,
 and the \fIUNIX Programmer's manual\fP applies.  The ``#'' is the prompt
@@ -285,20 +389,24 @@ or peak performance is not an issue, you can skip this step and
 proceed directly to step 5.
 .PP
 Connect a second disk to your machine.
 proceed directly to step 5.
 .PP
 Connect a second disk to your machine.
-If you bootstraped using the two disk method, you can
+If you bootstrapped using the two disk method, you can
 overwrite your initial bootstrapping disk, as it will no longer
 be needed.
 .PP
 overwrite your initial bootstrapping disk, as it will no longer
 be needed.
 .PP
-To actually create the root filesystem on drive 1 the shell script
-\*(lqxtr\*(rq should be run:
+To actually create the root filesystem on drive 1
+you should first label the disk as described in step 5 below.
+Then run the following commands:
 .DS
 .DS
-\fB#\fP\|\fIdisk=\*(Dk1 tape=\*(Mt0 xtr\fP
-(Note, ``\*(Dk1'' specifies both the disk type and the unit number.  Modify
-as necessary.)
+\fB#\fP\|\fInewfs /dev/r\*(Dk1a\fP
+\fB#\fP\|\fImount /dev/\*(Dk1a /mnt\fP
+\fB#\fP\|\fIcd /mnt\fP
+\fB#\fP\|\fIdump 0f \- /dev/r\(*Dk0a | restore xf \-\fP
+(Note: restore will ask if you want to ``set owner/mode for '.'''
+to which you should reply ``yes''.)
 .DE
 .PP
 This will generate many messages regarding the construction
 .DE
 .PP
 This will generate many messages regarding the construction
-of the file system and the restoration of the tape contents,
+of the filesystem and the restoration of the tape contents,
 but should eventually stop with the message:
 .DS
  ...
 but should eventually stop with the message:
 .DS
  ...
@@ -308,25 +416,29 @@ but should eventually stop with the message:
 .PP
 You should then shut down the system, and boot on the disk that
 you just created following the procedure in step (3) above.
 .PP
 You should then shut down the system, and boot on the disk that
 you just created following the procedure in step (3) above.
-.NH 3
+.NH 4
 Step 5: placing labels on the disks
 .PP
 \*(4B uses disk labels in the first sector of each disk to contain
 information about the geometry of the drive and the partition layout.
 Step 5: placing labels on the disks
 .PP
 \*(4B uses disk labels in the first sector of each disk to contain
 information about the geometry of the drive and the partition layout.
-This information is written with \fIdisklabel\fP\|(8).
+This information is written with
+.Xr disklabel (8).
 .PP
 For each disk that you wish to label, run the following command:
 .DS
 \fB#\|\fP\fIdisklabel  -rw  \*(Dk\fP\fB#\fP  \fBtype\fP  \fI"optional_pack_name"\fP
 .DE
 The \fB#\fP is the unit number; the \fBtype\fP is the HP300 disk device
 .PP
 For each disk that you wish to label, run the following command:
 .DS
 \fB#\|\fP\fIdisklabel  -rw  \*(Dk\fP\fB#\fP  \fBtype\fP  \fI"optional_pack_name"\fP
 .DE
 The \fB#\fP is the unit number; the \fBtype\fP is the HP300 disk device
-name as listed in section 1.2 or any other name listed in /etc/disktab.
+name as listed in section 2.2.1 or any other name listed in
+.Pn /etc/disktab .
 The optional information may contain any descriptive name for the
 contents of a disk, and may be up to 16 characters long.  This procedure
 The optional information may contain any descriptive name for the
 contents of a disk, and may be up to 16 characters long.  This procedure
-will place the label on the disk using the information found in /etc/disktab
+will place the label on the disk using the information found in
+.Pn /etc/disktab
 for the disk type named.
 If you have changed the disk partition sizes,
 for the disk type named.
 If you have changed the disk partition sizes,
-you may wish to add entries for the modified configuration in /etc/disktab
+you may wish to add entries for the modified configuration in
+.Pn /etc/disktab
 before labeling the affected disks.
 .PP
 You have now completed the HP300 specific part of the installation.
 before labeling the affected disks.
 .PP
 You have now completed the HP300 specific part of the installation.
@@ -334,90 +446,421 @@ You should now proceed to the generic part of the installation
 described starting in section 2.5 below.
 .NH 2
 Booting the SPARC
 described starting in section 2.5 below.
 .NH 2
 Booting the SPARC
+.NH 3
+Supported hardware
+.LP
+The hardware supported by \*(4B for the SPARC is as follows:
+.TS
+center box;
+lw(1i) lw(4i).
+CPUs   T{
+SPARCstation 1 series (1, 1+, SLC, IPC) and
+SPARCstation 2 series (2, IPX).
+T}
+_
+DISKs  T{
+SCSI.
+T}
+_
+TAPEs  T{
+none.
+T}
+_
+NETWORK        T{
+SPARCstation Lance (le).
+T}
+_
+GRAPHICS       T{
+bwtwo and cgthree.
+T}
+_
+INPUT  T{
+Keyboard and mouse.
+T}
+_
+MISC   T{
+Battery-backed real time clock,
+built-in serial devices,
+Sbus SCSI controller,
+and audio device.
+T}
+.TE
+.LP
+Major items not supported include the GX (cgnine) display,
+the floppy disk, and SCSI tapes.
+.NH 3
+Limitations
+.LP
+There are several important limitations on the \*(4B distribution
+for the SPARC:
+.IP 1)
+You MUST have SunOS 4.1.x or Solaris in order to bring up \*(4B.
+There is no SPARCstation bootstrap code in this distribution.  The
+Sun-supplied boot loader will be used to boot \*(4B; you must copy
+this from your SunOS distribution.  This imposes a number of
+restrictions on the system, as detailed below.
+.IP 2)
+The \*(4B SPARC kernel does not remap SCSI IDs.  A SCSI disk at
+target 0 will become ``sd0'', where in SunOS the same disk will
+normally be called ``sd3''.  If your existing SunOS system is
+diskful, it will be least painful to have SunOS running on the disk
+on target 0 lun 0 and put \*(4B on the disk on target 3 lun 0.  Both
+systems will then think they are running on ``sd0'', and you can
+boot either system as needed simply by changing the EEPROM's boot
+device.
+.IP 3)
+There is no SCSI tape driver.
+You must have another system for tape reading and backups.
+.IP 4)
+Although the \*(4B SPARC kernel will handle existing SunOS shared
+libraries, it does not use or create them itself, and therefore
+requires quite a bit more disk space than SunOS does.
+.IP 5)
+It is currently difficult (though not completely impossible) to
+run \*(4B diskless.  These instructions assume you will have a local
+boot, swap, and root filesystem.
+.NH 3
+The Procedure
 .PP
 .PP
-Chris promises to fill us in here!!!
+You must have a spare disk on which to place \*(4B.
+The steps involved in bootstrapping this tape are as follows:
+.IP 1)
+Bring up SunOS (preferably SunOS 4.1.x or Solaris 1.x, although
+Solaris 2 may work \(em this is untested).
+.IP 2)
+Attach auxiliary SCSI disk(s).  Format and label using the
+SunOS formating and labeling programs as needed.
+Note that the root filesystem currently requires at least 10 MB; 16 MB
+or more is recommended.  The b partition will be used for swap;
+this should be at least 32 MB.
+.IP 3)
+Use the SunOS ``newfs'' to build the root filesystem.  You may also
+want to build other filesystems at the same time.  (By default, the
+\*(4B newfs builds a filesystem that SunOS will not handle; if you
+plan to switch OSes back and forth you may want to sacrifice the
+performance gain from the new filesystem format for compatibility.)
+You can build an old-format filesystem on \*(4B by giving the \-O
+option to
+.Xr newfs (8).
+.Xr Fsck (8)
+can convert old format filesystems to new format
+filesystems, but not vice versa,
+so you may want to initially build old format filesystems so that they
+can be mounted under SunOS,
+and then later convert them to new format filesystems when you are
+satisfied that \*(4B is running properly.
+In any case, YOU MUST BUILD AN OLD-STYLE ROOT FILE SYSTEM
+so that the SunOS boot program will work.
+.IP 4)
+Mount the new root, then copy the SunOS
+.Pn /boot
+into place and use the SunOS ``installboot'' program
+to enable disk-based booting:
+.DS
+.ft CW
+# mount /dev/sd3a /mnt
+# cp /boot /mnt/boot
+# umount /dev/sd3a
+# /usr/kvm/mdec/installboot installboot bootsd /dev/rsd3a
+.DE
+The SunOS
+.Pn /boot
+will load \*(4B kernels; there is no SPARCstation
+bootstrap code on the distribution.  Note that the SunOS
+.Pn /boot
+does not handle the new \*(4B filesystem format.
+.IP 5)
+Mount the new root and restore the root.
+.DS
+.ft CW
+# mount /dev/sd3a /mnt
+# cd /mnt
+# rrestore xf tapehost:/dev/nrst0
+.DE
+If you have chosen to use the SunOS newfs to build
+.Pn /usr ,
+you may mount and restore it now and skip the next step.
+.IP 6)
+Boot the supplied kernel.  Configure the network, build
+.Pn /usr ,
+mount it, and restore it:
+.DS
+.ft CW
+# halt
+ok boot disk3 -s                       [for old proms] OR
+ok boot sd(0,3)vmunix -s               [for new proms]
+\&... [\*(4B boot messages]
+# ifconfig le0 [your address, subnet, etc, as needed]
+# newfs /dev/rsd0g
+\&... [newfs output, including a warning about being unable to
+     update the label \(em ignore this]
+# mount /dev/sd0g /usr
+# cd /usr
+# rrestore xf tapehost:/dev/nrst0
+.DE
+.IP 7)
+At this point you may wish to set up \*(4B to reboot automatically:
+.DS
+.ft CW
+# halt
+ok setenv boot-from sd(0,3)vmunix      [for old proms] OR
+ok setenv boot-device disk3            [for new proms]
+.DE
+If you build backwards-compatible filesystems, either with the SunOS
+newfs or with the \*(4B ``\-O'' option, you can mount these under
+SunOS.  The SunOS fsck will, however, always think that these filesystems
+are corrupted, as there are several new (previously unused)
+superblock fields that are updated in \*(4B.  Running ``fsck \-b32''
+and letting it ``fix'' the superblock will take care of this.
+.sp 0.5
+If you wish to run SunOS binaries that use SunOS shared libraries, you
+simply need to copy all of the dynamic linker files from an existing
+SunOS system:
+.DS
+.ft CW
+# rcp sunos-host:/etc/ld.so.cache /etc/
+# rcp sunos-host:'/usr/lib/*.so*' /usr/lib/
+.DE
+The SunOS compiler and linker should be able to produce SunOS binaries
+under \*(4B, but this has not been tested.  If you plan to try it you
+will need the appropriate .sa files as well.
 .NH 2
 .NH 2
-Booting the DecStation
+Booting the DECstation
+.NH 3
+Supported hardware
+.LP
+The hardware supported by \*(4B for the DECstation is as follows:
+.TS
+center box;
+lw(1i) lw(4i).
+CPUs   T{
+R2000 based (3100) and
+R3000 based (5000/200, 5000/20, 5000/25, 5000/1xx).
+T}
+_
+DISKs  T{
+SCSI-I (tested RZ23, RZ55, RZ57, Maxtor 8760S).
+T}
+_
+TAPEs  T{
+SCSI-I (tested DEC TK50, Archive DAT, Emulex MT02).
+T}
+_
+RS232  T{
+Internal DEC dc7085 and AMD 8530 based interfaces.
+T}
+_
+NETWORK        T{
+TURBOchannel PMAD-AA and internal LANCE based interfaces.
+T}
+_
+GRAPHICS       T{
+Terminal emulation and raw frame buffer support for
+3100 (color & monochrome),
+TURBOchannel PMAG-AA, PMAG-BA, PMAG-DV.
+T}
+_
+INPUT  T{
+Standard DEC keyboard (LK201) and mouse.
+T}
+_
+MISC   T{
+Battery-backed real time clock,
+internal and TURBOchannel PMAZ-AA SCSI interfaces.
+T}
+.TE
+.LP
+Major items not supported include the 5000/240 (there is code but not
+compiled in or tested),
+R4000 based machines, FDDI and audio interfaces.
+Diskless machines are not supported but booting kernels and bootstrapping
+over the network is supported on the 5000 series.
+.NH 3
+The Procedure
 .PP
 .PP
-Steps to bootstrap a system.
-.IP 1)
-Load kernel and mini-root into memory with one of the PROM commands.
-This is the only step that depends on what type of machine you are using.
-The 'cnfg' PROM command will display what devices are available
-(DEC 5000 only).
-The 'm' argument tells the kernel to look for a mini-root in memory.
+The first file on the distribution tape is a tar file which contains
+four files.
+The first step requires a running UNIX (or ULTRIX) system that can
+be used to extract the tar archive from the first file on the tape.
+The command:
 .DS
 .DS
-DEC 3100:      boot -f tz(0,5,0) m     # 5 is the SCSI id of the TK50
-DEC 5000:      boot 5/tz6 m            # 6 is the SCSI id of the TK50
-DEC 5000:      boot 6/tftp/bootfile m  # requires bootp on host
+.ft CW
+tar xf /dev/rmt0
 .DE
 .DE
-.IP 2)
-Format the disk if needed. Most SCSI disks are already formatted.
+will extract the following four files:
 .DS
 .DS
-format
+A) root.image: \fIdd\fP image of the root filesystem
+B) vmunix.tape: \fIdd\fP image for creating boot tapes
+C) vmunix.net: file for booting over the network
+D) root.dump: dump image of the root filesystem
 .DE
 .DE
-.IP 3)
-Label disks and create file systems.
+There are three basic ways a system can be bootstrapped corresponding to the
+first three files.
+You may want to read the section on bootstrapping the HP300
+since many of the steps are similar.
+A spare, formatted SCSI disk is also useful.
+.NH 4
+Procedure A: copy root filesystem to disk
+.PP
+This procedure is similar to the HP300.
+If you have an extra disk, the easiest approach is to use \fIdd\fP\|(1)
+under ULTRIX to copy the root filesystem image to the beginning
+of the spare disk. 
+The root filesystem image includes a disklabel and bootblock along with the
+root filesystem.
+An example command to copy the image to the beginning of a disk is:
+.DS
+.ft CW
+dd if=root.image of=/dev/rz1c bs=20b
+.DE
+The actual special file syntax will vary depending on unit numbers and
+the version of ULTRIX that is running.
+This system is now ready to boot.
+You will probably want to change the disk label
+to create reasonable partitions for your machine (see section 4.2).
+You can then proceed to section 2.5 to install the rest of the system.
+.NH 4
+Procedure B: bootstrap from tape
+.PP
+If you have only a single machine with a single disk,
+you need to use the more difficult approach of booting a
+kernel and mini-root from tape or the network, and using it to restore
+the root filesystem.
+.PP
+First, you will need to create a boot tape. This can be done using
+\fIdd\fP as in the following example.
+.DS
+.ft CW
+dd if=vmunix.tape of=/dev/nrmt0 bs=1b
+dd if=root.dump of=/dev/nrmt0 bs=20b
+.DE
+The actual special file syntax for the tape drive will vary depending on
+unit numbers, tape device and the version of ULTRIX that is running.
+.PP
+The first file on the boot tape contains a boot header, kernel, and
+mini-root file system that the PROM can copy into memory.
+Installing from tape has only been tested
+on a 3100 and a 5000/200 using a TK50 tape drive. Here are two example
+PROM commands to boot from tape.
+.DS
+.ft CW
+DEC 3100:    boot \-f tz(0,5,0) m    # 5 is the SCSI id of the TK50
+DEC 5000:    boot 5/tz6 m           # 6 is the SCSI id of the TK50
+.DE
+The `m' argument tells the kernel to look for a root filesystem in memory.
+Next you should proceed to section 2.4.3 to build a disk-based root filesystem.
+.NH 4
+Procedure C: bootstrap over the network
+.PP
+You will need a host machine that is running the \fIbootp\fP server 
+with the vmunix.net file installed in the default directory defined by the
+configuration file for \fIbootp\fP.
+Here are two example PROM commands to boot across the net:
+.DS
+.ft CW
+DEC 3100:      boot \-f tftp()vmunix.net m
+DEC 5000:      boot 6/tftp/vmunix.net m
+.DE
+This command should load the kernel and mini-root into memory and
+run the same as the tape install (procedure B).
+The rest of the steps are the same except you will need to
+execute the following to start the networking:
+.DS
+.ft CW
+# mount -u /
+# echo 127.0.0.1 localhost >> /etc/hosts
+# echo <your.host.inet.number> myname.my.domain myname >> /etc/hosts
+# echo <friend.host.inet.number> myfriend.my.domain myfriend >> /etc/hosts
+# ifconfig le0 inet myname
+.DE
+Next you should proceed to section 2.4.3 to build a disk-based root filesystem.
+.NH 3
+Label disk and create the root filesystem.
+.LP
+There are five steps to create a disk-based root filesystem.
+.IP 1)
+Label the disk.
 .DS
 .DS
+.ft CW
 # disklabel -W /dev/rrz?c              # This enables writing the label
 # disklabel -w -r -B /dev/rrz?c $DISKTYPE
 # newfs /dev/rrz?a
 # disklabel -W /dev/rrz?c              # This enables writing the label
 # disklabel -w -r -B /dev/rrz?c $DISKTYPE
 # newfs /dev/rrz?a
-# newfs /dev/rrz?g
 \&...
 # fsck /dev/rrz?a
 \&...
 # fsck /dev/rrz?a
-# fsck /dev/rrz?g
 \&...
 .DE
 \&...
 .DE
-Supported disk types are listed in /etc/disktab.
-Feel free to add to this list.
-.IP 4)
-Restore / and /usr partitions.
+Supported disk types are listed in
+.Pn /etc/disktab .
+.IP 3)
+Restore the root filesystem.
 .DS
 .DS
-# mount -u /
+.ft CW
+# mount \-u /
 # mount /dev/rz?a /a
 # mount /dev/rz?a /a
-# mount /dev/rz?g /b
 # cd /a
 # cd /a
-# mt -f /dev/nrmt0 rew
-# restore -xsf 2 /dev/rmt0
-# cd /b
-# {change tapes or tape drive}
-# restore -xf /dev/rmt0
+.DE
+.ti +0.4i
+If you are restoring locally (procedure B), run:
+.DS
+.ft CW
+# mt \-f /dev/nrmt0 rew
+# restore \-xsf 2 /dev/rmt0
+.DE
+.ti +0.4i
+If you are restoring across the net (procedure c), run:
+.DS
+.ft CW
+# rrestore xf myfriend:/path/to/root.dump
+.DE
+.ti +0.4i
+When the restore finishes, clean up with:
+.DS
+.ft CW
 # cd /
 # sync
 # umount /a
 # cd /
 # sync
 # umount /a
-# umount /b
-# fsck /dev/rz?a /dev/rz?g
+# fsck /dev/rz?a
 .DE
 .DE
-.IP 5)
-Initialize the PROM monitor to boot automatically.
+.IP 4)
+Reset the system and initialize the PROM monitor to boot automatically.
 .DS
 .DS
-# halt -q
-
-DEC 3100:      setenv bootpath boot -f rz(0,?,0)vmunix
+.ft CW
+DEC 3100:      setenv bootpath boot \-f rz(0,?,0)vmunix
 DEC 5000:      setenv bootpath 5/rz?/vmunix -a
 .DE
 DEC 5000:      setenv bootpath 5/rz?/vmunix -a
 .DE
-.IP 6)
-After booting UNIX, you will need to create /dev/mouse in order to
-run X windows. type `link /dev/xx /dev/mouse' where xx is one of the
-following:
+.IP 5)
+After booting UNIX, you will need to create
+.Pn /dev/mouse
+to run X windows as in the following example.
+.DS
+.ft CW
+rm /dev/mouse
+ln /dev/xx /dev/mouse
+.DE
+The 'xx' should be one of the following:
 .DS
 pm0    raw interface to PMAX graphics devices
 cfb0   raw interface to turbochannel PMAG-BA color frame buffer
 xcfb0  raw interface to maxine graphics devices
 mfb0   raw interface to mono graphics devices
 .DE
 .DS
 pm0    raw interface to PMAX graphics devices
 cfb0   raw interface to turbochannel PMAG-BA color frame buffer
 xcfb0  raw interface to maxine graphics devices
 mfb0   raw interface to mono graphics devices
 .DE
+You can then proceed to section 2.5 to install the rest of the system.
 .NH 2
 Installing the rest of the system
 .PP
 .NH 2
 Installing the rest of the system
 .PP
-The next thing to do is to extract the rest of the data from
-the tape.
-At a minimum you need to set up the /var and /usr filesystems.
+All architectures now have a root filesystem up and running and
+proceed from this point to extract the rest of the data from the tape.
+At a minimum you need to set up the
+.Pn /var
+and
+.Pn /usr
+filesystems.
 You may also want to extract some or all the program sources.
 You might wish to review the disk configuration information in section
 4.2 before continuing; the partitions used below are those most appropriate
 in size.
 .PP
 You may also want to extract some or all the program sources.
 You might wish to review the disk configuration information in section
 4.2 before continuing; the partitions used below are those most appropriate
 in size.
 .PP
-Then perform the following:
+Then do the following:
 .br
 .ne 5
 .DS
 .br
 .ne 5
 .DS
@@ -429,28 +872,33 @@ lw(2i) l.
 \fBNew password:\fP    (password will not echo)
 \fBRetype new password:\fP
 \fB#\fP \fIhostname mysitename\fP      (set your hostname)
 \fBNew password:\fP    (password will not echo)
 \fBRetype new password:\fP
 \fB#\fP \fIhostname mysitename\fP      (set your hostname)
-\fB#\fP \fInewfs r\*(Dk#c\fP   (create empty user file system)
-(\fIr\*(Dk\fP is the disk type, \fI#\fP is the unit number, \fIc\fP
+\fB#\fP \fInewfs r\*(Dk#c\fP   (create empty user filesystem)
+(\fI\*(Dk\fP is the disk type, \fI#\fP is the unit number, \fIc\fP
 is the partition; this takes a few minutes)
 is the partition; this takes a few minutes)
-\fB#\fP \fImount /dev/\*(Dk#c /var\fP  (mount the var file system)
+\fB#\fP \fImount /dev/\*(Dk#c /var\fP  (mount the var filesystem)
 \fB#\fP \fIcd /var\fP  (make /var the current directory)
 \fB#\fP \fImt -t /dev/nr\*(Mt0 fsf\fP  (space to end of previous tape file)
 \fB#\fP \fItar xbpf 40 /dev/nr\*(Mt0\fP        (extract all of var)
 \fB#\fP \fIcd /var\fP  (make /var the current directory)
 \fB#\fP \fImt -t /dev/nr\*(Mt0 fsf\fP  (space to end of previous tape file)
 \fB#\fP \fItar xbpf 40 /dev/nr\*(Mt0\fP        (extract all of var)
-\fB#\fP \fInewfs r\*(Dk#c\fP   (create empty user file system)
-(as before \fIr\*(Dk\fP is the disk type, \fI#\fP is the unit number, \fIc\fP
+\fB#\fP \fInewfs r\*(Dk#c\fP   (create empty user filesystem)
+(as before \fI\*(Dk\fP is the disk type, \fI#\fP is the unit number, \fIc\fP
 is the partition)
 is the partition)
-\fB#\fP \fImount /dev/\*(Dk#c /usr\fP  (mount the usr file system)
+\fB#\fP \fImount /dev/\*(Dk#c /usr\fP  (mount the usr filesystem)
 \fB#\fP \fIcd /usr\fP  (make /usr the current directory)
 \fB#\fP \fImt -t /dev/nr\*(Mt0 fsf\fP  (space to end of previous tape file)
 \fB#\fP \fItar xbpf 40 /dev/nr\*(Mt0\fP        (extract all of usr except usr/src)
 (this takes about 15-20 minutes)
 .TE
 .DE
 \fB#\fP \fIcd /usr\fP  (make /usr the current directory)
 \fB#\fP \fImt -t /dev/nr\*(Mt0 fsf\fP  (space to end of previous tape file)
 \fB#\fP \fItar xbpf 40 /dev/nr\*(Mt0\fP        (extract all of usr except usr/src)
 (this takes about 15-20 minutes)
 .TE
 .DE
-If no disk label has been installed on the disk, the \fInewfs\fP
+If no disk label has been installed on the disk, the
+.Xr newfs
 command will require a third argument to specify the disk type,
 command will require a third argument to specify the disk type,
-using one of the names in /etc/disktab.
-If the tape had been rewound or positioned incorrectly before the \fItar\fP,
-to extract /var it may be repositioned by the following commands.
+using one of the names in
+.Pn /etc/disktab .
+If the tape had been rewound or positioned incorrectly before the
+.Xr tar ,
+to extract
+.Pn /var
+it may be repositioned by the following commands.
 .DS
 \fB#\fP \fImt -t /dev/nr\*(Mt0 rew\fP
 \fB#\fP \fImt -t /dev/nr\*(Mt0 fsf 3\fP
 .DS
 \fB#\fP \fImt -t /dev/nr\*(Mt0 rew\fP
 \fB#\fP \fImt -t /dev/nr\*(Mt0 fsf 3\fP
@@ -474,12 +922,14 @@ lw(2i) l.
 .TE
 .DE
 .PP
 .TE
 .DE
 .PP
-You can check the consistency of the /usr file system by doing
+You can check the consistency of the
+.Pn /usr
+filesystem by doing
 .DS
 \fB#\fP \fIfsck /dev/r\*(Dk#c\fP
 .DE
 The output from
 .DS
 \fB#\fP \fIfsck /dev/r\*(Dk#c\fP
 .DE
 The output from
-.I fsck
+.Xr fsck
 should look something like:
 .DS
 .B
 should look something like:
 .DS
 .B
@@ -494,13 +944,16 @@ should look something like:
 .R
 .DE
 .PP
 .R
 .DE
 .PP
-If there are inconsistencies in the file system, you may be prompted
-to apply corrective action; see the \fIfsck\fP(8) or \fIFsck -- The UNIX
-File System Check Program\fP for more details.
+If there are inconsistencies in the filesystem, you may be prompted
+to apply corrective action; see the
+.Xr fsck (8)
+or \fIFsck \(en The UNIX File System Check Program\fP (SMM:3) for more details.
 .PP
 .PP
-To use the /usr file system, you should now remount it with:
+To use the
+.Pn /usr
+filesystem, you should now remount it with:
 .DS
 .DS
-\fB#\fP \fI/etc/mount /dev/\*(Dk#c /usr\fP
+\fB#\fP \fI/sbin/mount /dev/\*(Dk#c /usr\fP
 .DE
 .PP
 If you are using 6250bpi tapes, the second reel of the
 .DE
 .PP
 If you are using 6250bpi tapes, the second reel of the
@@ -518,8 +971,10 @@ point on the 8mm tape.
 If you received a distribution on 8mm tape,
 there is one additional tape file on the distribution tape
 which has not been installed to this point; it contains the
 If you received a distribution on 8mm tape,
 there is one additional tape file on the distribution tape
 which has not been installed to this point; it contains the
-sources for X11R5 in \fItar\fP\|(1) format.  As distributed,
-X11R5 should be placed in /usr/src/X11R5.
+sources for X11R5 in
+.Xr tar (1)
+format.  As distributed, X11R5 should be placed in
+.Pn /usr/src/X11R5 .
 .DS
 \fB#\fP \fImkdir /usr/src/X11R5\fP
 \fB#\fP \fIchmod 755 /usr/src/X11R5\fP
 .DS
 \fB#\fP \fImkdir /usr/src/X11R5\fP
 \fB#\fP \fIchmod 755 /usr/src/X11R5\fP
@@ -532,11 +987,14 @@ Additional conversion information
 .PP
 After setting up the new \*(4B filesystems, you may restore the user
 files that were saved on tape before beginning the conversion.
 .PP
 After setting up the new \*(4B filesystems, you may restore the user
 files that were saved on tape before beginning the conversion.
-Note that the \*(4B \fIrestore\fP program does its work on a mounted
-file system using normal system operations.  This means that file
-system dumps may be restored even if the characteristics of the file
-system changed.  To restore a dump tape for, say, the /a file system
-something like the following would be used:
+Note that the \*(4B
+.Xr restore
+program does its work on a mounted filesystem using normal system operations.
+This means that filesystem dumps may be restored even
+if the characteristics of the filesystem changed.
+To restore a dump tape for, say, the
+.Pn /a
+filesystem something like the following would be used:
 .DS
 \fB#\fP \fImkdir /a\fP
 \fB#\fP \fInewfs \*(Dk#c\fI
 .DS
 \fB#\fP \fImkdir /a\fP
 \fB#\fP \fInewfs \*(Dk#c\fI
@@ -545,7 +1003,11 @@ something like the following would be used:
 \fB#\fP \fIrestore x\fP
 .DE
 .PP
 \fB#\fP \fIrestore x\fP
 .DE
 .PP
-If \fItar\fP images were written instead of doing a dump, you should
-be sure to use its `-p' option when reading the files back.  No matter
-how you restore a file system, be sure to unmount it and and check its
-integrity with \fIfsck\fP(8) when the job is complete.
+If
+.Xr tar
+images were written instead of doing a dump, you should
+be sure to use its `\-p' option when reading the files back.  No matter
+how you restore a filesystem, be sure to unmount it and and check its
+integrity with
+.Xr fsck (8)
+when the job is complete.