1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
|
.\" $OpenBSD: boot_pmax.8,v 1.8 1998/09/24 07:08:38 pjanzen Exp $
.\" $NetBSD: boot_pmax.8,v 1.1 1995/04/25 23:55:11 mellon Exp $
.\"
.\" Copyright (c) 1990, 1991 The Regents of the University of California.
.\" All rights reserved.
.\"
.\" This code is derived from software contributed to Berkeley by
.\" the Systems Programming Group of the University of Utah Computer
.\" Science Department.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\" 3. All advertising materials mentioning features or use of this software
.\" must display the following acknowledgement:
.\" This product includes software developed by the University of
.\" California, Berkeley and its contributors.
.\" 4. Neither the name of the University nor the names of its contributors
.\" may be used to endorse or promote products derived from this software
.\" without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.Dd July 23, 1991
.Dt BOOT_PMAX 8
.Os
.Sh NAME
.Nm boot
.Nd
system bootstrapping procedures
.Sh DESCRIPTION
The
.Tn OpenBSD
kernel is started by placing it at the beginning of physical memory
and transferring to the entry point.
Since the system is not reenterable,
it is necessary to read it in from disk or tape
each time it is to be bootstrapped.
.Pp
.Ss Power fail and crash recovery
.Pp
Normally, the system will boot 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.
.Pp
.Ss Cold starts
.Pp
At power up, all DECstation ROMs consult the
.Nm haltaction
environment
variable in EEPROM to determine whether or not to attempt an automatic
boot. If this
variable is set to ``h'', the ROM prints a prompt on the console and
waits for user commands. If set to ``b'', the ROM attempts to autoboot.
.Pp
On the DECstation 2100 and 3100, the path used for automatic booting is
stored in the
.Nm bootpath
environment variable. The path is made up of a
device type specifier (e.g., rz, tz, mop or tftp), followed by
a triplet in the form (x,y,z), followed by a filename to load.
.Pp
Within the triplet, ``x'' is the controller (always 0), ``y'' is the SCSI ID of
the drive to
boot from or 0 for net boots, and ``z'' is the partition to boot from
(usually 0 for SCSI devices, always zero for network booting).
For network boots, () may be specified instead of (0,0,0).
.Pp
The filename is optional for bootp/tftp and mop booting, since in
these cases the network protocol can be used to determine which
file to boot. When booting off the tape, no filename should be
specified, and when booting off disk, the filename of a kernel
must be specified. Generally, the kernel is named
.Pa bsd .
.Pp
An example
.Nm bootpath
setting would be:
.nf
.sp 1
.ce 1
setenv bootpath rz(0,1,0)bsd
.fi
.Pp
For automatic boots, the ROM automatically passes a
.Fl a
argument to the bootloader,
requesting that
.Tn OpenBSD
attempt to come up to multi-user mode. At the boot ROM prompt,
the user may boot
.Tn OpenBSD
with either the
.Nm auto
or the
.Nm boot
command. If the
.Nm auto
command is used, the
.Fl a
argument is passed to the kernel, requesting a multi-user boot; otherwise
the
.Fl s
argument is passed, requesting that
.Tn OpenBSD
boot to single user mode.
.Pp
When either the
.Nm boot
or the
.Nm auto
command is issued with no arguments, the kernel specified in the
.Nm bootpath
environment variable is booted. An alternate kernel may be specified
with the
.Fl f
flag, followed by the path of the kernel to boot, as described above.
For example:
.sp 1
.ce 1
boot -f rz(0,4,0)bsd.new
.Pp
On TurboChannel machines (all DECstation 5000 models), the bootpath
is specified in the
.Nm boot
environment variable, along with any arguments
to be passed to the kernel. Note that to specify boot arguments (e.g.,
.Fl a )
when setting the
.Nm boot
environment variable, the filename and arguments
must be enclosed in quotes. For example:
.nf
.sp 1
.ce 1
setenv boot "3/rz4/bsd -a"
.fi
.Pp
The device from which to boot is specified as the TurboChannel slot
number, a TurboChannel-option-specific device name, and a path to the
file to load, all separated by slashes. You can get a list of the
devices installed in your TurboChannel slots (as well as any built-in
devices which appear as TurboChannel slots) by typing the
.Nm cnfg
command
at the boot prompt. You can get more detailed information about a specific
TurboChannel option by typing
.Nm cnfg
followed by the slot number of that
option.
.Pp
For SCSI devices, the option-specific device identifier is either ``rz#'' for
disks or ``tz#'' for tapes, where # is the SCSI ID of the device. For network
devices, the option-specific protocol identifier is either mop or tftp.
Filename requirements are as for the DECstation 2100 and 3100.
.Pp
To start
.Tn OpenBSD
from the boot prompt, the
.Nm boot
command must be used. With no arguments, this simply boots the default
kernel with the default arguments as set with
.Nm setenv
.Nm boot .
If no
.Nm boot
environment variable is set, or if an alternate kernel is to be
booted, the path of that kernel may be specified after the boot command as
described above, and any arguments may be passed similarly. For example:
.sp 1
.ce 1
boot 3/rz4/bsd.new -a
.Sh SEE ALSO
.Xr crash 8 ,
.Xr fsck 8 ,
.Xr halt 8 ,
.Xr init 8 ,
.Xr newfs 8 ,
.Xr rc 8 ,
.Xr shutdown 8 ,
.Xr syslogd 8 ,
.Xr reboot 8
.Sh HISTORY
The
.Nm
command is
.Ud .
|