BOOT(8) | System Manager's Manual (x68k) | BOOT(8)

# NAME

`boot` — system bootstrapping procedures

# DESCRIPTION

## Power fail and crash recovery

Normally, the system will reboot itself at power-up or after crashes. An automatic consistency check of the file systems will be performed, and unless this fails, the system will resume multi-user operations.

## Cold starts

The X68000/X68030 system boots from the device which is determined by the configuration of battery-backuped SRAM. By default, the boot ROM attempts to boot from floppy disk drives (from 0 to 3) first, and then attempts to boot from hard disk (SASI or SCSI). On the NetBSD/x68k, booting from SCSI disks (sd??) and 2HD floppy disks (fd?a, fd?c) is currently supported.

## Bootstrapping from a floppy

When the floppy disk is selected as the boot device, the initial program loader of the IOCS (firmware) reads the fdboot_ufs program at the top of the disk, and then the fdboot_ufs program loads the /boot program from the FFS or LFS file system. Normally, the /boot program then loads the NetBSD kernel /netbsd from the same floppy. In addition, the /boot program has abilities to uncompress gzip'ed kernels, to read the kernel from other disks of other file systems etc (see below).

For floppy disks, fdboot_ustar is also provided to read large kernels which do not fit one a single floppy.

## Bootstrapping from a SCSI hard disk

When a SCSI hard disk is selected as the boot device, the initial program loader on the SCSI host adapter's ROM reads the operating system-independent IPL menu program at the top of the disk. The IPL menu program recognizes the partition table, and selects the partition to read the operating system kernel. During this phase, when the HELP key on the keyboard is pressed, the IPL menu program displays the partition menu of that disk to prompt the user to select the boot partition (although the NetBSD implementation of the IPL menu, /usr/mdec/mboot, does not have this functionality).

Next, the IPL menu reads the OS-dependent boot program from the top of the selected partition. For NetBSD FFS/LFS file systems sdboot_ufs is used. The sdboot_ufs program then loads the /boot program from that partition.

## Normal Operation

Once running, a banner similar to the following will appear:

    NetBSD Multi-boot, Revision 1.1
    (user@buildhost, builddate)
    Press return to boot now, any other key for boot menu
    booting sd0a:netbsd - starting in 5

After a countdown, the system image listed will be loaded. (In the example above, it will be “`sd0a:netbsd`” which is the file `netbsd` on partition “a” of the NetBSD SCSI hard disk of ID 0. Pressing a key within the time limit will enter interactive mode.

## Interactive mode

In interactive mode, the boot loader will present a prompt, allowing input of these commands:

`boot` [device:][filename] [`-adqsv`]
  The default device will be set to the disk that the boot loader was loaded from. To boot from an alternate disk, the full name of the device should be given at the prompt. device is of the form xd[N[x]] where xd is the device from which to boot, N is the unit number, and x is the partition letter.

  The following list of supported devices may vary from installation to installation:

  sd
    SCSI disks on a controller recognized by the IOCS. The unit number is the SCSI ID.
  fd
    Floppy drives as numbered by the IOCS.

  The default filename is netbsd; if the boot loader fails to successfully open that image, it then tries netbsd.gz (expected to be a kernel image compressed by gzip(1)). Alternate system images can be loaded by just specifying the name of the image.

  Options are:

  `-a`
    Prompt for the root file system device, the system crash dump device, and the path to init(8).
  `-d`
    Bring the system up in debug mode. Here it waits for a kernel debugger connect; see ddb(4).
  `-q`
    Boot the system in quiet mode.
  `-s`
    Bring the system up in single-user mode.
  `-v`
    Boot the system in verbose mode.
`help`
  Print an overview about commands and arguments.
`ls` [path]
  Print a directory listing of path, containing inode number, filename and file type. path can contain a device specification.
`halt`
  Reboot the system.

## Model-specific notes

Note for X68030+MC68030 systems: Nothing special to be attended to; you can boot NetBSD just like as other operating systems such as Human68k and OS-9.

Note for X68030/040turbo(68040 accelerator by BEEPs) systems: NetBSD can boot under 040 mode. It can also boot under 030 mode if you have MC68030 on the board.

Note for X68000/Xellent30(68030 accelerator by TSR)+MC68030 systems: In order to boot NetBSD, you must choose 030 mode by using CH30.SYS, which must reside in the battery-backuped SRAM.

Note for X68000/Jupiter-X(68040/060 accelerator by FTZ-net) systems: The system must be in 040/060 processor mode.

# FILES

/netbsd
  system code
/netbsd.gz
  gzip-compressed system code
/usr/mdec/xxboot_ufs
  boot block (read by installboot), xx is disktype
/usr/mdec/boot
  source of /boot (can be just copied to the root directory)
/boot
  main part of the boot program

# SEE ALSO

reboot(2), disklabel(8), halt(8), reboot(8), shutdown(8)

August 16, 2014 | NetBSD 11.0