---
name: "boot"
section: "9freebsd"
platform: "linux"
package: "freebsd-manpages"
version: "12.2-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/boot/9freebsd"
---

# boot(9freebsd)

halt or reboot the system

## NAME

**boot** – halt or reboot the system

## SYNOPSIS

**#include \<sys/types.h\>**

**#include \<sys/systm.h\>**

**#include \<sys/reboot.h\>**

*void*\

**boot**(*int howto*);

## DESCRIPTION

The **boot**() function handles final system shutdown, and either halts or reboots the system. The exact action to be taken is determined by the flags passed in *howto* and by whether or not the system has finished autoconfiguration.

If the system has finished autoconfiguration, **boot**() does the following:

1. If this is the first invocation of **boot**() and the RB\_NOSYNC flag is not set in *howto*, syncs and unmounts the system disks by calling [vfs\_unmountall(9)](/vfs_unmountall/9.md).

2. Disables interrupts.

3. If rebooting after a crash (i.e., if RB\_DUMP is set in *howto*, but RB\_HALT is not), saves a system crash dump.

4. Runs any shutdown hooks previously registered.

5. Prints a message indicating that the system is about to be halted or rebooted.

6. If RB\_HALT is set in *howto*, halts the system. Otherwise, reboots the system.

If the system has not finished autoconfiguration, **boot**() runs any shutdown hooks previously registered, prints a message, and halts the system.

## SEE ALSO

[vfs\_unmountall(9)](/vfs_unmountall/9.md)
