1yum(8)                                                                  yum(8)
2
3
4

NAME

6       yum - Yellowdog Updater Modified
7

SYNOPSIS

9       yum [options] [command] [package ...]
10

DESCRIPTION

12       yum is an interactive, rpm based, package manager. It can automatically
13       perform system updates, including dependency analysis and obsolete pro‐
14       cessing  based  on "repository" metadata. It can also perform installa‐
15       tion of new packages, removal of old packages and  perform  queries  on
16       the  installed and/or available packages among many other commands/ser‐
17       vices (see below). yum is similar to other high level package  managers
18       like apt-get and smart.
19
20       While  there  are  some  graphical interfaces directly to the yum code,
21       more recent graphical interface development  is  happening  with  Pack‐
22       ageKit and the gnome-packagekit application.
23
24       command is one of:
25        * install package1 [package2] [...]
26        * update [package1] [package2] [...]
27        * check-update
28        * upgrade [package1] [package2] [...]
29        * distribution-synchronization [package1] [package2] [...]
30        * remove | erase package1 [package2] [...]
31        * list [...]
32        * info [...]
33        * provides | whatprovides feature1 [feature2] [...]
34        * clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]
35        * makecache
36        * groupinstall group1 [group2] [...]
37        * groupupdate group1 [group2] [...]
38        * grouplist [hidden] [groupwildcard] [...]
39        * groupremove group1 [group2] [...]
40        * groupinfo group1 [...]
41        * search string1 [string2] [...]
42        * shell [filename]
43        * resolvedep dep1 [dep2] [...]
44        * localinstall rpmfile1 [rpmfile2] [...]
45           (maintained for legacy reasons only - use install)
46        * localupdate rpmfile1 [rpmfile2] [...]
47           (maintained for legacy reasons only - use update)
48        * reinstall package1 [package2] [...]
49        * downgrade package1 [package2] [...]
50        * deplist package1 [package2] [...]
51        * repolist [all|enabled|disabled]
52         * version [ all | installed | available | group-* | nogroups* | grou‐
53       plist | groupinfo ]
54        * history [info|list|summary|redo|undo|new|addon-info]
55        * check
56        * help [command]
57
58       Unless the --help or -h option is given, one of the above commands must
59       be present.
60
61       Repository configuration is honored in all operations.
62
63       install
64              Is  used  to install the latest version of a package or group of
65              packages while ensuring that  all  dependencies  are  satisfied.
66              (See  Specifying package names for more information) If no pack‐
67              age matches the given package name(s), they are assumed to be  a
68              shell  glob  and  any  matches  are  then installed. If the name
69              starts with an @ character the rest  of  the  name  is  used  as
70              though  passed  to  the groupinstall command. If the name starts
71              with a - character, then a search is done within the transaction
72              and any matches are removed. If the name is a file, then install
73              works like localinstall. If the name doesn't  match  a  package,
74              then    package   "provides"   are   searched   (Eg.   "_sqlite‐
75              cache.so()(64bit)") as are filelists (Eg. "/usr/bin/yum").  Also
76              note that for filelists, wildcards will match multiple packages.
77
78       update If  run without any packages, update will update every currently
79              installed package.  If one or more packages or package globs are
80              specified,  Yum  will  only  update  the listed packages.  While
81              updating packages, yum will ensure  that  all  dependencies  are
82              satisfied.  (See  Specifying package names for more information)
83              If the packages or globs specified match to packages  which  are
84              not  currently  installed  then  update  will  not install them.
85              update operates on groups, files, provides  and  filelists  just
86              like the "install" command.
87
88              If  the main obsoletes configure option is true (default) or the
89              --obsoletes flag is present yum will include  package  obsoletes
90              in  its  calculations  - this makes it better for distro-version
91              changes, for example: upgrading from somelinux 8.0 to  somelinux
92              9.
93
94       check-update
95              Implemented  so  you  could know if your machine had any updates
96              that needed to be  applied  without  running  it  interactively.
97              Returns exit value of 100 if there are packages available for an
98              update. Also returns a list of the packages  to  be  updated  in
99              list  format. Returns 0 if no packages are available for update.
100              Returns 1 if an error occurred.  Running in  verbose  mode  also
101              shows obsoletes.
102
103       upgrade
104              Is the same as the update command with the --obsoletes flag set.
105              See update for more details.
106
107       distribution-synchronization or distro-sync
108              Synchronizes the installed package set with the latest  packages
109              available, this is done by either obsoleting, upgrading or down‐
110              grading as appropriate. This will "normally" do the  same  thing
111              as  the  upgrade  command  however  if  you have the package FOO
112              installed at version 4, and the latest available is only version
113              3, then this command will downgrade FOO to version 3.
114
115              This  command does not perform operations on groups, local pack‐
116              ages or negative selections.
117
118       remove or erase
119              Are used to remove the specified packages  from  the  system  as
120              well  as removing any packages which depend on the package being
121              removed.  remove  operates  on  groups,  files,   provides   and
122              filelists  just like the "install" command.(See Specifying pack‐
123              age names for more information)
124
125              Note that "yum" is included in the protected_packages configura‐
126              tion, by default.  So you can't accidentally remove yum itself.
127
128       list   Is  used  to  list various information about available packages;
129              more complete details are available in the List Options  section
130              below.
131
132       provides or whatprovides
133              Is used to find out which package provides some feature or file.
134              Just use a specific name or a file-glob-syntax wildcards to list
135              the packages available or installed that provide that feature or
136              file.
137
138       search Is used to find any packages matching a string in  the  descrip‐
139              tion,  summary  and  package  name  fields of an rpm. Useful for
140              finding a package you do not know by name but know by some  word
141              related to it.
142
143       info   Is  used  to  list  a  description and summary information about
144              available packages; takes the same  arguments  as  in  the  List
145              Options section below.
146
147       clean  Is  used  to clean up various things which accumulate in the yum
148              cache directory over time.  More complete details can  be  found
149              in the Clean Options section below.
150
151       makecache
152              Is  used  to  download  and make usable all the metadata for the
153              currently enabled yum repos.
154
155       groupinstall
156              Is used to install all of the individual packages in a group, of
157              the  specified types (this works as if you'd taken each of those
158              package names and put them  on  the  command  line  for  a  "yum
159              install" command).
160               The  group_package_types  configuration  option specifies which
161              types will be installed.
162
163       groupupdate
164              Is just an alias for groupinstall, which will do the right thing
165              because  "yum  install  X" and "yum update X" do the same thing,
166              when X is already installed.
167
168       grouplist
169              Is used to list the available groups from all yum repos.  Groups
170              are   marked  as  "installed"  if  all  mandatory  packages  are
171              installed, or if a group doesn't  have  any  mandatory  packages
172              then  it  is installed if any of the optional or default package
173              are installed.  The optional "hidden" argument  will  also  list
174              groups  marked  as  not being "user visible". If you pass the -v
175              option, to enable verbose mode, then the groupids are displayed.
176
177       groupremove
178              Is used to remove  all  of  the  packages  in  a  group,  unlike
179              "groupinstall"   this   will  remove  everything  regardless  of
180              group_package_types. It is worth pointing out that packages  can
181              be  in  more  than  one group, so "groupinstall X Y" followed by
182              "groupremove Y"  does  not  do  give  you  the  same  result  as
183              "groupinstall X".
184
185              The groupremove_leaf_only configuration changes the behaviour of
186              this command to only remove packages which  aren't  required  by
187              something else.
188
189       groupinfo
190              Is used to give the description and package list of a group (and
191              which type those packages are marked as). Note that you can  use
192              the  yum-filter-data  and  yum-list-data  plugins to get/use the
193              data the other way around (Ie. what  groups  own  packages  need
194              updating).  If  you  pass the -v option, to enable verbose mode,
195              then the package names are matched  against  installed/available
196              packages similar to the list command.
197
198       shell  Is  used  to enter the 'yum shell', when a filename is specified
199              the contents of that file is executed in  yum  shell  mode.  See
200              yum-shell(8) for more info
201
202       resolvedep
203              Is  used  to list packages providing the specified dependencies,
204              at most one package is listed per dependency.
205
206       localinstall
207              Is used to install a set of local rpm  files.  If  required  the
208              enabled  repositories will be used to resolve dependencies. Note
209              that the install command will do a local  install,  if  given  a
210              filename. This option is maintained for legacy reasons only.
211
212       localupdate
213              Is used to update the system by specifying local rpm files. Only
214              the specified rpm files of which an  older  version  is  already
215              installed  will  be  installed, the remaining specified packages
216              will be ignored.  If required the enabled repositories  will  be
217              used  to resolve dependencies. Note that the update command will
218              do a local update, if given a filename.  This  option  is  main‐
219              tained for legacy reasons only.
220
221       reinstall
222              Will reinstall the identically versioned package as is currently
223              installed.  This does not work for "installonly" packages,  like
224              Kernels.  reinstall  operates  on  groups,  files,  provides and
225              filelists just like the "install" command.
226
227       downgrade
228              Will try and downgrade a  package  from  the  version  currently
229              installed  to  the  previously highest version (or the specified
230              version).  The depsolver will not necessarily work, but  if  you
231              specify  all the packages it should work (and thus. all the sim‐
232              ple cases will work). Also this does not work for  "installonly"
233              packages,  like  Kernels.  downgrade  operates on groups, files,
234              provides, filelists and rpm files just like the  "install"  com‐
235              mand.
236
237       deplist
238              Produces  a  list  of all dependencies and what packages provide
239              those dependencies for the given packages.
240
241       repolist
242              Produces a list of configured repositories. The  default  is  to
243              list all enabled repositories. If you pass -v, for verbose mode,
244              more information is listed. If the first argument is  'enabled',
245              'disabled'  or  'all'  then the command will list those types of
246              repos.
247
248              You can pass repo id or name arguments, or  wildcards  which  to
249              match  against  both of those. However if the ir or name matches
250              exactly then the repo will be listed even  if  you  are  listing
251              enabled repos. and it is disabled.
252
253              In  non-verbose  mode  the first column will start with a '*' if
254              the repo. has metalink data  and  the  latest  metadata  is  not
255              local.  For  non-verbose  mode the last column will also display
256              the number of packages in the repo. and (if there are  any  user
257              specified excludes) the number of packages excluded.
258
259              One last special feature of repolist, is that if you are in non-
260              verbose mode then yum will ignore any repo errors and output the
261              information  it  can  get  (Eg. "yum clean all; yum -C repolist"
262              will output something, although the package counts/etc. will  be
263              zeroed out).
264
265       version
266              Produces  a "version" of the rpmdb, and of the enabled reposito‐
267              ries if "all" is given as the first argument. You can also spec‐
268              ify  version  groups  in the version-groups config. file. If you
269              pass -v, for verbose mode, more information is listed. The  ver‐
270              sion  is  calculated  by  taking a sha1 hash of the packages (in
271              sorted order), and the checksum_type/checksum_data entries  from
272              the yumdb. Note that this rpmdb version is now also used signif‐
273              icantly within yum (esp. in yum history).
274
275              The version command will now show "groups" of packages as a sep‐
276              arate version, and so takes sub-commands:
277
278              "version grouplist" - List the defined version groups.
279
280              "version  groupinfo"  - Get the complete list of packages within
281              one or more version groups.
282
283              "version installed" - This is the default, only show the version
284              information for installed packages.
285
286              "version  available"  -  Only  show  the version information for
287              available packages.
288
289              "version all" - Show the version information for  installed  and
290              available packages.
291
292              "version  nogroups  |  nogroups-*"  - Just show the main version
293              information.
294
295              "version group-*" - Just show the grouped  version  information,
296              if  more  arguments  are given then only show the data for those
297              groups.
298
299
300       history
301              The history command allows the user to view what has happened in
302              past transactions (assuming the history_record config. option is
303              set). You can  use  info/list/summary  to  view  what  happened,
304              undo/redo to act on that information and new to start a new his‐
305              tory file.
306
307              The info/list/summary commands take either a transaction id or a
308              package  (with  wildcards,  as in Specifying package names), all
309              three can also be passed no arguments. list can  be  passed  the
310              keyword "all" to list all the transactions.
311
312              The  undo/redo commands take either a transaction id or the key‐
313              word last and an offset from the last transaction (Eg. if you've
314              done  250  transactions,  "last"  refers to transaction 250, and
315              "last-4" refers to transaction 246).
316
317              In "history list" output the  Altered  column  also  gives  some
318              extra  information  if  there  was  something  not good with the
319              transaction.
320
321              > - The rpmdb was changed, outside yum, after the transaction.
322              < - The rpmdb was changed, outside yum, before the transaction.
323              * - The transaction aborted before completion.
324              # - The transaction completed, but with a non-zero status.
325              E - The transaction completed fine, but had warning/error output
326              during the transaction.
327              P - The transaction completed fine, but problems already existed
328              in the rpmdb.
329              s -  The  transaction  completed  fine,  but  --skip-broken  was
330              enabled and had to skip some packages.
331
332
333       check  Checks  the local rpmdb and produces information on any problems
334              it finds. You can pass the check command the  arguments  "depen‐
335              dencies"  or  "duplicates",  to  limit the checking that is per‐
336              formed (the default is "all" which does both).
337
338       help   Produces help, either for all commands or  if  given  a  command
339              name then the help for that particular command.
340

GENERAL OPTIONS

342       Most  command  line  options can be set using the configuration file as
343       well and the descriptions indicate the necessary  configuration  option
344       to set.
345
346       -h, --help
347              Help; display a help message and then quit.
348
349       -y, --assumeyes
350              Assume  yes;  assume that the answer to any question which would
351              be asked is yes.
352              Configuration Option: assumeyes
353
354       -c, --config=[config file]
355              Specifies the config file location - can take HTTP and FTP  URLs
356              and local file paths.
357
358       -q, --quiet
359              Run without output.  Note that you likely also want to use -y.
360
361       -v, --verbose
362              Run with a lot of debugging output.
363
364       -d, --debuglevel=[number]
365              Sets  the  debugging  level  to  [number] - turns up or down the
366              amount of things that are printed. Practical range: 0 - 10
367              Configuration Option: debuglevel
368
369       -e, --errorlevel=[number]
370              Sets the error level to [number] Practical range 0 - 10. 0 means
371              print only critical errors about which you must be told. 1 means
372              print all errors, even ones that are not  overly  important.  1+
373              means print more errors (if any) -e 0 is good for cron jobs.
374              Configuration Option: errorlevel
375
376       --rpmverbosity=[name]
377              Sets  the debug level to [name] for rpm scriplets. 'info' is the
378              default, other options are:  'critical',  'emergency',  'error',
379              'warn' and 'debug'.
380              Configuration Option: rpmverbosity
381
382       -R, --randomwait=[time in minutes]
383              Sets  the maximum amount of time yum will wait before performing
384              a command - it randomizes over the time.
385
386       -C, --cacheonly
387              Tells yum to run entirely from system cache - does not  download
388              or  update any headers unless it has to to perform the requested
389              action.
390
391       --version
392              Reports the yum version number and  installed  package  versions
393              for  everything  in  history_record_packages (can be added to by
394              plugins).
395
396       --showduplicates
397              Doesn't limit packages to their latest  versions  in  the  info,
398              list and search commands (will also affect plugins which use the
399              doPackageLists() API).
400
401       --installroot=root
402              Specifies an alternative  installroot,  relative  to  which  all
403              packages will be installed.
404              Configuration Option: installroot
405
406       --enablerepo=repoidglob
407              Enables  specific repositories by id or glob that have been dis‐
408              abled in the configuration file using the enabled=0 option.
409              Configuration Option: enabled
410
411       --disablerepo=repoidglob
412              Disables specific repositories by id or glob.
413              Configuration Option: enabled
414
415       --obsoletes
416              This option only has affect for  an  update,  it  enables  yum´s
417              obsoletes  processing logic. For more information see the update
418              command above.
419              Configuration Option: obsoletes
420
421       -x, --exclude=package
422              Exclude a specific package by name or glob from updates  on  all
423              repositories.  Configuration Option: exclude
424
425       --color=[always|auto|never]
426              Display  colorized output automatically, depending on the output
427              terminal, always (using ANSI codes) or  never.  Note  that  some
428              commands  (Eg.  list  and info) will do a little extra work when
429              color is enabled.  Configuration Option: color
430
431       --disableexcludes=[all|main|repoid]
432              Disable the excludes defined in your config files. Takes one  of
433              three options:
434              all == disable all excludes
435              main == disable excludes defined in [main] in yum.conf
436              repoid == disable excludes defined for that repo
437
438       --disableplugin=plugin
439              Run  with  one or more plugins disabled, the argument is a comma
440              separated list of wildcards to match against plugin names.
441
442       --noplugins
443              Run with all plugins disabled.
444              Configuration Option: plugins
445
446       --nogpgcheck
447              Run with GPG signature checking disabled.
448              Configuration Option: gpgcheck
449
450       --skip-broken
451              Resolve depsolve problems by removing packages that are  causing
452              problems from the transaction.
453              Configuration Option: skip_broken
454
455       --releasever=version
456              Pretend the current release version is the given string. This is
457              very useful when combined with --installroot. Note that with the
458              default  upstream cachedir, of /var/cache/yum, using this option
459              will corrupt your cache (and you can  use  $releasever  in  your
460              cachedir configuration to stop this).
461
462       -t, --tolerant
463              This option currently does nothing.
464
465       --setopt=option=value
466              Set  any  config option in yum config or repo files. For options
467              in the global config just use:  --setopt=option=value  for  repo
468              options use: --setopt=repoid.option=value
469

LIST OPTIONS

471       The following are the ways which you can invoke yum in list mode.  Note
472       that all list commands include information on the version of the  pack‐
473       age.
474
475       OUTPUT
476
477
478              The format of the output of yum list is:
479
480              name.arch [epoch:]version-release  repo or @installed-from-repo
481
482
483       yum list [all | glob_exp1] [glob_exp2] [...]
484              List all available and installed packages.
485
486       yum list available [glob_exp1] [...]
487              List  all  packages  in  the  yum  repositories  available to be
488              installed.
489
490       yum list updates [glob_exp1] [...]
491              List all packages with updates available in  the  yum  reposito‐
492              ries.
493
494       yum list installed [glob_exp1] [...]
495              List  the  packages  specified by args.  If an argument does not
496              match the name of an available package, it is assumed  to  be  a
497              shell-style glob and any matches are printed.
498
499       yum list extras [glob_exp1] [...]
500              List the packages installed on the system that are not available
501              in any yum repository listed in the config file.
502
503       yum list obsoletes [glob_exp1] [...]
504              List the packages installed on the system that are obsoleted  by
505              packages in any yum repository listed in the config file.
506
507       yum list recent
508              List  packages  recently  added  into  the repositories. This is
509              often not helpful, but what you may really want to use  is  "yum
510              list-updateinfo new" from the security yum plugin.
511

SPECIFYING PACKAGE NAMES

513       A  package  can  be referred to for install, update, remove, list, info
514       etc with any of the following as well as globs of any of the following:
515
516              name
517              name.arch
518              name-ver
519              name-ver-rel
520              name-ver-rel.arch
521              name-epoch:ver-rel.arch
522              epoch:name-ver-rel.arch
523
524              For example: yum remove kernel-2.4.1-10.i686
525                   this will remove this specific kernel-ver-rel.arch.
526
527              Or:          yum list available 'foo*'
528                   will list all available packages that  match  'foo*'.  (The
529              single quotes will keep your shell from expanding the globs.)
530

CLEAN OPTIONS

532       The following are the ways which you can invoke yum in clean mode. Note
533       that "all files" in the commands below means "all  files  in  currently
534       enabled  repositories".   If  you  want to also clean any (temporarily)
535       disabled repositories you need to use --enablerepo='*' option.
536
537
538       yum clean expire-cache
539              Eliminate the local data  saying  when  the  metadata  and  mir‐
540              rorlists  were  downloaded  for  each  repo. This means yum will
541              revalidate the cache for each repo. next time it is  used.  How‐
542              ever  if  the  cache  is  still  valid,  nothing significant was
543              deleted.
544
545
546       yum clean packages
547              Eliminate any cached packages from the system.  Note that  pack‐
548              ages are not automatically deleted after they are downloaded.
549
550
551       yum clean headers
552              Eliminate  all  of  the  header files, which old versions of yum
553              used for dependency resolution.
554
555
556       yum clean metadata
557              Eliminate all of the files  which  yum  uses  to  determine  the
558              remote  availability  of  packages. Using this option will force
559              yum to download all the metadata the next time it is run.
560
561
562       yum clean dbcache
563              Eliminate the sqlite cache used for faster access  to  metadata.
564              Using this option will force yum to download the sqlite metadata
565              the next time it is run, or  recreate  the  sqlite  metadata  if
566              using an older repo.
567
568
569       yum clean dbcache
570              Eliminate  the  sqlite cache used for faster access to metadata.
571              Using this option will force yum to download the sqlite metadata
572              the  next  time  it  is  run, or recreate the sqlite metadata if
573              using an older repo.
574
575
576       yum clean rpmdb
577              Eliminate any cached data from the local rpmdb.
578
579
580       yum clean plugins
581              Tell any enabled plugins to eliminate their cached data.
582
583
584       yum clean all
585              Does all of the above.
586
587

PLUGINS

589       Yum can be extended through the use of plugins. A plugin  is  a  Python
590       ".py"  file  which  is installed in one of the directories specified by
591       the pluginpath option in yum.conf. For a plugin to work, the  following
592       conditions must be met:
593
594       1.  The plugin module file must be installed in the plugin path as just
595       described.
596
597       2. The global plugins option in /etc/yum.conf must be set to `1'.
598
599       3. A configuration file for the plugin must exist  in  /etc/yum/plugin‐
600       conf.d/<plugin_name>.conf and the enabled setting in this file must set
601       to `1'. The minimal content for such a configuration file is:
602
603              [main]
604              enabled = 1
605
606       See the yum.conf(5) man page for more  information  on  plugin  related
607       configuration options.
608
609

FILES

611       /etc/yum.conf
612       /etc/yum/version-groups.conf
613       /etc/yum.repos.d/
614       /etc/yum/pluginconf.d/
615       /var/cache/yum/
616
617

SEE ALSO

619       pkcon (1)
620       yum.conf (5)
621       yum-updatesd (8)
622       package-cleanup (1)
623       repoquery (1)
624       yum-complete-transaction (1)
625       yumdownloader (1)
626       yum-utils (1)
627       yum-security (8)
628       http://yum.baseurl.org/
629       http://yum.baseurl.org/wiki/Faq
630       yum search yum
631
632

AUTHORS

634       See the Authors file included with this program.
635
636

BUGS

638       There  of course aren't any bugs, but if you find any, you should first
639       consult the FAQ mentioned  above  and  then  email  the  mailing  list:
640       yum@lists.baseurl.org or filed in bugzilla.
641
642
643
644Seth Vidal                                                              yum(8)
Impressum