xref: /netbsd-src/usr.sbin/installboot/installboot.8 (revision a536ee5124e62c9a0051a252f7833dc8f50f44c9)
1.\"	$NetBSD: installboot.8,v 1.86 2012/03/10 19:38:16 wiz Exp $
2.\"
3.\" Copyright (c) 2002-2012 The NetBSD Foundation, Inc.
4.\" All rights reserved.
5.\"
6.\" This code is derived from software contributed to The NetBSD Foundation
7.\" by Luke Mewburn of Wasabi Systems.
8.\"
9.\" Redistribution and use in source and binary forms, with or without
10.\" modification, are permitted provided that the following conditions
11.\" are met:
12.\" 1. Redistributions of source code must retain the above copyright
13.\"    notice, this list of conditions and the following disclaimer.
14.\" 2. Redistributions in binary form must reproduce the above copyright
15.\"    notice, this list of conditions and the following disclaimer in the
16.\"    documentation and/or other materials provided with the distribution.
17.\"
18.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
20.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
21.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
22.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28.\" POSSIBILITY OF SUCH DAMAGE.
29.\"
30.Dd March 10, 2012
31.Dt INSTALLBOOT 8
32.Os
33.Sh NAME
34.Nm installboot
35.Nd install disk bootstrap software
36.
37.Sh SYNOPSIS
38.Nm
39.Op Fl fnv
40.Op Fl B Ar s2bno
41.Op Fl b Ar s1bno
42.Op Fl m Ar machine
43.Op Fl o Ar options
44.Op Fl t Ar fstype
45.Ar filesystem
46.Ar primary
47.Op Ar secondary
48.Nm
49.Fl c
50.Op Fl fnv
51.Op Fl m Ar machine
52.Op Fl o Ar options
53.Op Fl t Ar fstype
54.Ar filesystem
55.Nm
56.Fl e
57.Op Fl fnv
58.Op Fl m Ar machine
59.Op Fl o Ar options
60.Ar bootstrap
61.
62.Sh DESCRIPTION
63The
64.Nm
65utility installs and removes
66.Nx
67disk bootstrap software into a file system.
68.Nm
69can install
70.Ar primary
71into
72.Ar filesystem ,
73or disable an existing bootstrap in
74.Ar filesystem .
75.Pp
76On some architectures the options of an existing installed bootstrap,
77or those of a bootstrap file can be changed.
78Installing a new primary bootstrap will reset those options to default
79values.
80.Pp
81Generally,
82.Nx
83disk bootstrap software consists of two parts: a
84.Dq primary
85bootstrap program usually written into the disklabel area of the
86file system by
87.Nm ,
88and a
89.Dq secondary
90bootstrap program that usually resides as an ordinary file in the file system.
91.Pp
92When booting, the primary bootstrap program is loaded and invoked by
93the machine's PROM or BIOS.
94After receiving control of the system it loads and runs the secondary
95bootstrap program, which in turn loads and runs the kernel.
96The secondary bootstrap may allow control over various boot parameters
97passed to the kernel.
98.Pp
99Perform the following steps to make a file system bootable:
100.Bl -enum
101.It
102Copy the secondary bootstrap (usually
103.Pa /usr/mdec/boot. Ns Sy MACHINE
104or
105.Pa /usr/mdec/boot )
106to the root directory of the target file system.
107.Pp
108.
109.It
110Use
111.Nm
112to install the primary bootstrap program
113(usually
114.Pa /usr/mdec/bootxx_ Ns Sy FSTYPE )
115into
116.Ar filesystem .
117.Pp
118The following platforms do not require this step if the primary bootstrap
119already exists and the secondary bootstrap file is just being updated:
120.Sy alpha ,
121.Sy amd64 ,
122.Sy amiga ,
123.Sy i386 ,
124.Sy pmax ,
125.Sy sparc64 ,
126and
127.Sy vax .
128.Pp
129The following platform does not require the first step since a
130single bootstrap file is used.
131The single bootstrap is installed like the primary bootstrap on
132other platforms:
133.Sy next68k .
134.Pp
135.El
136.Pp
137The options and arguments recognized by
138.Nm
139are as follows:
140.
141.Bl -tag -width "optionsxxx"
142.
143.It Fl B Ar s2bno
144When hard-coding the blocks of
145.Ar secondary
146into
147.Ar primary ,
148start from block
149.Ar s2bno
150instead of trying to determine the block numbers occupied by
151.Ar secondary
152by examining
153.Ar filesystem .
154If this option is supplied,
155.Ar secondary
156should refer to an actual secondary bootstrap (rather than the
157file name of the one present in
158.Ar filesystem )
159so that its size can be determined.
160.
161.It Fl b Ar s1bno
162Install
163.Ar primary
164at block number
165.Ar s1bno
166instead of the default location for the machine and file system type.
167.Sy [ alpha ,
168.Sy i386/amd64 (bootxx_fat16 only) ,
169.Sy pmax ,
170.Sy vax ]
171.
172.It Fl c
173Clear (remove) any existing bootstrap instead of installing one.
174.
175.It Fl e
176Edit the options of an existing bootstrap.
177This can be use to change the options in bootxx_xxxfs files,
178raw disk partitions, and the
179.Pa pxeboot_ia32.bin
180file.
181With
182.Fl v
183and without
184.Fl o ,
185show the current options.
186.Sy [ amd64 , i386 ]
187.
188.It Fl f
189Forces
190.Nm
191to ignore some errors.
192.
193.It Fl m Ar machine
194Use
195.Ar machine
196as the target machine type.
197The default machine is determined from
198.Xr uname 3
199and then
200.Ev MACHINE .
201The following machines are currently supported by
202.Nm :
203.Bd -ragged -offset indent
204.Sy alpha ,
205.Sy amd64 ,
206.Sy amiga ,
207.Sy ews4800mips ,
208.Sy hp300 ,
209.Sy hp700 ,
210.Sy i386 ,
211.Sy landisk ,
212.Sy macppc ,
213.Sy news68k ,
214.Sy newsmips ,
215.Sy next68k ,
216.Sy pmax ,
217.Sy sparc ,
218.Sy sparc64 ,
219.Sy sun2 ,
220.Sy sun3 ,
221.Sy vax ,
222.Sy x68k
223.Ed
224.
225.
226.It Fl n
227Do not write to
228.Ar filesystem .
229.
230.It Fl o Ar options
231Machine specific
232.Nm
233options, comma separated.
234.Pp
235Supported options are (with the machines for they are valid in brackets):
236.
237.Bl -tag -offset indent -width alphasum
238.
239.It Sy alphasum
240.Sy [ alpha ]
241Recalculate and restore the Alpha checksum.
242This is the default for
243.Nx Ns Tn /alpha .
244.
245.It Sy append
246.Sy [ alpha ,
247.Sy pmax ,
248.Sy vax ]
249Append
250.Ar primary
251to the end of
252.Ar filesystem ,
253which must be a regular file in this case.
254.
255.It Sy bootconf
256.Sy [ amd64 ,
257.Sy i386 ]
258(Don't) read a
259.Dq boot.cfg
260file.
261.
262.It Sy command=\*[Lt]boot command\*[Gt]
263.Sy [ amiga ]
264Modify the default boot command line.
265.
266.It Sy console=\*[Lt]console name\*[Gt]
267.Sy [ amd64 ,
268.Sy i386 ]
269Set the console device, \*[Lt]console name\*[Gt] must be one of:
270pc, com0, com1, com2, com3, com0kbd, com1kbd, com2kbd or com3kbd.
271.
272.It Sy ioaddr=\*[Lt]ioaddr\*[Gt]
273.Sy [ amd64 ,
274.Sy i386 ]
275Set the IO address to be used for the console serial port.
276Defaults to the IO address used by the system BIOS for the specified port.
277.
278.It Sy keymap=\*[Lt]keymap\*[Gt]
279.Sy [ amd64 ,
280.Sy i386 ]
281Set a boot time keyboard translation map.
282Each character in \*[Lt]keymap\*[Gt] will be replaced by the one following it.
283For example, an argument of
284.Dq zyz
285would swap the lowercase letters
286.Sq y
287and
288.Sq z .
289.
290.It Sy modules
291.Sy [ amd64 ,
292.Sy i386 ]
293(Don't) load kernel modules.
294.
295.It Sy password=\*[Lt]password\*[Gt]
296.Sy [ amd64 ,
297.Sy i386 ]
298Set the password which must be entered before the boot menu can be accessed.
299.
300.It Sy resetvideo
301.Sy [ amd64 ,
302.Sy i386 ]
303Reset the video before booting.
304.
305.It Sy speed=\*[Lt]baud rate\*[Gt]
306.Sy [ amd64 ,
307.Sy i386 ]
308Set the baud rate for the serial console.
309If a value of zero is specified, then the current baud rate (set by the
310BIOS) will be used.
311.
312.It Sy sunsum
313.Sy [ alpha ,
314.Sy pmax ,
315.Sy vax ]
316Recalculate and restore the Sun and
317.Nx Ns Tn /sparc
318compatible checksum.
319.Em Note :
320The existing
321.Nx Ns Tn /sparc
322disklabel should use no more than 4 partitions.
323.
324.It Sy timeout=\*[Lt]seconds\*[Gt]
325.Sy [ amd64 ,
326.Sy i386 ]
327Set the timeout before the automatic boot begins to the given number of seconds.
328.El
329.
330.It Fl t Ar fstype
331Use
332.Ar fstype
333as the type of
334.Ar filesystem .
335The default operation is to attempt to auto-detect this setting.
336The following file system types are currently supported by
337.Nm :
338.
339.Bl -tag -offset indent -width raid
340.
341.It Sy ffs
342.Bx
343Fast File System.
344.
345.It Sy raid
346Mirrored RAIDframe File System.
347.
348.It Sy raw
349.Sq Raw
350image.
351Note: if a platform needs to hard-code the block offset of the secondary
352bootstrap, it cannot be searched for on this file system type, and must
353be provided with
354.Fl B Ar s2bno .
355.El
356.
357.It Fl v
358Verbose operation.
359.
360.It Ar filesystem
361The path name of the device or file system image that
362.Nm
363is to operate on.
364It is not necessary for
365.Ar filesystem
366to be a currently mounted file system.
367.
368.It Ar primary
369The path name of the
370.Dq primary
371boot block to install.
372The path name must refer to a file in a file system that is currently
373mounted.
374.
375.It Ar secondary
376The path name of the
377.Dq secondary
378boot block, relative to the root of
379the file system in the device or image specified by the
380.Ar filesystem
381argument.
382Note that this may refer to a file in a file system that is not mounted.
383Most systems require
384.Ar secondary
385to be in the
386.Dq root
387directory of the file system, so the leading
388.Dq Pa /
389is not necessary on
390.Ar secondary .
391.Pp
392Only certain combinations of
393platform
394.Pq Fl m Ar machine
395and file system type
396.Pq Fl t Ar fstype
397require that the name of the secondary bootstrap is
398supplied as
399.Ar secondary ,
400so that information such as the disk block numbers occupied
401by the secondary bootstrap can be stored in the primary bootstrap.
402These are:
403.Bl -column "Platform" "File systems" -offset indent
404.It Sy "Platform" Ta Sy "File systems"
405.It macppc Ta ffs, raw
406.It news68k Ta ffs, raw
407.It newsmips Ta ffs, raw
408.It sparc Ta ffs, raid, raw
409.It sun2 Ta ffs, raw
410.It sun3 Ta ffs, raw
411.El
412.El
413.Pp
414.Nm
415exits 0 on success, and \*[Gt]0 if an error occurs.
416.
417.Sh ENVIRONMENT
418.Nm
419uses the following environment variables:
420.
421.Bl -tag -width "MACHINE"
422.
423.It Ev MACHINE
424Default value for
425.Ar machine ,
426overriding the result from
427.Xr uname 3 .
428.
429.El
430.
431.Sh FILES
432Most
433.Nx
434ports will contain variations of the following files:
435.Pp
436.Bl -tag -width /usr/mdec/bootxx_ustarfs
437.
438.It Pa /usr/mdec/bootxx_ Ns Sy FSTYPE
439Primary bootstrap for file system type
440.Sy FSTYPE .
441Installed into the bootstrap area of the file system by
442.Nm .
443.
444.It Pa /usr/mdec/bootxx_fat16
445Primary bootstrap for
446.Tn MS-DOS
447.Sy FAT16
448file systems.
449This differs from
450.Nm bootxx_msdos
451in that it doesn't require the filesystem to have been initialised with
452any
453.Ql reserved sectors .
454It also uses the information in the
455.Ql Boot Parameter Block
456to get the media and filesytem properties.
457The
458.Ql hidden sectors
459field of the BPB must be the offset of the partition in the disk.
460This can be set using the
461.Fl b Ar s1bno
462option.
463.
464.It Pa /usr/mdec/bootxx_ffsv1
465Primary bootstrap for
466.Sy FFSv1
467file systems
468(the
469.Ql traditional
470file system prior to
471.Nx 6.0 ) .
472Use
473.Xr dumpfs 8
474to confirm the file system format is
475.Sy FFSv1 .
476.
477.It Pa /usr/mdec/bootxx_ffsv2
478Primary bootstrap for
479.Sy FFSv2
480file systems (the default file system for some platforms as of
481.Nx 6.0 ) .
482Use
483.Xr dumpfs 8
484to confirm the file system format is
485.Sy FFSv2 .
486.
487.It Pa /usr/mdec/bootxx_lfsv1
488Primary bootstrap for
489.Sy LFSv1
490file systems.
491.
492.It Pa /usr/mdec/bootxx_lfsv2
493Primary bootstrap for
494.Sy LFSv2
495file systems
496(the default LFS version).
497.
498.It Pa /usr/mdec/bootxx_msdos
499Primary bootstrap for
500.Tn MS-DOS
501.Sy FAT
502file systems.
503.
504.It Pa /usr/mdec/bootxx_ustarfs
505Primary bootstrap for
506.Sy TARFS
507boot images.
508This is used by various install media.
509.
510.It Pa /usr/mdec/boot. Ns Sy MACHINE
511Secondary bootstrap for machine type
512.Sy MACHINE .
513This should be installed into the file system before
514.Nm
515is run.
516.
517.It Pa /usr/mdec/boot
518Synonym for
519.Pa /usr/mdec/boot. Ns Sy MACHINE
520.
521.It Pa /boot. Ns Sy MACHINE
522Installed copy of secondary bootstrap for machine type
523.Sy MACHINE .
524.
525.It Pa /boot
526Installed copy of secondary bootstrap.
527Searched for by the primary bootstrap if
528.Pa /boot. Ns Sy MACHINE
529is not found.
530.
531.El
532.
533.Ss Nx Ns Tn /hp700 files
534.
535.Bl -tag -width /usr/mdec/bootxx_ustarfs
536.
537.It Pa /usr/mdec/xxboot
538.Nx Ns Tn /hp700
539primary bootstrap for
540.Sy FFSv1 ,
541.Sy FFSv2 ,
542.Sy LFSv1 ,
543and
544.Sy LFSv2 .
545.It Pa /usr/mdec/cdboot
546.Nx Ns Tn /hp700
547primary bootstrap for ISO 9660 file system.
548.It Pa /usr/mdec/sdboot
549Synonym for
550.Pa /usr/mdec/xxboot
551.
552.El
553.
554.Ss Nx Ns Tn /macppc files
555.
556.Bl -tag -width /usr/mdec/bootxx_ustarfs
557.
558.It Pa /usr/mdec/bootxx
559.Nx Ns Tn /macppc
560primary bootstrap.
561.
562.It Pa /usr/mdec/ofwboot
563.Nx Ns Tn /macppc
564secondary bootstrap.
565.
566.It Pa /ofwboot
567Installed copy of
568.Nx Ns Tn /macppc
569secondary bootstrap.
570.
571.El
572.
573.Ss Nx Ns Tn /next68k files
574.
575.Bl -tag -width /usr/mdec/bootxx_ustarfs
576.
577.It Pa /usr/mdec/boot
578.Nx Ns Tn /next68k
579bootstrap.
580.
581.El
582.
583.Ss Nx Ns Tn /sparc64 files
584.
585.Bl -tag -width /usr/mdec/bootxx_ustarfs
586.
587.It Pa /usr/mdec/bootblk
588.Nx Ns Tn /sparc64
589primary bootstrap.
590.
591.It Pa /usr/mdec/ofwboot
592.Nx Ns Tn /sparc64
593secondary bootstrap.
594.
595.It Pa /ofwboot
596Installed copy of
597.Nx Ns Tn /sparc64
598secondary bootstrap.
599.
600.El
601.
602.Sh EXAMPLES
603.
604.Ss common
605Verbosely install the Berkeley Fast File System primary bootstrap on to disk
606.Sq sd0 :
607.Dl Ic installboot -v /dev/rsd0c /usr/mdec/bootxx_ffs
608Note: the
609.Dq whole disk
610partition (c on some ports, d on others) is used here, since the a partition
611probably is already opened (mounted as
612.Pa / ) ,
613so
614.Nm
615would not be able to access it.
616.Pp
617Remove the primary bootstrap from disk
618.Sq sd1 :
619.Dl Ic installboot -c /dev/rsd1c
620.
621.Ss Nx Ns Tn /amiga
622Modify the command line to change the default from "netbsd -ASn2" to
623"netbsd -S":
624.Dl Ic installboot -m amiga -o command="netbsd -S" /dev/rsd0a /usr/mdec/bootxx_ffs
625.
626.Ss Nx Ns Tn /ews4800mips
627Install the System V Boot File System primary bootstrap on to disk
628.Sq sd0 ,
629with the secondary bootstrap
630.Sq Pa /boot
631already present in the SysVBFS partition on the disk:
632.Dl Ic installboot /dev/rsd0c /usr/mdec/bootxx_bfs
633.
634.Ss Nx Ns Tn /i386 and Nx Ns Tn /amd64
635Install new boot blocks on an existing
636.Sy FFSv2
637mounted root file system on
638.Sq wd0 ,
639setting the timeout to five seconds, after copying a new secondary
640bootstrap:
641.Dl Ic cp /usr/mdec/boot /boot
642.Dl Ic installboot -v -o timeout=5 /dev/rwd0a /usr/mdec/bootxx_ffsv2
643.Bd -ragged -offset indent-two -compact
644.Em Note :
645Pre
646.Nx 6.0
647systems used
648.Sy FFSv1
649file systems on these platforms; double check with
650.Xr dumpfs 8
651to be sure to use the correct secondary bootstrap.
652.Ed
653.Pp
654Create a bootable CD-ROM with an ISO 9660
655file system for an i386 system with a serial console:
656.Dl Ic mkdir cdrom
657.Dl Ic cp sys/arch/i386/compile/mykernel/netbsd cdrom/netbsd
658.Dl Ic cp /usr/mdec/boot cdrom/boot
659.Dl Ic cp /usr/mdec/bootxx_cd9660 bootxx
660.Dl Ic installboot -o console=com0,speed=19200 -m i386 -e bootxx
661.Dl Ic makefs -t cd9660 -o 'bootimage=i386;bootxx,no-emul-boot' boot.iso \
662	cdrom
663.
664.Pp
665Create a bootable floppy disk with an FFSv1
666file system for a small custom kernel (note: bigger kernels needing
667multiple disks are handled with the ustarfs file system):
668.Dl Ic newfs -s 1440k /dev/rfd0a
669.Bd -ragged -offset indent-two -compact
670.Em Note :
671Ignore the warnings that
672.Xr newfs 8
673displays; it can not write a disklabel,
674which is not a problem for a floppy disk.
675.Ed
676.Dl Ic mount /dev/fd0a /mnt
677.Dl Ic cp /usr/mdec/boot /mnt/boot
678.Dl Ic gzip -9 \*[Lt] sys/arch/i386/compile/mykernel/netbsd \*[Gt] /mnt/netbsd.gz
679.Dl Ic umount /mnt
680.Dl Ic installboot -v /dev/rfd0a /usr/mdec/bootxx_ffsv1
681.
682.Pp
683Create a bootable FAT file system on
684.Sq wd1a ,
685which should have the same offset and size as a FAT primary partition
686in the Master Boot Record (MBR):
687.Dl Ic newfs_msdos -r 16 /dev/rwd1a
688.Bd -ragged -offset indent-two -compact
689.Em Notes :
690The
691.Fl r Ar 16
692is to reserve space for the primary bootstrap.
693.Xr newfs_msdos 8
694will display an
695.Dq MBR type
696such as
697.Ql 1 ,
698.Ql 4 ,
699or
700.Ql 6 ;
701the MBR partition type of the appropriate primary partition should be
702changed to this value.
703.Ed
704.Dl Ic mount -t msdos /dev/wd1a /mnt
705.Dl Ic cp /usr/mdec/boot /mnt/boot
706.Dl Ic cp path/to/kernel /mnt/netbsd
707.Dl Ic umount /mnt
708.Dl Ic installboot -t raw /dev/rwd1a /usr/mdec/bootxx_msdos
709.Pp
710Make the existing FAT16 filesystem on
711.Sq sd0e
712bootable.
713This can be used to make USB memory bootable provided it has 512 byte
714sectors and that the manufacturer correctly initialised the file system.
715.Dl Ic mount -t msdos /dev/sd0e /mnt
716.Dl Ic cp /usr/mdec/boot /mnt/boot
717.Dl Ic cp path/to/kernel /mnt/netbsd
718.Dl Ic umount /mnt
719.Dl Ic installboot /dev/rsd0e /usr/mdec/bootxx_fat16
720It may also be necessary to use
721.Nm fdisk
722to make the device itself bootable.
723.
724.Pp
725Switch the existing installed bootstrap to use a serial console without
726reinstalling or altering other options such as timeout.
727.Dl Ic installboot -e -o console=com0 /dev/rwd0a
728.Ss Nx Ns Tn /macppc
729Note the
730.Nm
731utility is only required for macppc machines with OpenFirmware version 2
732to boot.
733OpenFirmware 3 cannot load bootblocks specified in the Apple partition
734map.
735.Pp
736Install the Berkeley Fast File System primary bootstrap on to disk
737.Sq wd0 :
738.Dl Ic installboot /dev/rwd0c /usr/mdec/bootxx /ofwboot
739.Pp
740The secondary
741.Nx Ns Tn /macppc
742bootstrap is located in
743.Pa /usr/mdec/ofwboot .
744.Pp
745The primary bootstrap requires the raw
746.Pa ofwboot
747for the secondary bootstrap, not
748.Pa ofwboot.xcf ,
749which is used for the OpenFirmware to load kernels.
750.Ss Nx Ns Tn /next68k
751Install the bootstrap on to disk
752.Sq sd0 :
753.Dl Ic installboot /dev/rsd0c /usr/mdec/boot
754.Pp
755.
756.Ss Nx Ns Tn /pmax
757Install the Berkeley Fast File System primary bootstrap on to disk
758.Sq sd0 :
759.Dl Ic installboot /dev/rsd0c /usr/mdec/bootxx_ffs
760.Pp
761.Nx Ns Tn /pmax
762requires that this file system starts at block 0 of the disk.
763.Pp
764Install the ISO 9660 primary bootstrap in the file
765.Pa /tmp/cd-image :
766.Dl Ic installboot -m pmax /tmp/cd-image /usr/mdec/bootxx_cd9660
767.Pp
768Make an ISO 9660 filesystem in the file
769.Pa /tmp/cd-image
770and install the ISO 9660 primary bootstrap in the filesystem, where the
771source directory for the ISO 9660 filesystem contains a kernel, the
772primary bootstrap
773.Pa bootxx_cd9660
774and the secondary bootstrap
775.Pa boot.pmax :
776.Dl Ic mkisofs -o /tmp/cd-image -a -l -v iso-source-dir
777.Dl ...
778.Dl 48 51 iso-source-dir/bootxx_cd9660
779.Dl ...
780.Dl Ic installboot -b `expr 48 \e* 4` /tmp/cd-image /usr/mdec/bootxx_cd9660
781.
782.Ss Nx Ns Tn /sparc
783Install the Berkeley Fast File System primary bootstrap on to disk
784.Sq sd0 ,
785with the secondary bootstrap
786.Sq Pa /boot
787already present:
788.Dl Ic installboot /dev/rsd0c /usr/mdec/bootxx /boot
789.
790.Ss Nx Ns Tn /sparc64
791Install the primary bootstrap on to disk
792.Sq sd0 :
793.Dl Ic installboot /dev/rsd0c /usr/mdec/bootblk
794.Pp
795The secondary
796.Nx Ns Tn /sparc64
797bootstrap is located in
798.Pa /usr/mdec/ofwboot .
799.
800.Ss Nx Ns Tn /sun2 and Nx Ns Tn /sun3
801Install the Berkeley Fast File System primary bootstrap on to disk
802.Sq sd0 ,
803with the secondary bootstrap
804.Sq Pa /boot
805already present:
806.Dl Ic installboot /dev/rsd0c /usr/mdec/bootxx /boot
807.
808.Sh SEE ALSO
809.Xr uname 3 ,
810.Xr boot 8 ,
811.Xr disklabel 8 ,
812.Xr dumpfs 8 ,
813.Xr fdisk 8 ,
814.Xr pxeboot 8
815.
816.Sh HISTORY
817This implementation of
818.Nm
819appeared in
820.Nx 1.6 .
821.
822.Sh AUTHORS
823The machine independent portion of this implementation of
824.Nm
825was written by Luke Mewburn.
826The following people contributed to the various machine dependent
827back-ends:
828Simon Burge (pmax),
829Chris Demetriou (alpha),
830Matthew Fredette (sun2, sun3),
831Matthew Green (sparc64),
832Ross Harvey (alpha),
833Michael Hitch (amiga),
834Paul Kranenburg (sparc),
835David Laight (i386),
836Christian Limpach (next68k),
837Luke Mewburn (macppc),
838Matt Thomas (vax),
839Izumi Tsutsui (news68k, newsmips),
840and
841UCHIYAMA Yasushi (ews4800mips).
842.
843.Sh BUGS
844There are not currently primary bootstraps to support all file systems
845types which are capable of being the root file system.
846.Pp
847If a disk has been converted from
848.Sy FFS
849to
850.Sy RAID
851without the contents of the disk erased, then the original
852.Sy FFS
853installation may be auto-detected instead of the
854.Sy RAID
855installation.
856In this case, the
857.Fl t Ar raid
858option must be provided.
859.
860.Ss Nx Ns Tn /alpha
861The
862.Nx Ns Tn /alpha
863primary bootstrap program can only load the secondary bootstrap program
864from file systems starting at the beginning (block 0) of disks.
865Similarly, the secondary bootstrap program can only load kernels from
866file systems starting at the beginning of disks.
867.Pp
868The size of primary bootstrap programs is restricted to 7.5KB, even
869though some file systems (e.g., ISO 9660) are able to accommodate larger
870ones.
871.
872.Ss Nx Ns Tn /hp300
873The disk must have a boot partition large enough to hold the bootstrap code.
874Currently the primary bootstrap must be a LIF format file.
875.
876.Ss Nx Ns Tn /i386 and Nx Ns Tn /amd64
877The bootstrap must be installed in the
878.Nx
879partition that starts at the beginning of the mbr partition.
880If that is a valid filesystem and contains the
881.Pa /boot
882program then it will be used as the root filesystem, otherwise the
883.Sq a
884partition will be booted.
885.Pp
886The size of primary bootstrap programs is restricted to 8KB, even
887though some file systems (e.g., ISO 9660) are able to accommodate larger
888ones.
889.
890.Ss Nx Ns Tn /macppc
891Due to restrictions in
892.Nm
893and the secondary bootstrap implementation, file systems where kernels exist
894must start at the beginning of disks.
895.Pp
896Currently,
897.Nm
898doesn't recognize an existing Apple partition map on the disk
899and always writes a faked map to make disks bootable.
900.Pp
901The
902.Nx Ns Tn /macppc
903bootstrap program can't load kernels from
904.Sy FFSv2
905partitions.
906.Ss Nx Ns Tn /next68k
907The size of bootstrap programs is restricted to the free space before
908the file system at the beginning of the disk minus 8KB.
909.
910.Ss Nx Ns Tn /pmax
911The
912.Nx Ns Tn /pmax
913secondary bootstrap program can only load kernels from file
914systems starting at the beginning of disks.
915.Pp
916The size of primary bootstrap programs is restricted to 7.5KB, even
917though some file systems (e.g., ISO 9660) are able to accommodate larger
918ones.
919.
920.Ss Nx Ns Tn /sun2 and Nx Ns Tn /sun3
921The
922.Nx Ns Tn /sun2
923and
924.Nx Ns Tn /sun3
925secondary bootstrap program can only load kernels from file
926systems starting at the beginning of disks.
927.
928.Ss Nx Ns Tn /vax
929The
930.Nx Ns Tn /vax
931secondary bootstrap program can only load kernels from file systems
932starting at the beginning of disks.
933.Pp
934The size of primary bootstrap programs is restricted to 7.5KB, even
935though some file systems (e.g., ISO 9660) are able to accommodate larger
936ones.
937