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
42 .Op Fl r Ar newrelease
45 .Op Fl -not-running-from-cron
50 tool is used to fetch, install, and rollback binary
54 Note that updates are only available if they are being built for the
56 release and architecture being used; in particular, the
58 Security Team only builds updates for releases shipped in binary form
61 Release Engineering Team, e.g.,
71 The following options are supported:
72 .Bl -tag -width "-r newrelease"
74 Operate on a system mounted at
78 or as given in the configuration file.)
80 Store working files in
83 .Pa /var/db/freebsd-update/ ,
84 or as given in the configuration file.)
86 Read configuration options from
89 .Pa /etc/freebsd-update.conf )
93 to proceed in the case of an unfinished upgrade.
95 Operate on the given jail specified by
99 (The version of the installed userland is detected and the
100 .Fl -currently-running
101 option is no more required.)
103 Trust an RSA key with SHA256 of
105 (default: read value from configuration file.)
106 .It Fl r Ar newrelease
107 Specify the new release (e.g., 11.2-RELEASE) to which
109 should upgrade (upgrade command only).
111 Fetch files from the specified server or server pool.
112 (default: read value from configuration file.)
118 (default: root, or as given in the configuration file.)
119 .It Fl -not-running-from-cron
122 to proceed when there is no controlling tty.
123 This is for use by automated scripts and orchestration tools.
126 from crontab or similar using this flag, see:
128 .It Fl -currently-running Ar release
129 Do not detect the currently-running release; instead, assume that the
130 system is running the specified
132 This is most likely to be useful when upgrading jails.
137 can be any one of the following:
138 .Bl -tag -width "rollback"
140 Based on the currently installed world and the configuration
141 options set, fetch all available binary updates.
143 Sleep a random amount of time between 1 and 3600 seconds,
144 then download updates as if the
147 If updates are downloaded, an email will be sent
148 (to root or a different address if specified via the
150 option or in the configuration file).
151 As the name suggests, this command is designed for running
154 the random delay serves to minimize the probability that
155 a large number of machines will simultaneously attempt to
158 Fetch files necessary for upgrading to a new release.
159 Before using this command, make sure that you read the
160 announcement and release notes for the new release in
161 case there are any special steps needed for upgrading.
162 Note that this command may require up to 500 MB of space in
164 depending on which components of the
166 base system are installed.
168 Check if there are fetched updates ready to install.
169 Returns exit code 2 if there are no updates to install.
171 Install the most recently fetched updates or upgrade.
172 Returns exit code 2 if there are no updates to install
175 command wasn't passed as an earlier argument in the same
178 Uninstall the most recently installed updates.
180 Compare the system against a "known good" index of the
183 Show configuration options after parsing conffile and command
189 If your clock is set to local time, adding the line
191 .Dl 0 3 * * * root /usr/sbin/freebsd-update cron
193 to /etc/crontab will check for updates every night.
194 If your clock is set to UTC, please pick a random time
195 other than 3AM, to avoid overly imposing an uneven load
196 on the server(s) hosting the updates.
198 In spite of its name,
200 IDS should not be relied upon as an "Intrusion Detection
201 System", since if the system has been tampered with
202 it cannot be trusted to operate correctly.
203 If you intend to use this command for intrusion-detection
204 purposes, make sure you boot from a secure disk (e.g., a CD).
207 .Bl -tag -width "PAGER"
209 The pager program used to present various reports during the execution.
212 .Dq Pa /usr/bin/less .
218 when a non-interactive pager is desired.
221 .Bl -tag -width "/etc/freebsd-update.conf"
222 .It Pa /etc/freebsd-update.conf
223 Default location of the
226 .It Pa /var/db/freebsd-update/
227 Default location where
229 stores temporary files and downloaded updates.
232 .Xr freebsd-update.conf 5
234 .An Colin Percival Aq Mt cperciva@FreeBSD.org