BOOTING(8)                                             BOOTING(8)

     NAME
          booting - bootstrapping procedures

     SYNOPSIS
          none

     DESCRIPTION
          This manual collects the incantations required to bootstrap
          Plan 9 machines.  Some of the information here is specific
          to the installation at Bell Labs; some is generic.

          If a CPU server is up, BOOTP and TFTP will run from there;
          if not, the necessary files and services must be available
          on a separate machine such as a Unix system to use these
          protocols for bootstrapping.

          Be sure to read boot(8) to understand what happens after the
          kernel is loaded.

        Terminals
          First, here are instructions to bootstrap the various Plan 9
          terminals.  To bootstrap a terminal or a CPU server, a file
          server must be running.  On all the terminals, typing two
          control-T's followed by a lower-case r reboots the machine;
          other methods of rebooting are mentioned for some machines.

        Gnot
          The boot ROM prints

               server[default==incon!nj/astro/Nfs!/68020/9gnot]

          Typing just a newline bootstraps the default system.  The
          components of the server string are defaulted from the
          right, for example, to bootstrap /sys/src/9/gnot/9gnot type
          just that file name; to bootstrap from a different file
          server, say kremvax, type

               kremvax!/68020/9gnot

          The bootstrap devices available are incon, 9600, 19200 and
          scsi; with scsi the server name (here nj/astro/Nfs) becomes
          a unit number, usually 0, and the file name is a boot parti-
          tion to use.  For example,

               scsi!0!boot

          means boot from the SCSI disk 0 the kernel in disk partition
          /dev/hd0boot.

          If running with a local cache file system, one normally

     Page 1                       Plan 9            (printed 12/22/24)

     BOOTING(8)                                             BOOTING(8)

          bootstraps using the SCSI disk.  However, if the local ker-
          nel has been destroyed or is hopelessly out of date, boot-
          strap using the serial line.  To do this, use the boot line

               9600!nj/astro/Nfs!/68020/9gnotdisk

          to bootstrap from the serial line at 9600 baud or

               19200!nj/astro/Nfs!/68020/9gnotdisk

          for a 19200 baud connection.

          To shut the system down, just turn off the power.

        Nextstation
          When powered on and left alone, a Nextstation will download
          /68020/9nextstation using the BOOTP and TFTP protocols.
          (Actually, first it loads /lib/tftpd/boot and uses that to
          download the operating system.)  It then prompts for the
          user name and password and asks for the Ethernet protocol to
          use; request the default.

          While the system is downloading, it displays an Ethernet
          symbol; at this time, holding the left Command key down and
          typing the ~ key aborts the download and transfers control
          to a ROM-resident monitor.  The monitor will use the Ether-
          net to boot an alternate kernel given the command, e.g.,

               ben /sys/src/9/next/9nextstation

          or

               ben kgbvax:/sys/src/9/next/9nextstation

          to force the download to come from system kgbvax.

          If running with a local cache file system, bootstrap from
          the disk.  While the system is downloading, it displays a
          symbol of a spinning disk.  The processor first loads a pro-
          gram, Disclabel, from the kernel partition /dev/hd1label and
          then the real kernel from /dev/hd1boot.

          See Next's documentation for other details, in particular
          how to initialize a new machine to boot from Ethernet
          instead of disk.

          To turn the power off, hold down the left Command and
          Alternate keys and press the power key.  To reboot, hold
          down the left Command and Alternate and press the `*' key in
          the upper left corner of the keypad.

        Sun Sparcstation

     Page 2                       Plan 9            (printed 12/22/24)

     BOOTING(8)                                             BOOTING(8)

          Type a `b' to the power-on monitor and the kernel will be
          downloaded.  The kernel resides in /lib/tftpd/xxxxxxxx.SUN4C
          where xxxxxxxx is the upper-case hexadecimal IP number of
          the machine.  There is no way to specify an alternate file
          to download.  Once running, the operating system asks the
          same questions as on the Nextstation.

        MIPS Magnum
          The Magnum ROM monitor can boot from the ethernet or from a
          local disk.  To boot from the ethernet, type

               bootp()/mips/9magnum

          or use the ROM command setenv to set the variable bootfile
          to that same string and type boot.  To load a different
          file, tell bootp which file to load, and to force the down-
          load to come from a particular system, bootp()system:file.
          Any arguments after bootp()file are passed to /boot.

          To boot from disk, type

               dksd()b

          to load the Plan 9 bootstrap program or use the ROM command
          setenv to set the variable bootfile to that same string and
          type boot.  The bootstrap program will then prompt for the
          partition to boot from.  If nothing is typed in 15 seconds,
          a kernel will be booted from the hard disk partition
          /dev/hd0boot. Any arguments after dksd()b are passed to
          /boot.

          Once running, the operating system asks the same questions
          as on the Nextstation.

          To reboot the machine, cycle the power or hit the reset but-
          ton on the back.

        AT&T Safari and other PCs
          The Safari always boots DOS when you turn it on.  Once DOS
          is booted, it will prompt with a C>.  To that type b to boot
          Plan 9.  If there is no diskette in the floppy drive, the
          kernel will automatically be loaded from the hard disk par-
          tition /dev/hd0boot. To boot from diskette, insert one (with
          a DOS file system) before typing b.  The boot program will
          prompt for the kernel to boot with

               server[hd!0!boot]:

          A return causes a boot from hard disk partition,
          /dev/hd0boot. Typing

               fd!0!9

     Page 3                       Plan 9            (printed 12/22/24)

     BOOTING(8)                                             BOOTING(8)

          will bootstrap a kernel from the file named 9 on the
          diskette.

          Once the kernel is booted, it behaves like all others.  See
          boot(8) for details.

        CPU Servers
          The Plan 9 CPU servers are multi-user, so they do not
          request a user name when booting.  On the CPU servers, typ-
          ing a control-P on the console reboots the machine.

        SGI Power Series
          To the power-on menu, type a 5 to get the >> prompt.  Then
          boot Plan 9 using the Plan 9 bootstrap program, b, which
          resides on the disk volume header (dvh) of the SCSI boot
          disk.  The bootstrap program takes two arguments, the method
          with which to attach to a file server (as in boot(8)) and a
          kernel file to boot.  The default method is cyc and the
          default kernel file is /mips/9power. For example, to boot
          the standard kernel over the Cyclone, just type

               b

          To boot a test kernel via the Ethernet using the IL protocol
          type

               b il /sys/src/9/power/9power

          Any arguments given to the bootstrap program will also be
          passed on to /boot in the loaded kernel.

          The bootstrap program reads a configuration description from
          file /mips/conf/x.x.x.x where x.x.x.x is the decimal value
          of the each byte of the IP address separated by dots.  After
          loading the kernel it passes to it the configuration infor-
          mation.

          Before using Plan 9 for the first time you will have to
          bring up Unix to copy the bootstrap program to the dvh.
          Copy /mips/9powerboot onto the Unix file system.  Then use
          dvhtool to copy it to the dvh file b.

        Sun Sparcstation
          Proceed as for the Sparcstation running as a terminal but
          load /sparc/9sscpu.

        Mips Magnum
          Booting from the ethernet proceed as for the Magnum running
          as a terminal but load /mips/9magnumcpu.  Booting from the
          disk proceed as for the Magnum running as a terminal.

          With a disk a two stage boot is also possible.  This allows

     Page 4                       Plan 9            (printed 12/22/24)

     BOOTING(8)                                             BOOTING(8)

          us to boot from networks and or protocols unknown to the ROM
          monitor.  Instead of copying a kernel into the boot parti-
          tion, we copy a bootstrap program that will load the real
          kernel across a network.  The arguments following dksd()b
          are passed both to the bootstrap program and to the down-
          loaded kernel.  The first specifies the network and machine
          to boot from and the second specifies the file to boot.  For
          example, to boot via the Datakit high speed board from the
          file server nj/astro/x type

               dksd()b hs!nj/astro/bootes /mips/9magnumcpu

          To boot via the ethernet using the IL protocol type

               dksd()b il /mips/9magnumcpu

        Hobbit
          The ROM uses some variables in non-volatile RAM for booting.
          The variables can be examined by typing an e in response to
          the ROM prompt '>>>' and initialized to useful defaults by
          'e -i'.  In order to boot the default kernel (ROM variable
          bootfile)

               b -- incon!nj/astro/Nfs

          and to boot an alternate kernel

               e bootfile /sys/src/9/hobbit/9cpu
               b -- incon!nj/astro/Nfs

          or

               b /sys/src/9hobbit/9cpu -- incon!nj/astro/Nfs

          The second form will also initialize the bootfile variable.

          Currently, Hobbit boards boot only using incon.

        File servers
          The CPU servers and terminals run essentially the same pro-
          gram, but the Plan 9 file servers run a distinct system.
          The file servers accept only the commands described in fs(8)
          on their consoles.

        SGI Power Series
          To the power-on menu, type a 5 to get the >> prompt.  Then
          boot the system like a Magnum but load 9powerfs.  These
          files are in /sys/src/fs/power on bootes or in
          /usr/local/boot on tempel.  The system will come up automat-
          ically.  On bootes, several minutes will be spent initializ-
          ing the WORM jukebox; the machine will chat happily while
          this is going on.

     Page 5                       Plan 9            (printed 12/22/24)

     BOOTING(8)                                             BOOTING(8)

        Mips 6280
          In response to the PROM >> prompt, type

               bootp(,egl)tempel:96280fs

        Sparc Sparcstation
          Proceed as for the Sparcstation running as a terminal, but
          load /sparc/9ssfs.

        Mips Magnum
          Proceed as for the Magnum running as a terminal, but load
          /mips/9magnumfs.

     SEE ALSO
          boot(8), fs(8), init(8)

     BUGS
          The file server should be able to boot from its own disk.

     Page 6                       Plan 9            (printed 12/22/24)