glenda.party
term% ls -F
term% cat index.txt
BOOTING(8)                  System Manager's Manual                 BOOTING(8)



NAME
       booting - bootstrapping procedures

SYNOPSIS
       none

DESCRIPTION
       This manual page 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
       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  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 partition to use.  For example,

              scsi!0!boot

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

       If  running with a local cache file system, one normally bootstraps us‐
       ing the SCSI disk.  However, if the local kernel has been destroyed  or
       is  hopelessly  out  of  date,  bootstrap using the serial line.  To do
       this, use the boot string

              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.

   Nextstation
       First make sure the ndb(8) entry (or the corresponding Unix BOOTP  con‐
       figuration information) looks something like this:

              ip=135.104.9.120 ether=00000f00acf7 sys=jobs
                   dom=jobs.research.att.com
                   bootf=/68020/9nextstation
                   proto=il

       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.  That file is not shipped as part of the distribution.  Copy it
       from  /usr/template/client/tftpboot/boot  on  the  vendor-supplied file
       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 Ethernet 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 program, Disclabel (see home(8))
       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 ini‐
       tialize 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 Al‐
       ternate and press the key in the upper right corner of the keypad.

   Sun Sparcstation 2, 10, or 20
       The Sparcstations all behave similarly.  First make sure the ndb(8) en‐
       try  (or  corresponding information on a Unix BOOTP server) is correct.
       If you are running a Plan 9 tftpd (see bootp(8)), it will download  the
       file  specified  by  the  bootf  parameter for the machine in /lib/ndb;
       /sparc/9ss runs on the Sparcstation 2, /sparc/9ss10 on the Sparcstation
       10.

       If  you  are  not  using  Plan  9  tftpd, you will have to copy or link
       /sparc/9ss or /sparc/9ss10 to the appropriate file on  the  downloading
       system;  the file name requested will be of the form IPaddr.SUNmm where
       IPaddr is the 8-digit hexadecimal IP address of the machine  requesting
       the kernel and mm is an architecture identifier.

       To bootstrap, type

              boot net

       to the power-on monitor to load the kernel.  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 download to come from  a  particular  system,
       bootp()system:file.   Any  arguments  after  bootp()file  are passed to
       /boot.  If you are running a Plan 9 BOOTP server  (see  bootp(8)),  the
       file  name can be omitted and the file specified by the bootf parameter
       for the machine in /lib/ndb will be downloaded by default.

       To boot Plan 9 from disk it is first necessary to install the boot pro‐
       gram,  kept  in  /sys/src/boot/magnum/partboot.  This should be written
       into the first partition on the disk, which must be  exactly  32K;  the
       second partition should be at least a megabyte and will hold the kernel
       to boot.  Boot Plan 9 over the Ethernet and follow these  instructions.
       Use  prep(8)  to  establish a partition table that looks something like
       this:

              plan9 partitions
              partboot 0 64
              boot 64 2112

       Run these commands to put the necessary files on the disk:

              bind -a '#w' /dev
              cp /sys/src/boot/magnum/partboot /dev/sd0partboot
              cp /mips/9magnum /dev/sd0boot

       The kernel, here /mips/9magnum, may be any Magnum  kernel.   The  rc(1)
       script  magnum/home  (see  home(8))  automates this whole procedure for
       stand-alone home Magnums.

       Once the disk is established, type to the Magnum boot ROM

              dksd(0,0)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 boot‐
       strap program will then prompt for the  partition  to  boot  from.   If
       nothing  is  typed  within 15 seconds, a kernel will be booted from the
       hard disk partition /dev/sd0boot.  Any arguments after  dksd(0,0)b  are
       passed to boot(8).

       By  /mips/9magnumboot  installing as the kernel on disk, it is possible
       to bootstrap another kernel using networks or devices  unknown  to  the
       regular ROM.  In other words, use partboot to load a more sophisticated
       bootstrapping kernel, and boot again using that.  For example, typing

              dksd(0,0)b il /mips/9magnum

       to such a system will bootstrap over the Ethernet using IL.

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

   PCs
       To  boot  a  PC,  it  is  necessary  to  get  b loaded into memory (see
       b.com(8)).  There are two ways to do this.  A Plan 9 boot  floppy  pre‐
       pared by format (see prep(8)) will start b when the PC is reset or pow‐
       ered on.  Without such a floppy, boot DOS normally and type  b  to  the
       DOS prompt.

       From  DOS,  it is possible to give b an argument to specify the booting
       method.  Otherwise, b will prompt for the method.

       To boot the file /386/9pc from Ethernet using BOOTP and tftpd, use  the
       method e!0 or to DOS type

              b e!0

       The  DOS file plan9.ini (see plan9.ini(8)) must specify an Ethernet in‐
       terface card for this to work.

       To boot from the Plan 9 IDE hard disk partition hd0boot, type

              b h!0!boot

       To boot from a DOS filesystem the kernel 9pc, type

              b hd!0!9pc

       To boot from a DOS filesystem on a floppy, type

              b fd!0!9pc

       The boot program b will also read the file plan9.ini from the DOS  file
       system on any floppy or hard disk and pass it to the kernel.  Plan9.ini
       specifies PC configuration information.  See b.com(8) and  plan9.ini(8)
       for details.

       Once the kernel is booted, it behaves like the 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, typing a control-P on the con‐
       sole reboots the machine.

   SGI Power Series CPU Server
       Enter the ROM monitor by typing an ESC at the system startup menu, then
       select  option  5.   The  monitor  will  print  a >> prompt.  Then type
       bootp()/mips/9powerboot to load the  Plan  9  bootstrap  program.   The
       bootstrap  program  takes two optional arguments, which may be typed on
       the same command line: 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.

       The bootstrap program reads a configuration  description  from  a  file
       identified    by    the    IP    address    of    the   machine,   e.g.
       /mips/conf/123.101.89.77.  9powerboot then loads the kernel and  passes
       it the configuration information.

   Sun Sparcstation CPU Server
       Proceed  as  for  the  Sparcstation  running  as  a  terminal  but load
       /sparc/9sscpu on Sparcstation 2's and /sparc/9ss10cpu  on  Sparcstation
       10's.

   Mips Magnum CPU Server
       Booting  is  the  same  as for the Magnum running as a terminal but the
       file to load is /mips/9magnumcpu.

   File servers
       The CPU servers and terminals run essentially the same program, 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 File Server
       Get to the >> prompt as described for the CPU servers.  Then  boot  the
       system  over  the Ethernet like a Magnum (sic), loading /mips/9powerfs.
       The system will come up automatically.  On  machines  with  WORM  juke‐
       boxes,  several minutes will be spent initializing the jukebox; the ma‐
       chine will chat happily while this is going on.   The  first  time  the
       system  is booted, it will be necessary to establish the NVRAM and con‐
       figuration information; see fsconfig(8).

   Mips 6280 File Server
       In response to the ROM's >>> prompt, type

              bootp(,egl)servername:96280fs

   Sparc Sparcstation File Server
       Proceed as for  the  Sparcstation  running  as  a  terminal,  but  load
       /sparc/9ssfs.  There is support for the Sparcstation 2 only.

   Mips Magnum File Server
       Proceed  as  for the Magnum running as a terminal, but load /mips/9mag‐
       numfs.

SEE ALSO
       b.com(8), boot(8), fs(8), init(8), plan9.ini(8)

SOURCE
       Sources for the various boot programs are under  /sys/src/boot,  except
       that   /mips/9powerboot  is  a  version  of  the  SGI  kernel  made  in
       /sys/src/9/power.

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



                                                                    BOOTING(8)