1/* $NetBSD: README,v 1.1 2001/06/14 12:57:12 fredette Exp $ */ 2 3The sun bootblocks are split into two parts: a small 1st-level program that 4gets written right after the superblock in a partition (and is hence limited 5in size to SBSIZE - DEV_BSIZE bytes), and a 2nd-level program that resides 6in the filesystem proper. 7 8The 1st-level program is loaded into memory by the PROM. It loads the second 9stage program from a set of filesystem block numbers that are hard-coded 10into it by the `installboot' program. The prototype code for the 1st-level 11bootblocks are in `bootxx'. 12 13The 2nd-level program (`ufsboot') is normally installed in the root FS 14as `/ufsboot'. It uses the device drivers in the PROM and the stand-alone 15filesystem code in `libsa.a' to locate and load the kernel. 16 17Use the following command to install the 1st-level bootblocks in the 18root filesystem (on `sd0a') using the file `/boot' as the second level 19boot 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 27The above only works with securelevel <= 0 (see init.8 manual). 28 29Status: 30 31netboot works. 32 33bootxx, installboot are tested and working. It would be nice if 34installboot would find the inumber for the 2nd stage boot program 35without having the filesystem mounted so this command can work 36with securelevel==1 (the default). Doing this requies adding 37code to read and do a directory lookup in the root... 38 39