.\" $OpenBSD: installboot.8,v 1.2 1997/02/21 10:21:49 niklas Exp $ .\" $NetBSD: installboot.8,v 1.1.1.1 1996/11/29 23:36:30 is Exp $ .\" .\" Copyright (c) 1995 Paul Kranenburg .\" 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 Paul Kranenburg. .\" 3. 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 AUTHOR 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 November 29, 1996 .Dt INSTALLBOOT 8 .Os .Sh NAME .Nm installboot .Nd install a bootstrap on an FFS filesystem partition .Sh SYNOPSIS .Nm installboot .Ar bootblock .Ar device .Sh DESCRIPTION .Nm installboot copies the bootblock to a bootable partition. The bootstrap is written into the bootblock area on the partition, right in front of the superblock, and hence limited in size to 8192 bytes. .Pp The bootstrap resides in the first few blocks on the partition .Pq as specified by Commodore-Amiga Inc. The bootstrap is loaded into memory by the ROM from bootable devices: RDB devices, where the partition is marked as bootable, or (not on the DraCo) floppy disks in Amiga format (880K/1760k). .Pp In presence of more than one bootable partiton/floppy disk, the partition is chosen by the bootpriority (from the RDB), which can be overridden by the operator from the boot menu (on Amiga machines, hold down the outer mouse buttons during boot; on DraCo machines, press the left mouse button when prompted). .Pp On RDB devices, the whole bootblock is loaded by the ROM. The number of boot blocks in the RDB partition entry must be correct. .Pp On floppy disks, the ROM always loads the first two blocks (1024 bytes), and the bootblock allocates memory and loads the whole bootblock on startup. .Pp After receiving control, the bootblock uses the stand-alone filesystem code in .Dq libsa.a to load the kernel from the filesystem on the partition it was started from. The code for the boot program can be found in .Pa /usr/mdec/fdboot .Pq floppy disk code or .Pa /usr/mdec/xxboot .Pq generic RDB disk code . .Pp The arguments are: .Bl -tag -width bootblock .It Ar bootblock The file containing the bootblock (normally /usr/mdec/xxboot for RDB devices). .It Ar device The name of the character special device specifying the partition on which the bootstrap is to be installed. .El .Sh EXAMPLES The following command will install the boot program in the bootblock area on .Dq sd0a : .Bd -literal -offset indent installboot /usr/mdec/xxboot /dev/rsd0a .Ed .Sh CAVEATS If .Nm is used on the whole disk partition, the RDB will be overwritten. .Pp Some third-party accellerator boards are not auto-configuring. You won't be able to use their memory when booting from the bootblock after a cold start. .Pp Some third-party disk controllers don't support bootblock booting. .Pp Phase 5 68060 boards don't set the SysBase->AttnFlags bit for the 68060 CPU (a patch program which is called during AmigaOS startup does this). Currently, .Tn OpenBSD is not able to detect this condition, and will fail. .Sh BUGS There is currently no easy way to edit the RDB from within .Tn OpenBSD. .Pp As normal dd is used to install the bootblock, you can only install onto your currently used root (or any other mounted) partiton from single-user mode, or while otherwise running in insecure mode. .Sh "SEE ALSO" .Xr dd 1 .Sh HISTORY The .Nm command first appeared in NetBSD-current post 1.2