Home | History | Annotate | Line # | Download | only in stand
      1 /*	$NetBSD: README,v 1.2 2021/08/17 22:00:31 andvar Exp $ */
      2 
      3 The sun bootblocks are split into two parts: a small 1st-level program that
      4 gets written right after the superblock in a partition (and is hence limited
      5 in size to SBSIZE - DEV_BSIZE bytes), and a 2nd-level program that resides
      6 in the filesystem proper.
      7 
      8 The 1st-level program is loaded into memory by the PROM. It loads the second
      9 stage program from a set of filesystem block numbers that are hard-coded
     10 into it by the `installboot' program. The prototype code for the 1st-level
     11 bootblocks are in `bootxx'.
     12 
     13 The 2nd-level program (`ufsboot') is normally installed in the root FS
     14 as `/ufsboot'. It uses the device drivers in the PROM and the stand-alone
     15 filesystem code in `libsa.a' to locate and load the kernel.
     16 
     17 Use the following command to install the 1st-level bootblocks in the
     18 root filesystem (on `sd0a') using the file `/boot' as the second level
     19 boot program:
     20 
     21 	mount /dev/sd0a /mnt
     22 	cd /usr/mdec
     23 	cp -p ufsboot /mnt/ufsboot
     24 	sync ; sleep 1 ; sync
     25 	./installboot -v /mnt/ufsboot bootxx /dev/rsd0a
     26 
     27 The above only works with securelevel <= 0 (see init.8 manual).
     28 
     29 Status:
     30 
     31 netboot works.
     32 
     33 bootxx, installboot are tested and working.  It would be nice if
     34 installboot would find the inumber for the 2nd stage boot program
     35 without having the filesystem mounted so this command can work
     36 with securelevel==1 (the default).  Doing this requires adding
     37 code to read and do a directory lookup in the root...
     38 
     39