Manual Page Search Parameters

MIDNIGHTBSD-UPDATE(8) MidnightBSD System Manager's Manual MIDNIGHTBSD-UPDATE(8)

midnightbsd-updatefetch and install binary updates to MidnightBSD

midnightbsd-update [-b basedir] [-d workdir] [-f conffile] [-F] [-j jail] [-k KEY] [-r newrelease] [-s server] [-t address] [--not-running-from-cron] command ...

The midnightbsd-update tool is used to fetch, install, and rollback binary updates to the base system. Note that updates are only available if they are being built for the release and architecture being used; in particular, the Security Team only builds updates for releases shipped in binary form by the Release Engineering Team, e.g., 1.2-RELEASE but not FreeBSD 2.0-CURRENT.

The following options are supported:

basedir
Operate on a system mounted at basedir. (default: /, or as given in the configuration file.)
workdir
Store working files in workdir. (default: /var/db/midnightbsd-update/, or as given in the configuration file.)
conffile
Read configuration options from conffile. (default: /etc/midnightbsd-update.conf)
Force midnightbsd-update fetch to proceed in the case of an unfinished upgrade.
jail
Operate on the given jail specified by jid or name. (The version of the installed userland is detected and the --currently-running option is no more required.)
KEY
Trust an RSA key with SHA256 of KEY. (default: read value from configuration file.)
newrelease
Specify the new release (e.g., 1.2-RELEASE) to which midnightbsd-update should upgrade (upgrade command only).
server
Fetch files from the specified server or server pool. (default: read value from configuration file.)
address
Mail output of cron command, if any, to address. (default: root, or as given in the configuration file.)
Force midnightbsd-update fetch to proceed when there is no controlling tty(4). This is for use by automated scripts and orchestration tools. Please do not run midnightbsd-update fetch from crontab(5) or similar using this flag, see: midnightbsd-update cron
release
Do not detect the currently-running release; instead, assume that the system is running the specified release. This is most likely to be useful when upgrading jails.

The command can be any one of the following:

Based on the currently installed world and the configuration options set, fetch all available binary updates.
Sleep a random amount of time between 1 and 3600 seconds, then download updates as if the fetch command was used. If updates are downloaded, an email will be sent (to root or a different address if specified via the -t option or in the configuration file). As the name suggests, this command is designed for running from cron(8); the random delay serves to minimize the probability that a large number of machines will simultaneously attempt to fetch updates.
Fetch files necessary for upgrading to a new release. Before using this command, make sure that you read the announcement and release notes for the new release in case there are any special steps needed for upgrading. Note that this command may require up to 500 MB of space in workdir depending on which components of the base system are installed.
Check if there are fetched updates ready to install. Returns exit code 2 if there are no updates to install.
Install the most recently fetched updates or upgrade. Returns exit code 2 if there are no updates to install and the fetch command wasn't passed as an earlier argument in the same invocation.
Uninstall the most recently installed updates.
Compare the system against a "known good" index of the installed release.
Show configuration options after parsing conffile and command line options.

The pager program used to present various reports during the execution. (Default: “/usr/bin/less”.)

PAGER can be set to “cat” when a non-interactive pager is desired.

/etc/midnightbsd-update.conf
Default location of the midnightbsd-update configuration file.
/var/db/midnightbsd-update/
Default location where midnightbsd-update stores temporary files and downloaded updates.

midnightbsd-version(1), uname(1), midnightbsd-update.conf(5), nextboot(8)

Colin Percival <cperciva@FreeBSD.org>

September 10, 2022 midnightbsd-3.1