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        * update-to [package1] [package2] [...]
28        * update-minimal [package1] [package2] [...]
29        * check-update
30        * upgrade [package1] [package2] [...]
31        * upgrade-to [package1] [package2] [...]
32        * distribution-synchronization [package1] [package2] [...]
33        * remove | erase package1 [package2] [...]
34        * autoremove [package1] [...]
35        * list [...]
36        * info [...]
37        * provides | whatprovides feature1 [feature2] [...]
38        * clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]
39        * makecache [fast]
40        * groups [...]
41        * search string1 [string2] [...]
42        * shell [filename]
43        * resolvedep dep1 [dep2] [...]
44           (maintained  for  legacy  reasons  only - use repoquery or yum pro‐
45       vides)
46        * localinstall rpmfile1 [rpmfile2] [...]
47           (maintained for legacy reasons only - use install)
48        * localupdate rpmfile1 [rpmfile2] [...]
49           (maintained for legacy reasons only - use update)
50        * reinstall package1 [package2] [...]
51        * downgrade package1 [package2] [...]
52        * deplist package1 [package2] [...]
53        * repolist [all|enabled|disabled]
54        * repoinfo [all|enabled|disabled]
55        * repository-packages <enabled-repoid> <install|remove|remove-or-rein‐
56       stall|remove-or-distribution-synchronization> [package2] [...]
57         * version [ all | installed | available | group-* | nogroups* | grou‐
58       plist | groupinfo ]
59          *   history    [info|list|packages-list|packages-info|summary|addon-
60       info|redo|undo|rollback|new|sync|stats]
61        * load-transaction [txfile]
62        * updateinfo [summary | list | info | remove-pkgs-ts | exclude-updates
63       | exclude-all | check-running-kernel]
64        * fssnapshot [summary | list | have-space | create | delete]
65        * fs [filters | refilter | refilter-cleanup | du]
66        * check
67        * help [command]
68
69       Unless the --help or -h option is given, one of the above commands must
70       be present.
71
72       Repository configuration is honored in all operations.
73
74       install
75              Is  used  to install the latest version of a package or group of
76              packages while ensuring that  all  dependencies  are  satisfied.
77              (See  Specifying package names for more information) If no pack‐
78              age matches the given package name(s), they are assumed to be  a
79              shell  glob  and  any  matches  are  then installed. If the name
80              starts with @^ then it is treated as an environment group (group
81              install  @^foo),  an  @  character  and  it's treated as a group
82              (plain group install).
83
84              If the name starts with a "-" character, then a search  is  done
85              within  the  transaction  and any matches are removed. Note that
86              Yum options use the same syntax and it may be necessary  to  use
87              "--" to resolve any possible conflicts.
88
89              If  the name is a file, then install works like localinstall. If
90              the name doesn't match a package, then  package  "provides"  are
91              searched (e.g. "_sqlitecache.so()(64bit)") as are filelists (Eg.
92              "/usr/bin/yum"). Also note that for  filelists,  wildcards  will
93              match multiple packages.
94
95              Because  install does a lot of work to make it as easy as possi‐
96              ble to use, there are  also  a  few  specific  install  commands
97              "install-n",  "install-na"  and "install-nevra". These only work
98              on package names, and do not process wildcards etc.
99
100       update If run without any packages, update will update every  currently
101              installed package.  If one or more packages or package globs are
102              specified, Yum will only  update  the  listed  packages.   While
103              updating  packages,  yum  will  ensure that all dependencies are
104              satisfied. (See Specifying package names for  more  information)
105              If  the  packages or globs specified match to packages which are
106              not currently installed  then  update  will  not  install  them.
107              update  operates  on  groups, files, provides and filelists just
108              like the "install" command.
109
110              If the main obsoletes configure option is true (default) or  the
111              --obsoletes  flag  is present yum will include package obsoletes
112              in its calculations - this makes it  better  for  distro-version
113              changes,  for example: upgrading from somelinux 8.0 to somelinux
114              9.
115
116              Note that "update" works on installed packages first,  and  only
117              if there are no matches does it look for available packages. The
118              difference is most noticeable when you do "update foo-1-2" which
119              will  act  exactly  as "update foo" if foo-1-2 is installed. You
120              can use the "update-to" if you'd prefer that nothing  happen  in
121              the above case.
122
123       update-to
124              This  command  works like "update" but always specifies the ver‐
125              sion of the package we want to update to.
126
127       update-minimal
128              This works like the update command, but if you have the  package
129              foo-1  installed and have foo-2 (bugfix) and foo-3 (enhancement)
130              available with updateinfo.xml then update-minimal --bugfix  will
131              update you to foo-2.
132
133       check-update
134              Implemented  so  you  could know if your machine had any updates
135              that needed to be  applied  without  running  it  interactively.
136              Returns exit value of 100 if there are packages available for an
137              update. Also returns a list of the packages  to  be  updated  in
138              list  format. Returns 0 if no packages are available for update.
139              Returns 1 if an error occurred.  Running in  verbose  mode  also
140              shows obsoletes.
141
142       upgrade
143              Is the same as the update command with the --obsoletes flag set.
144              See update for more details.
145
146       upgrade-to
147              This command works like "upgrade" but always specifies the  ver‐
148              sion of the package we want to update to.
149
150       distribution-synchronization or distro-sync
151              Synchronizes  the installed package set with the latest packages
152              available, this is done by either obsoleting, upgrading or down‐
153              grading  as  appropriate. This will "normally" do the same thing
154              as the upgrade command however  if  you  have  the  package  FOO
155              installed at version 4, and the latest available is only version
156              3, then this command will downgrade FOO to version 3.
157
158              If you give the optional argument "full", then the command  will
159              also  reinstall  packages  where  the  install  checksum and the
160              available checksum do not match. And remove old packages (can be
161              used to sync. rpmdb versions). The optional argument "different"
162              can be used to specify the default operation.
163
164              This command does not perform operations on groups, local  pack‐
165              ages or negative selections.
166
167       remove or erase
168              Are  used  to  remove  the specified packages from the system as
169              well as removing any packages which depend on the package  being
170              removed.   remove   operates  on  groups,  files,  provides  and
171              filelists just like the "install" command.(See Specifying  pack‐
172              age names for more information)
173
174              Note that "yum" is included in the protected_packages configura‐
175              tion, by default.  So you can't accidentally remove yum itself.
176
177              The remove_leaf_only configuration changes the behaviour of this
178              command  to  only remove packages which aren't required by some‐
179              thing else.
180
181              The clean_requirements_on_remove configuration changes  the  be‐
182              haviour  of  this  command to also remove packages that are only
183              dependencies of this package.
184
185              Because remove does a lot of work to make it as easy as possible
186              to  use,  there are also a few specific remove commands "remove-
187              n", "remove-na" and "remove-nevra". These only work  on  package
188              names, and do not process wildcards etc.
189
190       autoremove
191
192              With  one  or more arguments this command works like running the
193              "remove" command with  the  clean_requirements_on_remove  turned
194              on. However you can also specify no arguments, at which point it
195              tries to remove any packages that weren't  installed  explicitly
196              by  the  user  and  which aren't required by anything (so called
197              leaf packages).
198
199              Because autoremove does a lot of work to make it as easy as pos‐
200              sible  to use, there are also a few specific autoremove commands
201              "autoremove-n", "autoremove-na"  and  "autoremove-nevra".  These
202              only work on package names, and do not process wildcards etc.
203
204       list   Is  used  to  list various information about available packages;
205              more complete details are available in the List Options  section
206              below.
207
208       provides or whatprovides
209              Is used to find out which package provides some feature or file.
210              Just use a specific name or a file-glob-syntax wildcards to list
211              the packages available or installed that provide that feature or
212              file.
213
214       search This is used to find packages when you know something about  the
215              package but aren't sure of it's name. By default search will try
216              searching just package names and summaries, but if that  "fails"
217              it will then try descriptions and url.
218
219              Yum  search  orders  the results so that those packages matching
220              more terms will appear first.
221
222              You can force searching everything by specifying  "all"  as  the
223              first argument.
224
225       info   Is  used  to  list  a  description and summary information about
226              available packages; takes the same  arguments  as  in  the  List
227              Options section below.
228
229       clean  Is  used  to clean up various things which accumulate in the yum
230              cache directory over time.  More complete details can  be  found
231              in the Clean Options section below.
232
233       makecache
234              Is  used  to  download  and make usable all the metadata for the
235              currently enabled yum repos. If the argument "fast"  is  passed,
236              then  we  just try to make sure the repos are current (much like
237              "yum clean expire-cache").
238
239       groups A command, new in 3.4.2, that collects all the subcommands  that
240              act on groups together. Note that recent yum using distributions
241              (Fedora-19+,  RHEL-7+)  have  configured   group_command=objects
242              which changes how group commands act in some important ways.
243
244              "group  install"  is used to install all of the individual pack‐
245              ages in a group, of the specified types (this works as if  you'd
246              taken  each  of  those package names and put them on the command
247              line for a "yum install" command).
248               The group_package_types configuration  option  specifies  which
249              types will be installed.
250               If  you  wish  to "reinstall" a group so that you get a package
251              that is currently blacklisted the easiest way to  do  that  cur‐
252              rently  is  to install the package manually and then run "groups
253              mark packages-sync mygroup mypackagename" (or use yumdb  to  set
254              the group_member of the package(s)).
255
256              "group  update"  is  just an alias for group install, when using
257              group_command=compat. This will install packages  in  the  group
258              not  already  installed  and  upgrade  existing  packages.  With
259              group_command=simple it  will  just  upgrade  already  installed
260              packages.  With group_command=objects it will try to upgrade the
261              group object, installing any available packages not  blacklisted
262              (marked  '-' in group info) and will upgrade the installed pack‐
263              ages.
264
265              "group list" is used to list the available groups from  all  yum
266              repos.  When group_command=objects the group is installed if the
267              user explicitly installed it (or used the group  mark*  commands
268              to  mark  it  installed).  It does not need to have any packages
269              installed.  When  not  using  group_command=objects  groups  are
270              shown as "installed" if all mandatory packages are installed, or
271              if a group doesn't  have  any  mandatory  packages  then  it  is
272              installed  if  any  of  the  optional  or  default  package  are
273              installed (when not in  group_command=objects  mode).   You  can
274              pass optional arguments to the list/summary commands: installed,
275              available, environment, language, packages, hidden and  ids  (or
276              any  of  those  prefixed  by "no" to turn them off again).  Note
277              that groups that are available but hidden  will  not  be  listed
278              unless  ´hidden´  keyword is passed to the command.  If you pass
279              the -v option, to enable verbose mode,  then  the  groupids  are
280              displayed  by  default (but "yum group list ids" is often easier
281              to read).
282
283              "group remove" is used to remove all of the packages in a group,
284              unlike  "groupinstall" this will remove everything regardless of
285              group_package_types. It is worth pointing out that packages  can
286              be  in  more  than one group, so "group install X Y" followed by
287              "group remove Y" does not do give you the same result as  "group
288              install X".
289
290              The groupremove_leaf_only configuration changes the behaviour of
291              this command to only remove packages which  aren't  required  by
292              something else.
293
294              "group info" is used to give the description and package list of
295              a group (and which type those packages are marked as). Note that
296              you  can  use  the  yum-filter-data and yum-list-data plugins to
297              get/use the data the other way  around  (i.e.  what  groups  own
298              packages  need  updating).  If you pass the -v option, to enable
299              verbose  mode,  then  the  package  names  are  matched  against
300              installed/available packages similar to the list command.
301
302              When  using group_command=objects, the info command will display
303              markers next to each package saying how that package relates  to
304              the group object. The meaning of these markers is:
305
306              "-" = Package isn't installed, and won't be installed as part of
307              the group (Eg.  "yum group install  foo  -pkgA"  or  "yum  group
308              install  foo;  yum  remove pkgA" … this will have pkgA marked as
309              '-')
310              "+" = Package isn't installed, but will be the next time you run
311              "yum upgrade" or "yum group upgrade foo"
312              "  "  = Package is installed, but wasn't installed via the group
313              (so "group remove foo" won't remove it).
314              "=" = Package is installed, and was installed via the group.
315
316              you can move an installed package into an installed group  using
317              either  "group  mark package-sync/package-sync-forced" or "yumdb
318              set group_member".
319
320              "group summary" is used to give a  quick  summary  of  how  many
321              groups are installed and available.
322
323              "group mark" and "group unmark" are used when groups are config‐
324              ured in group_command=objects mode. These  commands  then  allow
325              you  to  alter yum's idea of which groups are installed, and the
326              packages that belong to them.
327
328              "group mark install" mark the group as installed. When installed
329              "yum  upgrade" and "yum group upgrade" will install new packages
330              for the group (only those packages  already  installed  will  be
331              marked as members of the installed group to start with).
332
333              "group mark remove" the opposite of mark install.
334
335              "group mark packages" takes a group id (which must be installed)
336              and marks any given installed packages (which aren't members  of
337              a  group)  as  members of the group. Note that the data from the
338              repositories does not need to specify the packages as  a  member
339              of the group.
340
341              "group  mark  packages-force"  works  like  mark  packages,  but
342              doesn't care if the packages  are  already  members  of  another
343              group.
344
345              "group  mark blacklist" will blacklist all packages marked to be
346              installed for a group. After this command a "yum group  upgrade"
347              will not install any new packages as part of the group.
348
349              "group mark convert-blacklist"
350
351              "group mark convert-whitelist"
352
353              "group mark convert" converts the automatic data you get without
354              using groups as objects into groups as objects  data,  in  other
355              words  this will make "yum --setopt=group_command=objects groups
356              list" look as similar as possible to the current output of  "yum
357              --setopt=group_command=simple  groups  list". This makes it much
358              easier to convert to groups as objects without having  to  rein‐
359              stall.  For groups that are installed the whitelist variant will
360              mark all uninstalled packages for the group as to  be  installed
361              on  the next "yum group upgrade", the blacklist variant (current
362              default) will mark them all as blacklisted.
363
364              "group unmark packages" remove a package as a  member  from  any
365              groups.
366
367       shell  Is  used  to enter the 'yum shell', when a filename is specified
368              the contents of that file is executed in  yum  shell  mode.  See
369              yum-shell(8) for more info.
370
371       resolvedep
372              Is  used  to list packages providing the specified dependencies,
373              at most one package is listed per dependency.  This  command  is
374              maintained for legacy reasons only, use repoquery instead.
375
376       localinstall
377              Is  used  to  install  a set of local rpm files. If required the
378              enabled repositories will be used to resolve dependencies.  Note
379              that  the  install  command  will do a local install, if given a
380              filename. This command is maintained for legacy reasons only.
381
382       localupdate
383              Is used to update the system by specifying local rpm files. Only
384              the  specified  rpm  files  of which an older version is already
385              installed will be installed, the  remaining  specified  packages
386              will  be  ignored.  If required the enabled repositories will be
387              used to resolve dependencies. Note that the update command  will
388              do  a  local  update, if given a filename. This command is main‐
389              tained for legacy reasons only.
390
391       reinstall
392              Will reinstall the identically versioned package as is currently
393              installed.   This does not work for "installonly" packages, like
394              Kernels. reinstall  operates  on  groups,  files,  provides  and
395              filelists just like the "install" command.
396
397       downgrade
398              Will  try  and  downgrade  a  package from the version currently
399              installed to the previously highest version  (or  the  specified
400              version).   The  depsolver will not necessarily work, but if you
401              specify all the packages it should work (thus,  all  the  simple
402              cases  will  work).  Also  this  does not work for "installonly"
403              packages, like Kernels. downgrade  operates  on  groups,  files,
404              provides,  filelists  and rpm files just like the "install" com‐
405              mand.
406
407       swap   At it's simplest this is just a simpler way to remove one set of
408              package(s)  and install another set of package(s) without having
409              to use the "shell" command.  However you can  specify  different
410              commands  to  call than just remove or install, and you can list
411              multiple packages (it splits using the "--" marker).  Note  that
412              option parsing will remove the first "--" in an argument list on
413              the command line.
414
415
416              Examples:
417
418              swap foo bar
419              swap -- remove foo -- install bar
420              swap foo group install bar-grp
421              swap -- group remove foo-grp -- group install bar-grp
422
423       deplist
424              Produces a list of all dependencies and  what  packages  provide
425              those  dependencies  for the given packages. As of 3.2.30 it now
426              just shows the latest version of each package that matches (this
427              can  be changed by using --showduplicates) and it only shows the
428              newest providers (which can be changed by using --verbose).
429
430       repolist
431              Produces a list of configured repositories. The  default  is  to
432              list all enabled repositories. If you pass -v, for verbose mode,
433              or use repoinfo then more information is listed.  If  the  first
434              argument is ´enabled´, ´disabled´ or ´all´ then the command will
435              list those types of repos.
436
437              You can pass repo id or name arguments, or  wildcards  which  to
438              match  against  both of those. However if the id or name matches
439              exactly then the repo will be listed even  if  you  are  listing
440              enabled repos and it is disabled.
441
442              In  non-verbose  mode  the first column will start with a ´*´ if
443              the repo. has metalink data and the latest metadata is not local
444              and  will  start  with  a  ´!´ if the repo. has metadata that is
445              expired. For non-verbose mode the last column will also  display
446              the  number  of packages in the repo. and (if there are any user
447              specified excludes) the number of packages excluded.
448
449              One last special feature of repolist, is that if you are in non-
450              verbose mode then yum will ignore any repo errors and output the
451              information it can get (Eg. "yum clean  all;  yum  -C  repolist"
452              will  output something, although the package counts/etc. will be
453              zeroed out).
454
455       repoinfo
456
457              This command works exactly like repolist -v.
458
459       repository-packages
460              Treat a repo. as a collection of packages  (like  "yum  groups")
461              allowing the user to install or remove them as a single entity.
462
463              "repository-packages  <repo>  list"  - Works like the "yum list"
464              command, but only shows packages from the given repository.
465
466              "repository-packages <repo> info" - Works like  the  "yum  info"
467              command, but only shows packages from the given repository.
468
469              "repository-packages  <repo> check-update" - Works like the "yum
470              check-update" command, but only shows packages  from  the  given
471              repository.
472
473              "repository-packages  <repo> install" - Install all of the pack‐
474              ages in the repository,  basically  the  same  as:  yum  install
475              $(repoquery  --repoid=<repo>  -a).   Specific packages/wildcards
476              can be specified.
477
478              "repository-packages <repo> upgrade" - Update all of  the  pack‐
479              ages  in  the  repository,  basically  the  same as: yum upgrade
480              $(repoquery --repoid=<repo>  -a).   Specific  packages/wildcards
481              can be specified.
482
483              "repository-packages  <repo>  upgrade-to"  -  Update  all of the
484              packages in the repository, basically the same as:  yum  upgrade
485              $(repoquery --repoid=<repo> -a).  Without arguments it works the
486              same as upgrade, with arguments it just interprets them  as  the
487              versions you want to move to.
488
489              "repository-packages  <repo>  reinstall-old"  - ReInstall all of
490              the packages that are installed from the repository  and  avail‐
491              able  in  the  repository,  similar  to:  yum  reinstall $(yumdb
492              search-quiet from_repo <repo>).
493
494              "repository-packages <repo> move-to"  -  ReInstall  all  of  the
495              packages  that  are  available  in the repository, basically the
496              same as: yum reinstall $(repoquery --repoid=<repo> -a).
497
498              "repository-packages <repo> reinstall" - Tries to do  reinstall-
499              old, but if that produces no packages then tries move-to.
500
501              "repo-pkgs  <repo>  remove"  - Remove all of the packages in the
502              repository,   very   similar   to:   yum   remove    $(repoquery
503              --repoid=<repo> -a). However the repopkgsremove_leaf_only option
504              is obeyed.
505
506              "repo-pkgs <repo> remove-or-reinstall" - Works like  remove  for
507              any  package that doesn't have the exact same version in another
508              repository. For any package that does have the  exact  NEVRA  in
509              another repository then that version will be reinstalled.
510
511              "repo-pkgs <repo> remove-or-distro-sync" - Works like remove for
512              any package that doesn't exist in another  repository.  For  any
513              package  that  does exist it tries to work as if distro-sync was
514              called (with the repo. disabled).
515
516
517       version
518              Produces a "version" of the rpmdb, and of the enabled  reposito‐
519              ries if "all" is given as the first argument. You can also spec‐
520              ify version groups in the version-groups configuration file.  If
521              you  pass  -v, for verbose mode, more information is listed. The
522              version is calculated by taking an SHA1 hash of the packages (in
523              sorted  order), and the checksum_type/checksum_data entries from
524              the yumdb. Note that this rpmdb version is now also used signif‐
525              icantly within yum (esp. in yum history).
526
527              The version command will now show "groups" of packages as a sep‐
528              arate version, and so takes sub-commands:
529
530              "version grouplist" - List the defined version groups.
531
532              "version groupinfo" - Get the complete list of  packages  within
533              one or more version groups.
534
535              "version installed" - This is the default, only show the version
536              information for installed packages.
537
538              "version available" - Only  show  the  version  information  for
539              available packages.
540
541              "version  all"  - Show the version information for installed and
542              available packages.
543
544              "version nogroups | nogroups-*" - Just  show  the  main  version
545              information.
546
547              "version  group-*"  - Just show the grouped version information,
548              if more arguments are given then only show the  data  for  those
549              groups.
550
551
552       history
553              The history command allows the user to view what has happened in
554              past transactions (assuming the history_record config. option is
555              set).  You can use info/list/packages-list/packages-info/summary
556              to view what happened, undo/redo/rollback to act on that  infor‐
557              mation and new to start a new history file.
558
559              The info/list/summary commands take either a transaction id or a
560              package (with wildcards, as in Specifying  package  names),  all
561              three  can  also  be passed no arguments. list can be passed the
562              keyword "all" to list all the transactions.
563
564              The info command can also take ranges of transaction ids, of the
565              form  start..end, which will then display a merged history as if
566              all the transactions in the range had happened at once.
567              Eg. "history info 1..4" will merge the first  four  transactions
568              and display them as a single transaction.
569
570              The  packages-list/packages-info commands takes a package  (with
571              wildcards, as in Specifying package names). And show  data  from
572              the point of view of that package.
573
574              The undo/redo/rollback commands take either a single transaction
575              id or the keyword last and an offset from the  last  transaction
576              (Eg.  if you've done 250 transactions, "last" refers to transac‐
577              tion 250, and "last-4" refers to  transaction  246).   The  redo
578              command can also take some optional arguments before you specify
579              the transaction. "force-reinstall" tells it reinstall any  pack‐
580              ages  that  were  installed  in  that  transaction (via install,
581              upgrade or downgrade).   "force-remove"  tells  it  to  forcibly
582              remove any packages that were updated or downgraded.
583
584              The   undo/redo  commands  act  on  the  specified  transaction,
585              undo'ing or repeating the work of that  transaction.  While  the
586              rollback  command  will undo all transactions up to the point of
587              the specified transaction. For example, if you have  3  transac‐
588              tions,  where  package  A; B and C where installed respectively.
589              Then "undo 1" will try to remove package A, "redo 1" will try to
590              install  package A (if it is not still installed), and "rollback
591              1" will try to remove packages B and C. Note that after a "roll‐
592              back  1" you will have a fourth transaction, although the ending
593              rpmdb version (see: yum version) should be the same in  transac‐
594              tions 1 and 4.
595
596              The addon-info command takes a transaction ID, and the packages-
597              list command takes a package (with wildcards).
598
599              The stats command shows some statistics about the  current  his‐
600              tory DB.
601
602              The  sync  commands  allows  you  to change the rpmdb/yumdb data
603              stored for any installed packages, to whatever is in the current
604              rpmdb/yumdb (this is mostly useful when this data was not stored
605              when the package went into the history DB).
606
607              In "history list" you can change the behaviour of the 2nd column
608              via the configuration option history_list_view.
609
610              In  "history  list"  output  the  Altered column also gives some
611              extra information if there  was  something  not  good  with  the
612              transaction (this is also shown at the end of the package column
613              in the packages-list command).
614
615              > - The rpmdb was changed, outside yum, after the transaction.
616              < - The rpmdb was changed, outside yum, before the transaction.
617              * - The transaction aborted before completion.
618              # - The transaction completed, but with a non-zero status.
619              E - The transaction completed fine, but had warning/error output
620              during the transaction.
621              P - The transaction completed fine, but problems already existed
622              in the rpmdb.
623              s -  The  transaction  completed  fine,  but  --skip-broken  was
624              enabled and had to skip some packages.
625
626
627
628       load-transaction
629              This  command  will  re-load  a saved yum transaction file, this
630              allows you to run a transaction on one machine and then  use  it
631              on  another.  The two common ways to get a saved yum transaction
632              file are from "yum -q history addon-info last saved_tx"  or  via
633              the  automatic saves in $TMPDIR/yum_save_tx.* when a transaction
634              is solved but not run.
635
636              Running the command without an argument, or a  directory  as  an
637              argument will try and list the possible files available to load.
638              Showing if the  packages  are  still  available,  if  the  rpmdb
639              matches  the current rpmdb, how many transaction install/removes
640              members are in the saved transaction and what the filename is.
641
642
643       updateinfo
644              This command has a bunch of sub-commands to act on  the  update‐
645              info in the repositories. The simplest commands are:
646
647               yum updateinfo info [all | available | installed | updates]
648               yum updateinfo list [all | available | installed | updates]
649                yum  updateinfo  [summary]  [all  |  available  |  installed |
650              updates]
651
652              which all display information about the available update  infor‐
653              mation  relevant  to your machine (including anything installed,
654              if you supply "all").
655
656               * updates Is used to display information about  advisories  for
657              packages that can be updated. This is the default.
658               * installed Is used to display information only about installed
659              advisories.
660               * available Is used to display information about advisories for
661              packages available for updating or installation.
662                *  all Is used to display information about both installed and
663              available advisories.
664
665              They all take as arguments:
666
667               * <advisory> [advisory...]   Is  used  to  display  information
668              about one or more advisories.
669
670                * <package> [package...]  Is used to display information about
671              one or more packages.
672
673               * bugzillas / bzs Is the subset of the updateinfo  information,
674              pertaining to the bugzillas.
675
676                * cves Is the subset of the updateinfo information, pertaining
677              to the CVEs.
678
679               * enhancement Is the subset of the updateinfo information, per‐
680              taining to enhancements.
681
682                * bugfix Is the subset of the updateinfo information, pertain‐
683              ing to bugfixes.
684
685               * security / sec Is the subset of the  updateinfo  information,
686              pertaining to security.
687
688                *  severity  /  sev Include security relevant packages of this
689              severity.
690
691               * recommended Is the subset of the updateinfo information, per‐
692              taining to recommended updates.
693
694                *  new-packages  Is  the subset of the updateinfo information,
695              pertaining to new packages. These  are  packages  which  weren't
696              available at the initial release of your distribution.
697
698              There  are also three sub-commands to remove packages when using
699              "yum shell", they are:
700
701               yum updateinfo remove-pkgs-ts
702
703               yum updateinfo exclude-updates
704
705               yum updateinfo exclude-all
706
707              they all take the following arguments:
708
709              * [bzs=foo] [advisories=foo] [cves=foo]  [security-severity=foo]
710              [security] [bugfix]
711
712              and  finally  there  is  a command to manually check the running
713              kernel against updateinfo data:
714
715               yum updateinfo check-running-kernel
716
717
718       fssnapshot or fssnap
719              This command has a few sub-commands to act on the  LVM  data  of
720              the  host,  to list snapshots and to create and remove them. The
721              simplest commands, to display information about  the  configured
722              LVM snapshotable devices, are:
723
724               yum fssnapshot [summary]
725               yum fssnapshot list
726               yum fssnapshot have-space
727
728              then you can create and delete snapshots using:
729
730               yum fssnapshot create
731               yum fssnapshot delete <device(s)>
732
733              Configuration    Options:   fssnap_automatic_pre,   fssnap_auto‐
734              matic_post,   fssnap_automatic_keep,   fssnap_percentage,   fss‐
735              nap_devices, fssnap_abort_on_errors
736
737
738       fs     This  command  has  a  few sub-commands to act on the filesystem
739              data of the host, mainly  for  removing  languages/documentation
740              for minimal installs:
741
742               yum fs filters
743
744               yum fs filter languages en:es
745
746               yum fs filter documentation
747
748               yum fs refilter [package(s)]
749
750               yum fs refilter-cleanup [package(s)]
751
752               yum fs du [path]
753
754               yum fs status [path]
755
756               yum fs diff [path]
757
758
759              the first 3 being a simple interface to change yum.conf altering
760              the  tsflags  and  override_install_langs  configurations.   The
761              refilter  command is an optimized way of calling "yum reinstall"
762              to reinstall the packages with  the  new  filters  applied.  The
763              refilter-cleanup  command is needed because rpm doesn't actually
764              remove the files on reinstall, as it  should.  And  the  du/sta‐
765              tus/diff  commands  are included so you can easily see the space
766              used/saved and any other changes.
767
768
769       check  Checks the local rpmdb and produces information on any  problems
770              it  finds.  You can pass the check command the arguments "depen‐
771              dencies", "duplicates", "obsoleted" or "provides", to limit  the
772              checking  that  is  performed  (the  default is "all" which does
773              all).
774
775
776       help   Produces help, either for all commands or  if  given  a  command
777              name then the help for that particular command.
778

GENERAL OPTIONS

780       Most  command  line  options can be set using the configuration file as
781       well and the descriptions indicate the necessary  configuration  option
782       to set.
783
784       -h, --help
785              Help; display a help message and then quit.
786
787       -y, --assumeyes
788              Assume  yes;  assume that the answer to any question which would
789              be asked is yes.
790              Configuration Option: assumeyes
791
792       --assumeno
793              Assume no; assume that the answer to any question which would be
794              asked  is no. This option overrides assumeyes, but is still sub‐
795              ject to alwaysprompt.
796              Configuration Option: assumeno
797
798       -c, --config=[config file]
799              Specifies the config file location - can take HTTP and FTP  URLs
800              and local file paths.
801
802       -q, --quiet
803              Run without output.  Note that you likely also want to use -y.
804
805       -v, --verbose
806              Run with a lot of debugging output.
807
808       -d, --debuglevel=[number]
809              Sets  the  debugging  level  to  [number] - turns up or down the
810              amount of things that are printed. Practical range: 0 - 10
811              Configuration Option: debuglevel
812
813       -e, --errorlevel=[number]
814              Sets the error level to [number] Practical range 0 - 10. 0 means
815              print only critical errors about which you must be told. 1 means
816              print all errors, even ones that are not  overly  important.  1+
817              means print more errors (if any) -e 0 is good for cron jobs.
818              Configuration Option: errorlevel
819
820       --rpmverbosity=[name]
821              Sets the debug level to [name] for rpm scriptlets. 'info' is the
822              default, other options are:  'critical',  'emergency',  'error',
823              'warn' and 'debug'.
824              Configuration Option: rpmverbosity
825
826       -R, --randomwait=[time in minutes]
827              Sets  the maximum amount of time yum will wait before performing
828              a command - it randomizes over the time.
829
830       -C, --cacheonly
831              Tells yum to run entirely from system cache; does  not  download
832              or  update  metadata.  When this is used by a non-root user, yum
833              will run entirely from  user  cache  in  $TMPDIR.   This  option
834              doesn't  stop  yum  from  updating  user cache from system cache
835              locally if the latter is newer (this is always done when running
836              as a user).
837
838       --version
839              Reports  the  yum  version number and installed package versions
840              for everything in history_record_packages (can be  added  to  by
841              plugins).
842
843       --showduplicates
844              Doesn't  limit  packages  to  their latest versions in the info,
845              list and search commands (will also affect plugins which use the
846              doPackageLists() API).
847
848       --installroot=root
849              Specifies  an  alternative  installroot,  relative  to which all
850              packages will be installed. Think of  this  like  doing  "chroot
851              <root> yum" except using --installroot allows yum to work before
852              the chroot is created.  Note: You  may  also  want  to  use  the
853              option --releasever=/ when creating the installroot as otherwise
854              the $releasever  value  is  taken  from  the  rpmdb  within  the
855              installroot (and thus. will be empty, before creation).
856              Configuration Option: installroot
857
858       --enablerepo=repoidglob
859              Enables  specific repositories by id or glob that have been dis‐
860              abled in the configuration file using the enabled=0 option.
861              Configuration Option: enabled
862
863       --disablerepo=repoidglob
864              Disables specific repositories by id or glob.
865              Configuration Option: enabled
866
867       --obsoletes
868              This option only has affect for  an  update,  it  enables  yum´s
869              obsoletes  processing logic. For more information see the update
870              command above.
871              Configuration Option: obsoletes
872
873       -x, --exclude=package
874              Exclude a specific package by name or glob  from  all  reposito‐
875              ries, so yum works as if that package was never in the reposito‐
876              ries.  This is commonly used so  a  package  isn't  upgraded  or
877              installed  accidentally,  but  can be used to remove packages in
878              any way that "yum list" will show packages.
879
880              Can be disabled using --disableexcludes.  Configuration  Option:
881              exclude, includepkgs
882
883       --color=[always|auto|never]
884              Display  colorized output automatically, depending on the output
885              terminal, always (using ANSI codes) or  never.  Note  that  some
886              commands  (Eg.  list  and info) will do a little extra work when
887              color is enabled.  Configuration Option: color
888
889       --disableexcludes=[all|main|repoid]
890              Disable the excludes defined in your config files. Takes one  of
891              three options:
892              all == disable all excludes
893              main == disable excludes defined in [main] in yum.conf
894              repoid == disable excludes defined for that repo
895
896       --disableincludes=[all|repoid]
897              Disable  the includes defined in your config files. Takes one of
898              two options:
899              all == disable all includes
900              repoid == disable includes defined for that repo
901
902       --disableplugin=plugin
903              Run with one or more plugins disabled, the argument is  a  comma
904              separated list of wildcards to match against plugin names.
905
906       --noplugins
907              Run with all plugins disabled.
908              Configuration Option: plugins
909
910       --nogpgcheck
911              Run with GPG signature checking disabled.
912              Configuration Option: gpgcheck
913
914       --skip-broken
915              Resolve  depsolve problems by removing packages that are causing
916              problems from the transaction.
917              Configuration Option: skip_broken
918
919       --releasever=version
920              Pretend the current release version is the given string. This is
921              very  useful  when combined with --installroot. You can also use
922              --releasever=/ to take the releasever information  from  outside
923              the  installroot.  Note that with the default upstream cachedir,
924              of /var/cache/yum, using this option  will  corrupt  your  cache
925              (and  you  can use $releasever in your cachedir configuration to
926              stop this).
927
928       -t, --tolerant
929              This option makes  yum  go  slower,  checking  for  things  that
930              shouldn't  be  possible  making  it  more  tolerant  of external
931              errors.
932
933       --downloadonly
934              Don't update, just download. This is done in the background,  so
935              the  yum lock is released for other operations. This can also be
936              chosen by typing 'd'ownloadonly at the transaction  confirmation
937              prompt.
938
939       --downloaddir=directory
940              Specifies an alternate directory to store packages.
941
942       --setopt=option=value
943              Set  any  config option in yum config or repo files. For options
944              in the global config just use:  --setopt=option=value  for  repo
945              options use: --setopt=repoid.option=value
946
947       --security
948              This  option  includes  packages  that  say  they fix a security
949              issue, in updates.
950
951       --advisory=ADVS, --advisories=ADVS
952              This option includes in updates packages  corresponding  to  the
953              advisory ID, Eg. FEDORA-2201-123.
954
955       --bz=BZS
956              This  option  includes  in  updates packages that say they fix a
957              Bugzilla ID, Eg. 123.
958
959       --cve=CVES
960              This option includes in updates packages that say they fix a CVE
961              -      Common      Vulnerabilities      and     Exposures     ID
962              (http://cve.mitre.org/about/), Eg. CVE-2201-0123.
963
964       --bugfix
965              This option includes in updates packages that  say  they  fix  a
966              bugfix issue.
967
968       --sec-severity=SEVS, --secseverity=SEVS
969              This  option  includes  in updates security relevant packages of
970              the specified severity.
971
972
973

LIST OPTIONS

975       The following are the ways which you can invoke yum in list mode.  Note
976       that  all list commands include information on the version of the pack‐
977       age.
978
979       OUTPUT
980
981
982              The format of the output of yum list is:
983
984              name.arch [epoch:]version-release  repo or @installed-from-repo
985
986              Note that if the  repo  cannot  be  determined,  "installed"  is
987              printed instead.
988
989
990       yum list [all | glob_exp1] [glob_exp2] [...]
991              List all available and installed packages.
992
993       yum list available [glob_exp1] [...]
994              List  all  packages  in  the  yum  repositories  available to be
995              installed.
996
997       yum list updates [glob_exp1] [...]
998              List all packages with updates available in  the  yum  reposito‐
999              ries.
1000
1001       yum list installed [glob_exp1] [...]
1002              List  the  packages  specified by args.  If an argument does not
1003              match the name of an available package, it is assumed  to  be  a
1004              shell-style glob and any matches are printed.
1005
1006       yum list extras [glob_exp1] [...]
1007              List the packages installed on the system that are not available
1008              in any yum repository listed in the config file.
1009
1010       yum list distro-extras [glob_exp1] [...]
1011              List the packages installed on the system that  are  not  avail‐
1012              able, by name, in any yum repository listed in the config file.
1013
1014       yum list obsoletes [glob_exp1] [...]
1015              List  the packages installed on the system that are obsoleted by
1016              packages in any yum repository listed in the config file.
1017
1018       yum list recent
1019              List packages recently added  into  the  repositories.  This  is
1020              often  not  helpful, but what you may really want to use is "yum
1021              list-updateinfo new" from the security yum plugin.
1022

SPECIFYING PACKAGE NAMES

1024       A package can be referred to for install, update,  remove,  list,  info
1025       etc with any of the following as well as globs of any of the following:
1026
1027              name
1028              name.arch
1029              name-ver
1030              name-ver-rel
1031              name-ver-rel.arch
1032              name-epoch:ver-rel.arch
1033              epoch:name-ver-rel.arch
1034
1035              For example: yum remove kernel-2.4.1-10.i686
1036                   this will remove this specific kernel-ver-rel.arch.
1037
1038              Or:          yum list available 'foo*'
1039                   will  list  all  available packages that match 'foo*'. (The
1040              single quotes will keep your shell from expanding the globs.)
1041

CLEAN OPTIONS

1043       The following are the ways which you can invoke yum in clean mode.
1044
1045       Note that these commands only operate on  files  in  currently  enabled
1046       repositories.   If you use substitution variables (such as $releasever)
1047       in your cachedir configuration, the operation is further restricted  to
1048       the current values of those variables.
1049
1050       For  fine-grained  control  over  what  is  being  cleaned, you can use
1051       --enablerepo, --disablerepo and --releasever as  desired.   Note,  how‐
1052       ever,  that  you cannot use --releasever='*' to do the cleaning for all
1053       values previously used.  Also note that untracked  (no  longer  config‐
1054       ured) repositories will not be automatically cleaned.
1055
1056       To  purge  the entire cache in one go, the easiest way is to delete the
1057       files manually.  Depending on your cachedir configuration, this usually
1058       means  treating any variables as shell wildcards and recursively remov‐
1059       ing  matching  directories.   For  example,   if   your   cachedir   is
1060       /var/cache/yum/$basearch/$releasever,  then  the  whole  /var/cache/yum
1061       directory has to be removed.  If you do  this,  yum  will  rebuild  the
1062       cache as required the next time it is run (this may take a while).
1063
1064       As  a  convenience, when you run yum clean all, a recursive lookup will
1065       be done to detect  any  repositories  not  cleaned  due  to  the  above
1066       restrictions.  If some are found, a message will be printed stating how
1067       much disk space they occupy and thus how much you can reclaim by clean‐
1068       ing them.  If you also supply --verbose, a more detailed breakdown will
1069       be printed.
1070
1071
1072       yum clean expire-cache
1073              Eliminate the local data  saying  when  the  metadata  and  mir‐
1074              rorlists  were  downloaded  for  each  repo. This means yum will
1075              revalidate the cache for each repo. next time it is  used.  How‐
1076              ever  if  the  cache  is  still  valid,  nothing significant was
1077              deleted.
1078
1079
1080       yum clean packages
1081              Eliminate any cached packages from the system.  Note that  pack‐
1082              ages are not automatically deleted after they are downloaded.
1083
1084
1085       yum clean headers
1086              Eliminate  all  of  the  header files, which old versions of yum
1087              used for dependency resolution.
1088
1089
1090       yum clean metadata
1091              Eliminate all of the files  which  yum  uses  to  determine  the
1092              remote  availability  of  packages. Using this option will force
1093              yum to download all the metadata the next time it is run.
1094
1095
1096       yum clean dbcache
1097              Eliminate the sqlite cache used for faster access  to  metadata.
1098              Using this option will force yum to download the sqlite metadata
1099              the next time it is run, or  recreate  the  sqlite  metadata  if
1100              using an older repo.
1101
1102
1103       yum clean rpmdb
1104              Eliminate any cached data from the local rpmdb.
1105
1106
1107       yum clean plugins
1108              Tell any enabled plugins to eliminate their cached data.
1109
1110
1111       yum clean all
1112              Does all of the above.
1113
1114

EXAMPLES

1116       To  list  all updates that are security relevant, and get a return code
1117       on whether there are security updates use:
1118
1119              yum --security check-update
1120
1121       To upgrade packages that have security errata (upgrades to  the  latest
1122       available package) use:
1123
1124              yum --security update
1125
1126       To  upgrade  packages  that  have security errata (upgrades to the last
1127       security errata package) use:
1128
1129              yum --security update-minimal
1130
1131       To get a list of all BZs that are fixed for packages you have installed
1132       use:
1133
1134              yum updateinfo list bugzillas
1135
1136       To  get  a list of all security advisories, including the ones you have
1137       already installed use:
1138
1139              yum updateinfo list all security
1140
1141       To get the information on advisory FEDORA-2707-4567 use:
1142
1143              yum updateinfo info FEDORA-2707-4567
1144
1145       For Red Hat advisories, respin suffixes are also accepted  in  the  ID,
1146       although  they  won't  have any effect on the actual respin selected by
1147       yum, as it will always select the latest one available.   For  example,
1148       if you use:
1149
1150              yum updateinfo info RHSA-2016:1234-2
1151
1152       while  RHSA-2016:1234-3  has  been shipped already, yum will select the
1153       latter (provided your updateinfo.xml is current).  The same would  hap‐
1154       pen  if  you just specified RHSA-2016:1234.  That said, there's no need
1155       for you to specify or care about the suffix at all.
1156
1157       To update packages to  the  latest  version  which  contain  fixes  for
1158       Bugzillas 123, 456 and 789; and all security updates use:
1159
1160              yum --bz 123 --bz 456 --bz 789 --security update
1161
1162       To update to the packages which just update Bugzillas 123, 456 and 789;
1163       and all security updates use:
1164
1165              yum --bz 123 --bz 456 --bz 789 --security update-minimal
1166
1167       To get an info list of the latest  packages  which  contain  fixes  for
1168       Bugzilla  123;  CVEs  CVE-2207-0123 and CVE-2207-3210; and Fedora advi‐
1169       sories FEDORA-2707-4567 and FEDORA-2707-7654 use:
1170
1171              yum --bz 123 --cve CVE-2207-0123 --cve CVE-2207-3210  --advisory
1172              FEDORA-2707-4567 --advisory FEDORA-2707-7654 info updates
1173
1174       To get a list of packages which are "new".
1175
1176              yum updateinfo list new
1177
1178       To get a summary of advisories you haven't installed yet use:
1179
1180              yum updateinfo summary
1181
1182
1183

PLUGINS

1185       Yum  can  be  extended through the use of plugins. A plugin is a Python
1186       ".py" file which is installed in one of the  directories  specified  by
1187       the  pluginpath option in yum.conf. For a plugin to work, the following
1188       conditions must be met:
1189
1190       1. The plugin module file must be installed in the plugin path as  just
1191       described.
1192
1193       2. The global plugins option in /etc/yum.conf must be set to `1'.
1194
1195       3.  A  configuration file for the plugin must exist in /etc/yum/plugin‐
1196       conf.d/<plugin_name>.conf and the enabled setting in this file must set
1197       to `1'. The minimal content for such a configuration file is:
1198
1199              [main]
1200              enabled = 1
1201
1202       See  the  yum.conf(5)  man  page for more information on plugin related
1203       configuration options.
1204
1205

FILES

1207       /etc/yum.conf
1208       /etc/yum/version-groups.conf
1209       /etc/yum.repos.d/
1210       /etc/yum/pluginconf.d/
1211       /var/cache/yum/
1212
1213

SEE ALSO

1215       pkcon (1)
1216       yum.conf (5)
1217       yum-updatesd (8)
1218       package-cleanup (1)
1219       repoquery (1)
1220       yum-complete-transaction (1)
1221       yumdownloader (1)
1222       yum-utils (1)
1223       yum-langpacks (1)
1224       http://yum.baseurl.org/
1225       http://yum.baseurl.org/wiki/Faq
1226       yum search yum
1227
1228

AUTHORS

1230       See the Authors file included with this program.
1231
1232

BUGS

1234       There of course aren't any bugs, but if you find any, you should  first
1235       consult  the  FAQ  mentioned  above  and  then  email the mailing list:
1236       yum@lists.baseurl.org or filed in bugzilla.
1237
1238
1239
1240Seth Vidal                                                              yum(8)
Impressum