1.\"- 2.\" Copyright 2006 Colin Percival 3.\" All rights reserved 4.\" 5.\" Redistribution and use in source and binary forms, with or without 6.\" modification, are permitted providing that the following conditions 7.\" are met: 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. 13.\" 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. 25.\" 26.\" $FreeBSD$ 27.\" 28.Dd August 19, 2009 29.Dt FREEBSD-UPDATE.CONF 5 30.Os FreeBSD 31.Sh NAME 32.Nm freebsd-update.conf 33.Nd configuration file for 34.Xr freebsd-update 8 35.Sh DESCRIPTION 36The 37.Nm 38file controls the behaviour of the 39.Xr freebsd-update 8 40utility. 41The file contains lines consisting of a case-sensitive option name and 42zero or more parameters. 43Empty lines and any part of a line following a 44.Ql # 45character are ignored. 46Unless stated otherwise, specifying an option multiple times is an 47error. 48.Pp 49The possible options and their meanings are as follows: 50.Bl -tag -width ".Cm BackupKernelSymbolFiles" 51.It Cm KeyPrint 52The single parameter following this keyword is the SHA256 hash 53of the RSA key which will be trusted to sign updates. 54.It Cm ServerName 55The single parameter following this keyword is the name of the 56server or server pool from which updates will be downloaded. 57.It Cm Components 58The parameters following this keyword are the components or 59sub-components of 60.Fx 61which will be updated. 62The components are 63.Dq src 64(source code), 65.Dq world 66(non-kernel binaries), and 67.Dq kernel ; 68the sub-components are the individual distribution sets generated as 69part of the release process (e.g., 70.Dq src/base , 71.Dq src/sys , 72.Dq world/base , 73.Dq world/catpages , 74.Dq kernel/smp ) . 75Note that prior to 76.Fx 6.1 , 77the 78.Dq kernel 79component was distributed as part of 80.Dq world/base . 81.Pp 82This option can be specified multiple times, and the parameters 83accumulate. 84.It Cm IgnorePaths 85The parameters following this keyword are regular expressions; 86updates to paths which start with a string matching one of 87these regular expressions will be ignored. 88.Pp 89This option can be specified multiple times, and the parameters 90accumulate. 91.It Cm IDSIgnorePaths 92The parameters following this keyword are regular expressions; 93paths which start with a string matching one of these regular 94expressions will be ignored by "freebsd-update IDS". 95.Pp 96This option can be specified multiple times, and the parameters 97accumulate. 98.It Cm UpdateIfUnmodified 99The parameters following this keyword are regular expressions; 100updates to paths which start with a string matching one of 101these regular expressions will be ignored if the files have 102been modified locally (unless they are merged -- see MergeChanges 103below). 104.Pp 105This option can be specified multiple times, and the parameters 106accumulate. 107.It Cm MergeChanges 108The parameters following this keyword are regular expressions; 109updates to paths which start with a string matching one of 110these regular expressions will be merged with local modifications. 111.Pp 112This option can be specified multiple times, and the parameters 113accumulate. 114.It Cm WorkDir 115The single parameter following this keyword is the directory 116in which temporary files and downloaded updates will be stored. 117.It Cm MailTo 118The single parameter following this keyword is the address 119to which 120.Cm cron 121output will be mailed. 122.It Cm AllowAdd 123The single parameter following this keyword must be 124.Dq yes 125or 126.Dq no 127and specifies whether 128.Cm freebsd-update 129is allowed to create new files, directories, and symlinks if 130these are part of updates downloaded. 131Note that 132.Cm freebsd-update 133will not re-add files which have been deleted from a 134.Fx 135installation unless those files were previously added as part 136of an update. 137.It Cm AllowDelete 138The single parameter following this keyword must be 139.Dq yes 140or 141.Dq no 142and specifies whether 143.Cm freebsd-update 144is allowed to delete files, directories, and symlinks as 145part of updates downloaded. 146.It Cm KeepModifiedMetadata 147The single parameter following this keyword must be 148.Dq yes 149or 150.Dq no 151and specifies whether 152.Cm freebsd-update 153should keep existing file ownership, permissions, and flags 154when installing updates if these have been modified locally. 155.It Cm StrictComponents 156The single parameter following this keyword must be 157.Dq yes 158or 159.Dq no 160and specifies whether 161.Cm freebsd-update 162should interpret the list of components of 163.Fx 164specified via the 165.Cm Components 166option strictly as a list of components installed which 167should be upgraded when the 168.Cm upgrade 169command is used ("yes"), or merely as a list of components 170which might be installed, of which 171.Cm freebsd-update 172should identify which in fact are present ("no"). 173.It Cm BackupKernel 174The single parameter following this keyword must be 175.Dq yes 176or 177.Dq no 178and specifies whether 179.Cm freebsd-update 180will create a backup of the old kernel before installing a new kernel. 181This backup kernel can be used to recover a system where the newly 182installed kernel somehow did not work. 183Note that the backup kernel is not reverted to its original state by 184the 185.Cm freebsd-update 186rollback command. 187.It Cm BackupKernelDir 188This keyword sets the directory which is used to store a backup 189kernel, if the BackupKernel feature is enabled. 190If the directory already exist, and it was not created by 191.Cm freebsd-update , 192the directory is skipped. 193In the case of the primary directory name not being usable, a number 194starting with 195.Sq 1 196is appended to the directory name. 197Like with the primary directory name, the constructed directory name is 198only used if the path name does not exist, or if the directory was 199previously created by 200.Cm freebsd-update . 201If the constructed directory still exist the appended number is 202incremented with 1 and the directory search process restarted. 203Should the number increment go above 9, 204.Cm freebsd-update 205will abort. 206.It Cm BackupKernelSymbolFiles 207The single parameter following this keyword must be 208.Dq yes 209or 210.Dq no 211and specifies whether 212.Cm freebsd-update 213will also backup kernel symbol files, if they exist. 214The kernel symbol files takes up a lot of disk space and are not 215needed for recovery purposes. 216If the symbol files are needed, after recovering a system using the 217backup kernel, the 218.Cm freebsd-update 219rollback command will recreate the symbol files along with the old 220kernel. 221.El 222.Sh FILES 223.Bl -tag -width "/etc/freebsd-update.conf" 224.It Pa /etc/freebsd-update.conf 225Default location of the 226.Cm freebsd-update 227configuration file. 228.El 229.Sh SEE ALSO 230.Xr sha256 1 , 231.Xr freebsd-update 8 232.Sh AUTHORS 233.An Colin Percival Aq Mt cperciva@FreeBSD.org 234