Provided by: yum_3.4.3-3ubuntu1_all bug


       yum - Yellowdog Updater Modified


       yum [options] [command] [package ...]


       yum  is  an  interactive,  rpm based, package manager. It can automatically perform system
       updates, including dependency analysis  and  obsolete  processing  based  on  "repository"
       metadata.  It  can  also perform installation of new packages, removal of old packages and
       perform  queries  on  the  installed  and/or   available   packages   among   many   other
       commands/services  (see  below).  yum is similar to other high level package managers like
       apt-get and smart.

       While there are some graphical interfaces directly to the yum code, more recent  graphical
       interface development is happening with PackageKit and the gnome-packagekit application.

       command is one of:
        * install package1 [package2] [...]
        * update [package1] [package2] [...]
        * update-to [package1] [package2] [...]
        * check-update
        * upgrade [package1] [package2] [...]
        * upgrade-to [package1] [package2] [...]
        * distribution-synchronization [package1] [package2] [...]
        * remove | erase package1 [package2] [...]
        * list [...]
        * info [...]
        * provides | whatprovides feature1 [feature2] [...]
        * clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]
        * makecache
        * groups [...]
        * search string1 [string2] [...]
        * shell [filename]
        * resolvedep dep1 [dep2] [...]
        * localinstall rpmfile1 [rpmfile2] [...]
           (maintained for legacy reasons only - use install)
        * localupdate rpmfile1 [rpmfile2] [...]
           (maintained for legacy reasons only - use update)
        * reinstall package1 [package2] [...]
        * downgrade package1 [package2] [...]
        * deplist package1 [package2] [...]
        * repolist [all|enabled|disabled]
        * version [ all | installed | available | group-* | nogroups* | grouplist | groupinfo ]
        * history [info|list|packages-list|summary|addon-info|redo|undo|rollback|new]
        * check
        * help [command]

       Unless the --help or -h option is given, one of the above commands must be present.

       Repository configuration is honored in all operations.

              Is  used  to  install  the  latest  version of a package or group of packages while
              ensuring that all dependencies are satisfied.  (See Specifying  package  names  for
              more information) If no package matches the given package name(s), they are assumed
              to be a shell glob and any matches are then installed. If the name starts with an @
              character  the  rest  of  the  name  is  used  as though passed to the groupinstall
              command. If the name starts with a - character, then a search is  done  within  the
              transaction  and any matches are removed. If the name is a file, then install works
              like localinstall. If the name doesn't match a package, then package "provides" are
              searched  (Eg.  "")  as are filelists (Eg. "/usr/bin/yum").
              Also note that for filelists, wildcards will match multiple packages.

       update If run without any packages, update will update every currently installed  package.
              If  one  or  more packages or package globs are specified, Yum will only update the
              listed packages.  While updating packages, yum will ensure  that  all  dependencies
              are  satisfied. (See Specifying package names for more information) If the packages
              or globs specified match to packages which are not currently installed then  update
              will  not  install  them.  update operates on groups, files, provides and filelists
              just like the "install" command.

              If the main obsoletes configure option is true (default) or the --obsoletes flag is
              present  yum  will  include  package  obsoletes in its calculations - this makes it
              better for distro-version changes, for example: upgrading  from  somelinux  8.0  to
              somelinux 9.

              Note  that  "update"  works  on  installed packages first, and only if there are no
              matches does it look for available packages. The difference is most noticable  when
              you  do  "update  foo-1-2"  which  will  act  exactly as "update foo" if foo-1-2 is
              installed. You can use the "update-to" if you'd prefer that nothing happen  in  the
              above case.

              This command works like "update" but always specifies the version of the package we
              want to update to.

              Implemented so you could know if your machine had any updates  that  needed  to  be
              applied  without  running  it interactively. Returns exit value of 100 if there are
              packages available for an update. Also returns a list of the packages to be updated
              in  list format. Returns 0 if no packages are available for update. Returns 1 if an
              error occurred.  Running in verbose mode also shows obsoletes.

              Is the same as the update command with the --obsoletes flag  set.  See  update  for
              more details.

              This  command  works like "upgrade" but always specifies the version of the package
              we want to update to.

       distribution-synchronization or distro-sync
              Synchronizes the installed package set with the latest packages available, this  is
              done  by  either  obsoleting,  upgrading  or  downgrading as appropriate. This will
              "normally" do the same thing as the upgrade command however if you have the package
              FOO  installed  at version 4, and the latest available is only version 3, then this
              command will downgrade FOO to version 3.

              If you give the optional argument "full", then  the  command  will  also  reinstall
              packages  where  the  install checksum and the available checksum do not match. And
              remove old packages (can be used to sync. rpmdb versions).  The  optional  argument
              "different" can be used to specify the default operation.

              This  command  does  not  perform  operations on groups, local packages or negative

       remove or erase
              Are used to remove the specified packages from the system as well as  removing  any
              packages  which  depend  on  the  package being removed. remove operates on groups,
              files, provides and filelists  just  like  the  "install"  command.(See  Specifying
              package names for more information)

              Note  that  "yum"  is included in the protected_packages configuration, by default.
              So you can't accidentally remove yum itself.

       list   Is used to list various information about available packages; more complete details
              are available in the List Options section below.

       provides or whatprovides
              Is  used  to  find  out  which  package  provides  some feature or file. Just use a
              specific name or a file-glob-syntax wildcards to list  the  packages  available  or
              installed that provide that feature or file.

       search This  is used to find packages when you know something about the package but aren't
              sure of it's name. By default search will try  searching  just  package  names  and
              summaries, but if that "fails" it will then try descriptions and url.

              Yum  search  orders  the  results  so  that those packages matching more terms will
              appear first.

              You can force searching everything by specifying "all" as the first argument.

       info   Is used to list a description and summary  information  about  available  packages;
              takes the same arguments as in the List Options section below.

       clean  Is used to clean up various things which accumulate in the yum cache directory over
              time.  More complete details can be found in the Clean Options section below.

              Is used to download and make usable all the metadata for the currently enabled  yum

       groups A  command,  new  in  3.4.2,  that  collects all the subcommands that act on groups

              "group install" is used to install all of the individual packages in  a  group,  of
              the  specified  types (this works as if you'd taken each of those package names and
              put them on the command line for a "yum install" command).
               The  group_package_types  configuration  option  specifies  which  types  will  be

              "group  update"  is  just  an alias for groupinstall, which will do the right thing
              because "yum install X" and "yum update X" do the same thing,  when  X  is  already

              "group  list"  is  used to list the available groups from all yum repos. Groups are
              marked as "installed" if all mandatory  packages  are  installed,  or  if  a  group
              doesn't  have any mandatory packages then it is installed if any of the optional or
              default package are installed.  The  optional  "hidden"  argument  will  also  list
              groups  marked  as  not  being "user visible". If you pass the -v option, to enable
              verbose mode, then the groupids are displayed.

              "group remove"  is  used  to  remove  all  of  the  packages  in  a  group,  unlike
              "groupinstall" this will remove everything regardless of group_package_types. It is
              worth pointing out that packages can be in more than one group, so "group install X
              Y"  followed  by  "group  remove  Y" does not do give you the same result as "group
              install X".

              The groupremove_leaf_only configuration changes the behaviour of  this  command  to
              only remove packages which aren't required by something else.

              "group info" is used to give the description and package list of a group (and which
              type those packages are marked as). Note that you can use the  yum-filter-data  and
              yum-list-data plugins to get/use the data the other way around (Ie. what groups own
              packages need updating). If you pass the -v option, to enable  verbose  mode,  then
              the  package  names are matched against installed/available packages similar to the
              list command.

       shell  Is used to enter the 'yum shell', when a filename is specified the contents of that
              file is executed in yum shell mode. See yum-shell(8) for more info

              Is  used to list packages providing the specified dependencies, at most one package
              is listed per dependency.

              Is used to install a set of local rpm files. If required the  enabled  repositories
              will be used to resolve dependencies. Note that the install command will do a local
              install, if given a filename. This option is maintained for legacy reasons only.

              Is used to update the system by specifying local rpm files. Only the specified  rpm
              files  of  which  an  older  version  is  already  installed will be installed, the
              remaining specified packages will be ignored.  If required the enabled repositories
              will  be used to resolve dependencies. Note that the update command will do a local
              update, if given a filename. This option is maintained for legacy reasons only.

              Will reinstall the identically versioned package as is currently  installed.   This
              does  not  work  for  "installonly"  packages,  like Kernels. reinstall operates on
              groups, files, provides and filelists just like the "install" command.

              Will try and downgrade a package  from  the  version  currently  installed  to  the
              previously  highest  version  (or  the  specified version).  The depsolver will not
              necessarily work, but if you specify all the packages it should work (and thus. all
              the  simple  cases  will work). Also this does not work for "installonly" packages,
              like Kernels. downgrade operates on groups,  files,  provides,  filelists  and  rpm
              files just like the "install" command.

              Produces  a  list  of all dependencies and what packages provide those dependencies
              for the given packages. As of 3.2.30 it now just shows the latest version  of  each
              package  that  matches  (this can be changed by using --showduplicates) and it only
              shows the newest providers (which can be changed by using --verbose).

              Produces a list of configured repositories. The default  is  to  list  all  enabled
              repositories.  If you pass -v, for verbose mode, more information is listed. If the
              first argument is 'enabled', 'disabled' or 'all' then the command will  list  those
              types of repos.

              You can pass repo id or name arguments, or wildcards which to match against both of
              those. However if the id or name matches exactly then the repo will be listed  even
              if you are listing enabled repos. and it is disabled.

              In  non-verbose  mode  the  first  column  will  start  with a '*' if the repo. has
              metalink data and the latest metadata is not local. For non-verbose mode  the  last
              column  will also display the number of packages in the repo. and (if there are any
              user specified excludes) the number of packages excluded.

              One last special feature of repolist, is that if you are in non-verbose  mode  then
              yum  will  ignore  any  repo errors and output the information it can get (Eg. "yum
              clean all; yum -C repolist" will output something, although the package counts/etc.
              will be zeroed out).

              Produces  a  "version"  of  the  rpmdb, and of the enabled repositories if "all" is
              given as the first argument. You can also specify version groups  in  the  version-
              groups  config. file. If you pass -v, for verbose mode, more information is listed.
              The version is calculated by taking a sha1 hash of the packages (in sorted  order),
              and  the  checksum_type/checksum_data  entries from the yumdb. Note that this rpmdb
              version is now also used significantly within yum (esp. in yum history).

              The version command will now show "groups" of packages as a separate  version,  and
              so takes sub-commands:

              "version grouplist" - List the defined version groups.

              "version  groupinfo" - Get the complete list of packages within one or more version

              "version installed" - This is the default, only show the  version  information  for
              installed packages.

              "version available" - Only show the version information for available packages.

              "version all" - Show the version information for installed and available packages.

              "version nogroups | nogroups-*" - Just show the main version information.

              "version  group-*"  -  Just show the grouped version information, if more arguments
              are given then only show the data for those groups.

              The history command allows the user to view what has happened in past  transactions
              (assuming    the   history_record   config.   option   is   set).   You   can   use
              info/list/packages-list/summary to view what happened, undo/redo/rollback to act on
              that information and new to start a new history file.

              The  info/list/summary  commands  take  either  a transaction id or a package (with
              wildcards, as in Specifying package  names),  all  three  can  also  be  passed  no
              arguments. list can be passed the keyword "all" to list all the transactions.

              The  packages-list  command  takes  a  package   (with  wildcards, as in Specifying
              package names).

              The undo/redo/rollback commands take either a single transaction id or the  keyword
              last  and an offset from the last transaction (Eg. if you've done 250 transactions,
              "last" refers to transaction 250, and "last-4" refers to transaction 246).

              The undo/redo commands act on the specified transaction, undo'ing or repeating  the
              work  of  that  transaction.  While the rollback command will undo all transactions
              upto  the  point  of  the  specified  transaction.  For  example,  if  you  have  3
              transactions, where package A; B and C where installed respectively.  Then "undo 1"
              will try to remove pacakge A, "redo 1" will try to install package A (if it is  not
              still  installed),  and "rollback 1" will try to remove packages B and C. Note that
              after a "rollback 1" you will have a fourth transaction, although the ending  rpmdb
              version (see: yum version) should be the same in transactions 1 and 4.

              The  addon-info command takes a transaction ID, and the packages-list command takes
              a package (with wildcards).

              In "history list" you  can  change  the  behaviour  of  the  2nd  column  via.  the
              configuration option history_list_view.

              In  "history  list"  output the Altered column also gives some extra information if
              there was something not good with the transaction (this is also shown at the end of
              the package column in the packages-list command).

              > - The rpmdb was changed, outside yum, after the transaction.
              < - The rpmdb was changed, outside yum, before the transaction.
              * - The transaction aborted before completion.
              # - The transaction completed, but with a non-zero status.
              E  -  The  transaction  completed  fine,  but  had  warning/error output during the
              P - The transaction completed fine, but problems already existed in the rpmdb.
              s - The transaction completed fine, but --skip-broken was enabled and had  to  skip
              some packages.

       check  Checks  the  local rpmdb and produces information on any problems it finds. You can
              pass the check command the arguments "dependencies" or "duplicates", to  limit  the
              checking that is performed (the default is "all" which does both).

              The  info  command can also take ranges of transaction ids, of the form start..end,
              which will then display a merged history as if all the transactions  in  the  range
              had happened at once.
              Eg.  "history info 1..4" will merge the first four transactions and display them as
              a single transaction.

       help   Produces help, either for all commands or if given a command name then the help for
              that particular command.


       Most  command  line  options  can  be  set  using  the  configuration file as well and the
       descriptions indicate the necessary configuration option to set.

       -h, --help
              Help; display a help message and then quit.

       -y, --assumeyes
              Assume yes; assume that the answer to any question which would be asked is yes.
              Configuration Option: assumeyes

       -c, --config=[config file]
              Specifies the config file location - can take HTTP and  FTP  URLs  and  local  file

       -q, --quiet
              Run without output.  Note that you likely also want to use -y.

       -v, --verbose
              Run with a lot of debugging output.

       -d, --debuglevel=[number]
              Sets  the  debugging level to [number] - turns up or down the amount of things that
              are printed. Practical range: 0 - 10
              Configuration Option: debuglevel

       -e, --errorlevel=[number]
              Sets the error level to [number] Practical  range  0  -  10.  0  means  print  only
              critical  errors  about which you must be told. 1 means print all errors, even ones
              that are not overly important. 1+ means print more errors (if any) -e 0 is good for
              cron jobs.
              Configuration Option: errorlevel

              Sets  the  debug  level  to  [name] for rpm scriplets. 'info' is the default, other
              options are: 'critical', 'emergency', 'error', 'warn' and 'debug'.
              Configuration Option: rpmverbosity

       -R, --randomwait=[time in minutes]
              Sets the maximum amount of time yum will wait before  performing  a  command  -  it
              randomizes over the time.

       -C, --cacheonly
              Tells  yum  to  run  entirely  from  system cache - does not download or update any
              headers unless it has to to perform the requested action. If you're using this as a
              user yum will not use the tempcache for the user but will only use the system cache
              in the system cachedir.

              Reports the yum version number and installed package  versions  for  everything  in
              history_record_packages (can be added to by plugins).

              Doesn't  limit  packages  to  their  latest  versions  in the info, list and search
              commands (will also affect plugins which use the doPackageLists() API).

              Specifies an alternative installroot,  relative  to  which  all  packages  will  be
              installed.  Think of this like doing "chroot <root> yum" except using --installroot
              allows yum to work before the chroot is created.  Note: You may also  want  to  use
              the   option   --releasever=/  when  creating  the  installroot  as  otherwise  the
              $releasever value is taken from the rpmdb within the installroot (and thus. will be
              empty, before creation).
              Configuration Option: installroot

              Enables  specific  repositories  by  id  or  glob  that  have  been disabled in the
              configuration file using the enabled=0 option.
              Configuration Option: enabled

              Disables specific repositories by id or glob.
              Configuration Option: enabled

              This option only has affect for an update, it enables  yum´s  obsoletes  processing
              logic. For more information see the update command above.
              Configuration Option: obsoletes

       -x, --exclude=package
              Exclude  a  specific  package  by  name  or  glob from updates on all repositories.
              Configuration Option: exclude

              Display colorized output automatically, depending on the  output  terminal,  always
              (using  ANSI codes) or never. Note that some commands (Eg. list and info) will do a
              little extra work when color is enabled.  Configuration Option: color

              Disable the excludes defined in your config files. Takes one of three options:
              all == disable all excludes
              main == disable excludes defined in [main] in yum.conf
              repoid == disable excludes defined for that repo

              Run with one or more plugins disabled, the argument is a comma  separated  list  of
              wildcards to match against plugin names.

              Run with all plugins disabled.
              Configuration Option: plugins

              Run with GPG signature checking disabled.
              Configuration Option: gpgcheck

              Resolve  depsolve  problems by removing packages that are causing problems from the
              Configuration Option: skip_broken

              Pretend the current release version is the given string. This is very  useful  when
              combined with --installroot. You can also use --releasever=/ to take the releasever
              information from outside the installroot.  Note  that  with  the  default  upstream
              cachedir, of /var/cache/yum, using this option will corrupt your cache (and you can
              use $releasever in your cachedir configuration to stop this).

       -t, --tolerant
              This option currently does nothing.

              Set any config option in yum config or repo files. For options in the global config
              just use: --setopt=option=value for repo options use: --setopt=repoid.option=value


       The  following  are  the  ways  which you can invoke yum in list mode.  Note that all list
       commands include information on the version of the package.


              The format of the output of yum list is:

              name.arch [epoch:]version-release  repo or @installed-from-repo

       yum list [all | glob_exp1] [glob_exp2] [...]
              List all available and installed packages.

       yum list available [glob_exp1] [...]
              List all packages in the yum repositories available to be installed.

       yum list updates [glob_exp1] [...]
              List all packages with updates available in the yum repositories.

       yum list installed [glob_exp1] [...]
              List the packages specified by args.  If an argument does not match the name of  an
              available  package,  it  is  assumed  to  be a shell-style glob and any matches are

       yum list extras [glob_exp1] [...]
              List the packages installed on the  system  that  are  not  available  in  any  yum
              repository listed in the config file.

       yum list obsoletes [glob_exp1] [...]
              List the packages installed on the system that are obsoleted by packages in any yum
              repository listed in the config file.

       yum list recent
              List packages recently added into the repositories. This is often not helpful,  but
              what  you may really want to use is "yum list-updateinfo new" from the security yum


       A package can be referred to for install, update, remove, list, info etc with any  of  the
       following as well as globs of any of the following:


              For example: yum remove kernel-2.4.1-10.i686
                   this will remove this specific kernel-ver-rel.arch.

              Or:          yum list available 'foo*'
                   will  list  all  available packages that match 'foo*'. (The single quotes will
              keep your shell from expanding the globs.)


       The following are the ways which you can invoke yum in clean mode. Note that  "all  files"
       in the commands below means "all files in currently enabled repositories".  If you want to
       also clean any (temporarily)  disabled  repositories  you  need  to  use  --enablerepo='*'

       yum clean expire-cache
              Eliminate  the  local data saying when the metadata and mirrorlists were downloaded
              for each repo. This means yum will revalidate the cache for each repo. next time it
              is used. However if the cache is still valid, nothing significant was deleted.

       yum clean packages
              Eliminate  any  cached  packages  from  the  system.   Note  that  packages are not
              automatically deleted after they are downloaded.

       yum clean headers
              Eliminate all of the header files, which old versions of yum  used  for  dependency

       yum clean metadata
              Eliminate  all  of the files which yum uses to determine the remote availability of
              packages. Using this option will force yum to download all the  metadata  the  next
              time it is run.

       yum clean dbcache
              Eliminate  the  sqlite cache used for faster access to metadata.  Using this option
              will force yum to download the sqlite metadata the next time it is run, or recreate
              the sqlite metadata if using an older repo.

       yum clean rpmdb
              Eliminate any cached data from the local rpmdb.

       yum clean plugins
              Tell any enabled plugins to eliminate their cached data.

       yum clean all
              Does all of the above.


       Yum  can  be extended through the use of plugins. A plugin is a Python ".py" file which is
       installed in one of the directories specified by the pluginpath option in yum.conf. For  a
       plugin to work, the following conditions must be met:

       1. The plugin module file must be installed in the plugin path as just described.

       2. The global plugins option in /etc/yum/yum.conf must be set to `1'.

       3.      A      configuration     file     for     the     plugin     must     exist     in
       /etc/yum/pluginconf.d/<plugin_name>.conf and the enabled setting in this file must set  to
       `1'. The minimal content for such a configuration file is:

              enabled = 1

       See the yum.conf(5) man page for more information on plugin related configuration options.




       pkcon (1)
       yum.conf (5)
       yum-updatesd (8)
       package-cleanup (1)
       repoquery (1)
       yum-complete-transaction (1)
       yumdownloader (1)
       yum-utils (1)
       yum-security (8)
       yum search yum


       See the Authors file included with this program.


       There  of  course  aren't  any bugs, but if you find any, you should first consult the FAQ
       mentioned above and then  email  the  mailing  list:  or  filed  in