2 .\" Copyright 2006, 2007 Colin Percival
3 .\" All rights reserved
5 .\" Redistribution and use in source and binary forms, with or without
6 .\" modification, are permitted providing that the following conditions
8 .\" 1. Redistributions of source code must retain the above copyright
9 .\" notice, this list of conditions and the following disclaimer.
10 .\" 2. Redistributions in binary form must reproduce the above copyright
11 .\" notice, this list of conditions and the following disclaimer in the
12 .\" documentation and/or other materials provided with the distribution.
14 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
15 .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
16 .\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
18 .\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
22 .\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
23 .\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
24 .\" POSSIBILITY OF SUCH DAMAGE.
33 .Nd fetch and install binary updates to FreeBSD
41 .Op Fl r Ar newrelease
44 .Op Fl -not-running-from-cron
49 tool is used to fetch, install, and rollback binary
50 updates to the FreeBSD base system.
51 Note that updates are only available if they are being built for the
52 FreeBSD release and architecture being used; in particular, the
54 Security Team only builds updates for releases shipped in binary form
57 Release Engineering Team, e.g.,
67 The following options are supported:
68 .Bl -tag -width "-r newrelease"
70 Operate on a system mounted at
74 or as given in the configuration file.)
76 Store working files in
79 .Pa /var/db/freebsd-update/ ,
80 or as given in the configuration file.)
82 Read configuration options from
85 .Pa /etc/freebsd-update.conf )
89 to proceed where it normally would not, such as an unfinished upgrade
91 Trust an RSA key with SHA256 of
93 (default: read value from configuration file.)
94 .It Fl r Ar newrelease
95 Specify the new release to which
97 should upgrade (upgrade command only).
99 Fetch files from the specified server or server pool.
100 (default: read value from configuration file.)
106 (default: root, or as given in the configuration file.)
107 .It Fl -not-running-from-cron
110 to proceed when there is no controlling tty.
111 This is for use by automated scripts and orchestration tools.
114 from crontab or similar using this flag, see:
116 .It Fl -currently-running Ar release
117 Don't detect the currently-running release; instead, assume that the
118 system is running the specified
120 This is most likely to be useful when upgrading jails.
125 can be any one of the following:
126 .Bl -tag -width "rollback"
128 Based on the currently installed world and the configuration
129 options set, fetch all available binary updates.
131 Sleep a random amount of time between 1 and 3600 seconds,
132 then download updates as if the
135 If updates are downloaded, an email will be sent
136 (to root or a different address if specified via the
138 option or in the configuration file).
139 As the name suggests, this command is designed for running
142 the random delay serves to minimize the probability that
143 a large number of machines will simultaneously attempt to
146 Fetch files necessary for upgrading to a new release.
147 Before using this command, make sure that you read the
148 announcement and release notes for the new release in
149 case there are any special steps needed for upgrading.
150 Note that this command may require up to 500 MB of space in
152 depending on which components of the
154 base system are installed.
156 Install the most recently fetched updates or upgrade.
158 Uninstall the most recently installed updates.
160 Compare the system against a "known good" index of the
166 If your clock is set to local time, adding the line
168 .Dl 0 3 * * * root /usr/sbin/freebsd-update cron
170 to /etc/crontab will check for updates every night.
171 If your clock is set to UTC, please pick a random time
172 other than 3AM, to avoid overly imposing an uneven load
173 on the server(s) hosting the updates.
175 In spite of its name,
177 IDS should not be relied upon as an "Intrusion Detection
178 System", since if the system has been tampered with
179 it cannot be trusted to operate correctly.
180 If you intend to use this command for intrusion-detection
181 purposes, make sure you boot from a secure disk (e.g., a CD).
184 .Bl -tag -width "/etc/freebsd-update.conf"
185 .It Pa /etc/freebsd-update.conf
186 Default location of the
189 .It Pa /var/db/freebsd-update/
190 Default location where
192 stores temporary files and downloaded updates.
195 .Xr freebsd-update.conf 5
197 .An Colin Percival Aq Mt cperciva@FreeBSD.org