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