1.\" Copyright (c) 1980, 1991, 1993 2.\" The Regents of the University of California. All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 3. Neither the name of the University nor the names of its contributors 13.\" may be used to endorse or promote products derived from this software 14.\" without specific prior written permission. 15.\" 16.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 17.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 20.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 21.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 22.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 23.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 24.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26.\" SUCH DAMAGE. 27.\" 28.\" @(#)reboot.2 8.1 (Berkeley) 6/4/93 29.\" $FreeBSD$ 30.\" 31.Dd July 10, 2018 32.Dt REBOOT 2 33.Os 34.Sh NAME 35.Nm reboot 36.Nd reboot system or halt processor 37.Sh LIBRARY 38.Lb libc 39.Sh SYNOPSIS 40.In unistd.h 41.In sys/reboot.h 42.Ft int 43.Fn reboot "int howto" 44.Sh DESCRIPTION 45The 46.Fn reboot 47system call 48reboots the system. 49Only the super-user may reboot a machine on demand. 50However, a reboot is invoked 51automatically in the event of unrecoverable system failures. 52.Pp 53The 54.Fa howto 55argument 56is a mask of options; the system call interface allows the following 57options, defined in the include file 58.In sys/reboot.h , 59to be passed 60to the new kernel or the new bootstrap and init programs. 61.Bl -tag -width RB_POWERCYCLE 62.It Dv RB_AUTOBOOT 63The default, causing the system to reboot in its usual fashion. 64.It Dv RB_ASKNAME 65Normally the system only prompts the user if the loader specified root 66file system has an error. 67This flag forces it to always prompt the user for the root partition. 68.It Dv RB_DFLTROOT 69Use the compiled in root device. 70Normally, the system uses the device from which it was booted 71as the root device if possible. 72(The default behavior is dependent on the ability of the bootstrap program 73to determine the drive from which it was loaded, which is not possible 74on all systems.) 75.It Dv RB_DUMP 76Dump kernel memory before rebooting; see 77.Xr savecore 8 78for more information. 79.It Dv RB_HALT 80The processor is simply halted; no reboot takes place. 81This option should be used with caution. 82.It Dv RB_POWERCYCLE 83After halting, the shutdown code will do what it can to turn 84off the power and then turn the power back on. 85This requires hardware support, usually an auxiliary microprocessor 86that can sequence the power supply. 87At present only the 88.Xr ipmi 4 89driver implements this feature. 90.It Dv RB_POWEROFF 91After halting, the shutdown code will do what it can to turn 92off the power. 93This requires hardware support. 94.It Dv RB_KDB 95Load the symbol table and enable a built-in debugger in the system. 96This option will have no useful function if the kernel is not configured 97for debugging. 98Several other options have different meaning if combined 99with this option, although their use may not be possible 100via the 101.Fn reboot 102system call. 103See 104.Xr ddb 4 105for more information. 106.It Dv RB_NOSYNC 107Normally, the disks are sync'd (see 108.Xr sync 8 ) 109before the processor is halted or rebooted. 110This option may be useful if file system changes have been made manually 111or if the processor is on fire. 112.It Dv RB_REROOT 113Instead of rebooting, unmount all filesystems except the one containing 114currently-running executable, and mount root filesystem using the same 115mechanism which is used during normal boot, based on 116vfs.root.mountfrom 117.Xr kenv 1 118variable. 119.It Dv RB_RDONLY 120Initially mount the root file system read-only. 121This is currently the default, and this option has been deprecated. 122.It Dv RB_SINGLE 123Normally, the reboot procedure involves an automatic disk consistency 124check and then multi-user operations. 125.Dv RB_SINGLE 126prevents this, booting the system with a single-user shell 127on the console. 128.Dv RB_SINGLE 129is actually interpreted by the 130.Xr init 8 131program in the newly booted system. 132.El 133.Pp 134When no options are given (i.e., 135.Dv RB_AUTOBOOT 136is used), the system is 137rebooted from file 138.Dq kernel 139in the root file system of unit 0 140of a disk chosen in a processor specific way. 141An automatic consistency check of the disks is normally performed 142(see 143.Xr fsck 8 ) . 144.Sh RETURN VALUES 145If successful, this call never returns. 146Otherwise, a -1 is returned and an error is returned in the global 147variable 148.Va errno . 149.Sh ERRORS 150.Bl -tag -width Er 151.It Bq Er EPERM 152The caller is not the super-user. 153.El 154.Sh SEE ALSO 155.Xr crash 8 , 156.Xr halt 8 , 157.Xr init 8 , 158.Xr reboot 8 , 159.Xr savecore 8 160.Sh HISTORY 161The 162.Fn reboot 163system call appeared in 164.Bx 4.0 . 165