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
|
.\" $OpenBSD: installboot.8,v 1.21 1999/07/09 13:35:33 aaron Exp $
.\"
.\" Copyright (c) 1997 Michael Shalayeff
.\" All rights reserved.
.\"
.\" 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 Michael Shalayeff.
.\" 4. The name of the author may not be used to endorse or promote products
.\" derived from this software without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 September 1, 1997
.Dt INSTALLBOOT 8 i386
.Os
.Sh NAME
.Nm installboot
.Nd install a bootstrap on a FFS disk or partition
.Sh SYNOPSIS
.Nm installboot
.Op Fl n
.Op Fl v
.Oo Fl s Ar sectors-per-track Oc
.Oo Fl h Ar tracks-per-cyl Oc
.Ar boot
.Ar biosboot
.Ar disk
.Sh DESCRIPTION
.Nm installboot
is used to install a
.Dq first-stage
boot program into the boot area
of a FFS disk partition, and initialize the table of block numbers the
.Ar biosboot
program uses to load the second-stage boot program.
.Pp
The options are as follows:
.Bl -tag -width flag_opt
.It Fl n
Do not actually write anything on the disk.
.It Fl v
Be verbose, printing out the CHS (Cylinder, Head, Sector)
triples that are stored in
.Ar biosboot
along with lots of other information.
.It Fl s Ar sectors-per-track
Used to specify the sectors-per-track value if the drive has
sector translation activated, and
.Nm
is unable to determine the translated geometry.
.\" If not specified, this defaults to d_nsectors from the disklabel.
If not specified, this defaults to the value retrieved from the BIOS
at boot time, available via
.Xr sysctl 8 .
.It Fl h Ar tracks-per-cyl
Used to specify the tracks-per-cylinder value if the drive has
sector translation activated, and
.Nm
is unable to determine the translated geometry.
.\" If not specified, this defaults to d_ntracks from the disklabel.
If not specified, this defaults to the value retrieved from the BIOS
at boot time, available via
.Xr sysctl 8 .
.El
.Pp
The arguments are:
.Bl -tag -width biosboot
.It Ar boot
The name of the second-stage boot program in the mounted file system
where the first-stage boot program is to be installed. This should be
a full pathname.
.It Ar biosboot
The name of the prototype file for the first stage boot program,
usually
.Pa /usr/mdec/biosboot .
.It Ar disk
The name of the disk containing the partition in which the second-stage
boot program resides and the first-stage boot program is to be installed.
This can either be specified in short form (i.e.,
.Sq sd0
or
.Sq wd0 ) ,
or as the explicit device node, such as
.Pa /dev/rsd0c
or
.Pa /dev/rwd0c .
.Pp
Note that you must be in single-user mode or have your kernel in
insecure mode (see the
.Xr sysctl 8
.Va kern.securelevel
variable or
.Pa /etc/rc.securelevel )
to enable access to the raw partition of a mounted disk.
.Pp
The
.Sq c
partition is always used to represent the
.Dq entire
disk on i386.
.El
.Sh EXAMPLE
The typical use is
.Pp
.Dl # cp /usr/mdec/boot /boot
.Dl # /usr/mdec/installboot -v -n /boot /usr/mdec/biosboot sd0
.Pp
And if the information supplied looks right, run the above without the
.Fl n
flag. If you are upgrading an old system, you may need to preface
the above steps with some more steps... and do the following:
.Pp
.Dl boot the floppy.fs filesystem floppy
.Dl # fsck /dev/rsd0a
.Dl # mount /dev/sd0a /mnt
.Dl # cp /usr/mdec/boot /mnt/boot
.Dl # /usr/mdec/installboot -v /mnt/boot /usr/mdec/biosboot sd0
.Pp
If you need to find the BIOS geometry of the disk for
.Fl s
and
.Fl h
you can use the boot block command:
.Pp
.Dl boot> machine diskinfo
.Sh BUGS
The disklabel
.Va d_type
field must be set to a value other than
.Dq unknown .
.Pp
You cannot run
.Nm installboot
for a drive/partition other than the one you want the
.Pa /boot
to be loaded from.
.Sh SEE ALSO
.Xr biosboot 8 ,
.Xr disklabel 8 ,
.Xr fdisk 8 ,
.Xr init 8
|