---
name: "nextboot"
section: "8"
platform: "freebsd"
package: "base"
version: "16.0-CURRENT-20261027-61c70dc16a79"
release: "FreeBSD 16.0-CURRENT (2026-10-27)"
platforms: ["freebsd"]
url: "https://new.carta.tech/nextboot"
---

# nextboot(8)

specify an alternate kernel and boot flags for the next reboot

## NAME

**nextboot** – specify an alternate kernel and boot flags for the next reboot

## SYNOPSIS

**nextboot** \[**-aDf**\] \[**-e** *variable=value*\] \[**-k** *kernel*\] \[**-o** *options*\]

**nextboot** **-D**

## DESCRIPTION

The **nextboot** utility allows specifying some combination of an alternate kernel, boot flags, and kernel environment for the next time the machine is booted. Once the [loader(8)](/loader/8.md) loads in the new kernel information from the */boot/nextboot.conf* file, it is disabled so in case the new kernel hangs the machine, once it is rebooted, the machine will automatically revert to its previous configuration.

The options are as follows:

- **-a**

  This option causes **nextboot** to append to an existing configuration in */boot/nextboot.conf*. By default any existing configuration is overwritten.

- **-D**

  Invoking **nextboot** with this option removes an existing **nextboot** configuration.

- **-e** *variable=value*

  This option adds the provided variable and value to the kernel environment. The value is quoted when written to the **nextboot** configuration.

- **-f**

  This option disables the sanity checking which checks if the kernel really exists before writing the **nextboot** configuration.

- **-k** *kernel*

  This option specifies a kernel directory relative to */boot* to load the kernel and any modules from.

- **-o** *options*

  This option allows the passing of kernel flags for the next boot.

## FILES

- */boot/nextboot.conf*

  The configuration file that the **nextboot** configuration is written into.

## EXAMPLES

To boot the *GENERIC* kernel with the **nextboot** command:

```
nextboot -k GENERIC
```

To enable into single user mode with the normal kernel:

```
nextboot -o "-s" -k kernel
```

To remove an existing nextboot configuration:

```
nextboot -D
```

## SEE ALSO

[boot(8)](/boot/8.md), [freebsd-update(8)](/freebsd-update/8.md), [loader(8)](/loader/8.md)

## HISTORY

The original **nextboot** manual page first appeared in FreeBSD 2.2. It used a very different interface to achieve similar results.

The current incarnation of **nextboot** appeared in FreeBSD 5.0.

## AUTHORS

This manual page was written by Gordon Tetlow ⟨*gordon@FreeBSD.org*⟩.

## BUGS

The **nextboot** code is implemented in the [loader(8)](/loader/8.md). It is not the most thoroughly tested code. It is also my first attempt to write in Forth.

Finally, it does some evil things like writing to the file system before it has been checked. If it scrambles your file system, do not blame me.
