yum(5) -- Linux man page
NAME
yum.conf - Configuration file for yum(8).
DESCRIPTION
Yum uses a configuration file at /etc/yum.conf.
Additional configuration files are also read from the directories set by the
reposdir option (default is `/etc/yum.repos.d' and `/etc/yum/repos.d').
See the reposdir option below for further details.
PARAMETERS
There are two types of sections in the yum configuration file(s): main and
repository. Main defines all global configuration options. There should be only
one main section. The repository section(s) define the configuration for each
repository/server. There should be one or more repository sections.
[main] OPTIONS
The [main] section must exist for yum to do anything. It consists of the
following options:
- cachedir
-
Directory where yum should store its cache and db files. The default is
`/var/cache/yum'.
- reposdir
-
A list of directories where yum should look for .repo files which define
repositories to use. Default is `/etc/yum.repos.d, /etc/yum/repos.d'. Each
file in this directory should contain one or more repository sections as
documented in [repository] options below. These will be merged with the
repositories defined in /etc/yum.conf to form the complete set of repositories
that yum will use.
- debuglevel
-
Debug message output level. Practical range is 0-10. Default is `2'.
- errorlevel
-
Error message output level. Practical range is 0-10. Default is `2'.
- logfile
-
Full directory and file name for where yum should write its log file.
- gpgcheck
-
Either `1' or `0'. This tells yum whether or not it should perform a GPG
signature check on packages. When this is set in the [main] section it sets the
default for all repositories. This option also determines whether or not an
install of a package from a local RPM file will be GPG signature checked. The
default is `0'.
- assumeyes
-
Either `1' or `0'. Determines whether or not yum prompts for confirmation of
critical actions. Default is `0' (do prompt).
Commmand-line option: -y
- alwaysprompt
-
Either `1' or `0'. Without this option, yum will not prompt for confirmation
when the list of packages to be installed exactly matches those given on the
command line. Unless assumeyes is enabled, it will still prompt for
package removal, or when additional packages need to be installed to fulfill
dependencies. Default is `1'.
- tolerant
-
Either `1' or `0'. If enabled, then yum will be tolerant of errors on the
command line with regard to packages. For example: if you request to install
foo, bar and baz and baz is installed; yum won't error out complaining that baz
is already installed. Default to `0' (not tolerant).
Commmand-line option: -t
- exclude
-
List of packages to exclude from updates or installs. This should be a space
separated list.
Shell globs using wildcards (eg. * and ?) are allowed.
- exactarch
-
Either `1' or `0'. Set to `1' to make yum update only update the architectures
of packages that you have installed. ie: with this enabled yum will not install
an i686 package to update an i386 package. Default is `1'.
- installonlypkgs
-
List of packages that should only ever be installed, never updated. Kernels
in particular fall into this category. Defaults to `kernel, kernel-smp,
kernel-bigmem, kernel-enterprise, kernel-debug, kernel-unsupported'.
- kernelpkgnames
-
List of package names that are kernels. This is really only here for the
updating of kernel packages and should be removed out in the yum 2.1 series.
- showdupesfromrepos
-
Either `0' or `1'. Set to `1' if you wish to show any duplicate packages from
any repository. Set to `0' if you want only to see the newest packages from any
repository. Default is `0'.
- obsoletes
-
This option only has affect during an update
. It enables yum's
obsoletes processing logic. Useful when doing distribution level upgrades. See
also the yum upgrade command documentation for more details (yum(8)).
Commmand-line option: --obsoletes
- overwrite_groups
-
Either `0' or `1'. Used to determine yum's behaviour if two or more
repositories offer the package groups with the same name. If
overwrite_groups
is `1' then the group packages of the last matching
repository will be used. If overwrite_groups is `0' then the groups
from all matching repositories will be merged together as one large group.
- installroot
-
Specifies an alternative installroot, relative to which all packages will be
installed.
Commmand-line option: --installroot
- distroverpkg
-
The package used by yum to determine the "version" of the distribution. This
can be any installed package. Default is `redhat-release'.
- diskspacecheck
-
Either `0' or `1'. Set this to `0' to disable the checking for sufficient
diskspace before a RPM transaction is run. Default is `1' (perform the check).
- tsflags
-
Comma or space separated list of transaction flags to pass to the rpm
transaction set. These include 'noscripts', 'notriggers', 'nodocs', 'test', and 'repackage'.
You can set all/any of them. However, if you don't know what these do in the
context of an rpm transaction set you're best leaving it alone. Default is
an empty list.
- recent
-
Number of days back to look for `recent' packages added to a repository.
Used by the list recent command. Default is `7'.
- retries
-
Set the number of times any attempt to retrieve a file should retry before
returning an error. Setting this to `0' makes yum try forever. Default is `6'.
- keepalive
-
Either `0' or `1'. Set whether HTTP keepalive should be used for HTTP/1.1
servers that support it. This can improve transfer speeds by using one
connection when downloading multiple files from a repository. Default is `1'.
- timeout
-
Number of seconds to wait for a connection before timing out. Defaults to
30 seconds. This may be too short of a time for extremely overloaded
sites.
- http_caching
-
Determines how upstream HTTP caches are instructed to handle any HTTP downloads
that Yum does. This option can take the following values:
`all' means that all HTTP downloads should be cached.
`packages' means that only RPM package downloads should be cached (but not
repository metadata downloads).
`none' means that no HTTP downloads should be cached.
The default is `all'. This is recommended unless you are experiencing caching
related issues. Try to at least use `packages' to minimise load on repository
servers.
- throttle
-
Enable bandwidth throttling for downloads. This option can be expressed as a
absolute data rate in bytes/sec. An SI prefix (k, M or G) may be appended to the
bandwidth value (eg. `5.5k' is 5.5 kilobytes/sec, `2M' is 2 Megabytes/sec).
Alternatively, this option can specify the percentage of total bandwidth to use
(eg. `60%'). In this case the bandwidth option should be used to specify
the maximum available bandwidth.
Set to `0' to disable bandwidth throttling. This is the default.
- bandwidth
-
Use to specify the maximum available network bandwidth in bytes/second. Used
with the throttle
option (above). If throttle is a percentage and
bandwidth is `0' then bandwidth throttling will be disabled. If
throttle is expressed as a data rate (bytes/sec) then this option is
ignored. Default is `0' (no bandwidth throttling).
- commands
-
List of functional commands to run if no functional commands are specified
on the command line (eg. "update foo bar baz quux"). None of the short options
(eg. -y, -e, -d) are accepted for this option.
- proxy
-
url to the proxy server that yum should use.
- proxy_username
-
username to use for proxy
- proxy_password
-
password for this proxy
- plugins
-
Either `0' or `1'. Global switch to enable or disable yum plugins. Default is
`0' (plugins disabled). See the PLUGINS
section of the yum(8) man
for more information on installing yum plugins.
- pluginpath
-
A list of directories where yum should look for plugin modules. Default is
`/usr/lib/yum-plugins'.
- metadata_expire
-
Time (in seconds) after which the metadata will expire. So that if the
current metadata downloaded is less than this many seconds old then yum will
not update the metadata against the repository. If you find that
yum is not downloading information on updates as often as you would like
lower the value of this option.
[repository] OPTIONS
The repository section(s) take the following form:
- Example:
-
[repositoryid]
name=Some name for this repository
baseurl=url://path/to/repository/
- repositoryid
-
Must be a unique name for each repository, one word.
- name
-
A human readable string describing the repository.
- baseurl
-
Must be a URL to the directory where the yum repository's `repodata' directory
lives. Can be an http://, ftp:// or file:// URL. You can specify multiple URLs
in one baseurl statement. The best way to do this is like this:
[repositoryid]
name=Some name for this repository
baseurl=url://server1/path/to/repository/
url://server2/path/to/repository/
url://server3/path/to/repository/
If you list more than one baseurl= statement in a repository you will find
yum will ignore the earlier ones and probably act bizarrely. Don't do this,
you've been warned.
- mirrorlist
-
Specifies a URL to a file containing a list of baseurls. This can be used
instead of or with the baseurl option. Substitution variables, described
below, can be used with this option.
- enabled
-
Either `1' or `0'. This tells yum whether or not use this repository.
- gpgcheck
-
Either `1' or `0'. This tells yum whether or not it should perform a GPG
signature check on the packages gotten from this repository.
- gpgkey
-
A URL pointing to the ASCII-armoured GPG key file for the repository. This
option is used if yum needs a public key to verify a package and the required
key hasn't been imported into the RPM database. If this option is set, yum will
automatically import the key from the specified URL. You will be prompted before
the key is installed unless the assumeyes option is set.
Multiple URLs may be specified here in the same manner as the baseurl
option (above). If a GPG key is required to install a package from a
repository, all keys specified for that repository will be installed.
- exclude
-
Same as the [main] exclude option but only for this repository.
Substitution variables, described below, are honored here.
- includepkgs
-
Inverse of exclude. This is a list of packages you want to use from a
repository. If this option lists only one package then that is all yum will
ever see from the repository. Defaults to an empty list. Substitution
variables, described below, are honored here.
- enablegroups
-
Either `0' or `1'. Determines whether yum will allow the use of package groups
for this repository. Default is `1' (package groups are allowed).
- failovermethod
-
Either `roundrobin' or `priority'.
`roundrobin' randomly selects a URL out of
the list of URLs to start with and proceeds through each of them as it
encounters a failure contacting the host.
`priority' starts from the first baseurl listed and reads through them
sequentially.
failovermethod defaults to `roundrobin' if not specified.
- keepalive
-
Either `1' or `0'. This tells yum whether or not HTTP/1.1 keepalive should be
used with this repository. See the global option in the [main] section above
for more information.
- timeout
-
Overrides the timeout option from the [main] section for this repository.
- http_caching
-
Overrides the http_caching option from the [main] section for this repository.
- retries
-
Overrides the retries option from the [main] section for this repository.
- throttle
-
Overrides the throttle option from the [main] section for this
repository.
- bandwidth
-
Overrides the bandwidth option from the [main] section for this
repository.
- metadata_expire
-
Overrides the metadata_expire
option from the [main] section for this
repository.
- proxy
-
url to the proxy server for this repository. Set to '_none_' to disable the
global proxy setting for this repository. If this is unset it
inherits it from the global setting
- proxy_username
-
username to use for proxy.
If this is unset it inherits it from the global setting
- proxy_password
-
password for this proxy.
If this is unset it inherits it from the global setting
URL INCLUDE SYNTAX
The inclusion of external configuration files is supported for /etc/yum.conf
and the .repo files in the /etc/yum.repos.d directory. To include a URL, use a
line of the following format:
include=url://to/some/location
The configuration file will be inserted at the position of the "include=" line.
Included files may contain further include lines. Yum will abort with an error
if an inclusion loop is detected.
VARIABLES
There are a number of variables you can use to ease maintenance of yum's
configuration files. They are available in the values of several options
including name, baseurl and commands.
- $releasever
-
This will be replaced with the value of the version of the package listed
in distroverpkg. This defaults to the version of `redhat-release'
package.
- $arch
-
This will be replaced with your architecture as listed by os.uname()[4] in
Python.
- $basearch
-
This will be replaced with your base architecture as listed in archwork.py in
yum. For example, if your $arch is i686 your $basearch will be i386.
- $YUM0-$YUM9
-
These will be replaced with the value of the shell environment variable of
the same name. If the shell environment variable does not exist then the
configuration file variable will not be replaced.
FILES
/etc/yum.conf
/etc/yum.repos.d/
/etc/yum/pluginconf.d/
SEE ALSO
yum(8)
|