File: *manpages*, Node: yum, Up: (dir)
yum(8) yum(8)
NAME
yum - Yellowdog Updater Modified
SYNOPSIS
yum [options] [command] [package ...]
DESCRIPTION
yum is an interactive, rpm based, package manager. It can automatically
perform system updates, including dependancy analysis and obsolete pro-
cessing based on "repository" metadata. It can also perform installa-
tion of new packages, removal of old packages and perform queries on
the installed and/or available packages among many other commands/ser-
vices (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 Pack-
ageKit and the gnome-packagekit application.
command is one of:
* install package1 [package2] [...]
* update [package1] [package2] [...]
* check-update
* upgrade [package1] [package2] [...]
* remove | erase package1 [package2] [...]
* list [...]
* info [...]
* provides | whatprovides feature1 [feature2] [...]
* clean [ packages | headers | metadata | dbcache | all ]
* makecache
* groupinstall group1 [group2] [...]
* groupupdate group1 [group2] [...]
* grouplist [hidden]
* groupremove group1 [group2] [...]
* groupinfo group1 [...]
* search string1 [string2] [...]
* shell [filename]
* resolvedep dep1 [dep2] [...]
* localinstall rpmfile1 [rpmfile2] [...]
* localupdate rpmfile1 [rpmfile2] [...]
* deplist package1 [package2] [...]
* repolist [all|enabled|disabled]
* 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.
install
Is used to install the latest version of a package or group of
packages while ensuring that all dependencies are satisfied. If
no package matches the given package name(s), they are assumed
to be a shell glob and any matches are then installed.
update If run without any packages, update will update every currently
installed package. If one or more packages are specified, Yum
will only update the listed packages. While updating packages,
yum will ensure that all dependencies are satisfied. 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 --obsoletes flag is present yum will include package
obsoletes in its calculations - this makes it better for dis-
tro-version changes, for example: upgrading from somelinux 8.0
to somelinux 9.
check-update
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 pkgs to be updated in list
format. Returns 0 if no packages are available for update.
Returns 1 if an error occured.
upgrade
Is the same as the update command with the --obsoletes flag set.
See update for more details.
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.
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 Is used to find any packages matching a string in the descrip-
tion, summary and package name fields of an rpm. Useful for
finding a package you do not know by name but know by some word
related to it.
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.
makecache
Is used to download and make usable all the metadata for the
currently enabled yum repos.
groupinstall
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 installed.
groupupdate
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 installed.
grouplist
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".
groupremove
Is used to remove all of the pacakges 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 "groupinstall X Y" followed by
"groupremove Y" does not do give you the same result as
"groupinstall X".
groupinfo
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).
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
resolvedep
Is used to list packages providing the specified dependencies,
at most one package is listed per dependency.
localinstall
Is used to install a set of local rpm files. If required the
enabled repositories will be used to resolve dependencies.
localupdate
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.
deplist
Produces a list of all dependencies and what packages provide
those dependencies for the given packages.
repolist
Produces a list of configured repositories. The default is to
list all enabled repositories.
help Produces help, either for all commands or if given a command
name then the help for that particular command.
GENERAL OPTIONS
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 Assume yes; assume that the answer to any question which would
be asked is yes.
Configuration Option: assumeyes
-c [config file]
Specifies the config file location - can take http, ftp urls and
local file paths.
-q, --quiet
Run without output. Note that you likely also want to use -y.
-v, --verbose
Run with a lot of debugging output.
-d [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 [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
-R [time in minutes]
Sets the maximum amount of time yum will wait before performing
a command - it randomizes over the time.
-C Tells yum to run entirely from cache - does not download or
update any headers unless it has to to perform the requested
action.
--version
Reports the yum version number and exits.
--showduplicates
Doesn't limit packages to their latest versions in the info,
list and search commands (will also affect plugins which use the
doPackageLists() API).
--installroot=root
Specifies an alternative installroot, relative to which all
packages will be installed.
Configuration Option: installroot
--enablerepo=repoidglob
Enables specific repositories by id or glob that have been dis-
abled in the configuration file using the enabled=0 option.
Configuration Option: enabled
--disablerepo=repoidglob
Disables specific repositories by id or glob.
Configuration Option: enabled
--obsoletes
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
--disableexcludes=[all|main|repoid]
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
--disableplugin=plugin
Run with one or more plugins disabled, the argument is a comma
seperated list of wildcards to match against plugin names.
--noplugins
Run with all plugins disabled.
Configuration Option: plugins
--nogpgcheck
Run with gpg signature checking disabled.
Configuration Option: gpgcheck
--skip-broken
Resolve depsolve problems by removing packages that are causing
problems from the transaction.
Configuration Option: skip_broken
-t, --tolerant
This option currently does nothing.
LIST OPTIONS
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 pack-
age.
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 reposito-
ries.
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 printed.
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.
Specifying package names
All the list options mentioned above take file-glob-syntax wild-
cards or package names as arguments, for example yum list avail-
able 'foo*' will list all available packages that match 'foo*'.
(The single quotes will keep your shell from expanding the
globs.)
CLEAN OPTIONS
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='*' option.
yum clean packages
Eliminate any cached packages from the system. Note that pack-
ages are not automatically deleted after they are downloaded.
yum clean headers
Eliminate all of the header files which yum uses for dependency
resolution.
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 recreate the cache the next
time it is run.
yum clean all
Runs yum clean packages and yum clean headers, yum clean meta-
data and yum clean dbcache as above.
MISC
Specifying package names
A package can be referred to for install,update,list,remove etc
with any of the following:
name
name.arch
name-ver
name-ver-rel
name-ver-rel.arch
name-epoch:ver-rel.arch
epoch:name-ver-rel.arch
For example: yum remove kernel-2.4.1-10.i686
PLUGINS
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/plugin-
conf.d/<plugin_name>.conf and the enabled setting in this file must set
to '1'. The minimal content for such a configuration file is:
[main]
enabled = 1
See the yum.conf(5) man page for more information on plugin related
configuration options.
FILES
/etc/yum.conf
/etc/yum.repos.d/
/etc/yum/pluginconf.d/
/var/cache/yum/
SEE ALSO
pkcon (1)
yum.conf (5)
yum-updatesd (8)
package-cleanup (1)
repoquery (1)
yum-complete-transaction (1)
yumdownloader (1)
yum-utils (1)
http://linux.duke.edu/yum/
http://wiki.linux.duke.edu/YumFaq
yum search yum
AUTHORS
See the Authors file included with this program.
BUGS
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:
yum@lists.linux.duke.edu or filed in bugzilla.
Seth Vidal yum(8)