forked from rpm-software-management/yum
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathyum.8
More file actions
1216 lines (1071 loc) · 48.3 KB
/
Copy pathyum.8
File metadata and controls
1216 lines (1071 loc) · 48.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
.\" yum - Yellowdog Updater Modified
.TH "yum" "8" "" "Seth Vidal" ""
.SH "NAME"
yum \- Yellowdog Updater Modified
.SH "SYNOPSIS"
\fByum\fP [options] COMMAND [package ...]
.SH "DESCRIPTION"
.PP
\fByum\fP is an interactive, rpm based, package manager. It can automatically
perform system updates, including dependency analysis and obsolete processing
based on "repository" metadata. It can also perform installation of new
packages, removal of old packages and perform queries on the installed and/or
available packages among many other commands/services (see below)\&. \fByum\fP
is similar to other high level package managers like apt\-get and smart\&.
.PP
While there are some graphical interfaces directly to the \fByum\fP code, more
recent graphical interface development is happening with PackageKit and the
gnome\-packagekit application\&.
.PP
\fIcommand\fP is one of:
.br
.I \fR * install package1 [package2] [\&.\&.\&.]
.br
.I \fR * update [package1] [package2] [\&.\&.\&.]
.br
.I \fR * update-to [package1] [package2] [\&.\&.\&.]
.br
.I \fR * update-minimal [package1] [package2] [\&.\&.\&.]
.br
.I \fR * check\-update
.br
.I \fR * upgrade [package1] [package2] [\&.\&.\&.]
.br
.I \fR * upgrade-to [package1] [package2] [\&.\&.\&.]
.br
.I \fR * distribution-synchronization [package1] [package2] [\&.\&.\&.]
.br
.I \fR * remove | erase package1 [package2] [\&.\&.\&.]
.br
.I \fR * autoremove [package1] [\&.\&.\&.]
.br
.I \fR * list [\&.\&.\&.]
.br
.I \fR * info [\&.\&.\&.]
.br
.I \fR * provides | whatprovides feature1 [feature2] [\&.\&.\&.]
.br
.I \fR * clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]
.br
.I \fR * makecache [fast]
.br
.I \fR * groups [\&.\&.\&.]
.br
.I \fR * search string1 [string2] [\&.\&.\&.]
.br
.I \fR * shell [filename]
.br
.I \fR * resolvedep dep1 [dep2] [\&.\&.\&.]
(maintained for legacy reasons only - use repoquery or yum provides)
.br
.I \fR * localinstall rpmfile1 [rpmfile2] [\&.\&.\&.]
(maintained for legacy reasons only - use install)
.br
.I \fR * localupdate rpmfile1 [rpmfile2] [\&.\&.\&.]
(maintained for legacy reasons only - use update)
.br
.I \fR * reinstall package1 [package2] [\&.\&.\&.]
.br
.I \fR * downgrade package1 [package2] [\&.\&.\&.]
.br
.I \fR * deplist package1 [package2] [\&.\&.\&.]
.br
.I \fR * repolist [all|enabled|disabled]
.br
.I \fR * repoinfo [all|enabled|disabled]
.br
.I \fR * repository-packages <enabled-repoid> <install|remove|remove-or-reinstall|remove-or-distribution-synchronization> [package2] [\&.\&.\&.]
.br
.I \fR * version [ all | installed | available | group-* | nogroups* | grouplist | groupinfo ]
.br
.I \fR * history [info|list|packages-list|packages-info|summary|addon-info|redo|undo|rollback|new|sync|stats]
.br
.I \fR * load-transaction [txfile]
.br
.I \fR * updateinfo [summary | list | info | remove-pkgs-ts | exclude-updates | exclude-all | check-running-kernel]
.br
.I \fR * fssnapshot [summary | list | have-space | create | delete]
.br
.I \fR * fs [filters | refilter | refilter-cleanup | du]
.br
.I \fR * check
.br
.I \fR * help [command]
.br
.PP
Unless the \-\-help or \-h option is given, one of the above commands
must be present\&.
.PP
Repository configuration is honored in all operations.
.PP
.IP "\fBinstall\fP"
Is used to install the latest version of a package or
group of packages while ensuring that all dependencies are
satisfied\&. (See \fBSpecifying package names\fP for more information)
If no package matches the given package name(s), they are assumed to be a shell
glob and any matches are then installed\&. If the name starts with @^ then it
is treated as an environment group (group install @^foo), an @ character and
it's treated as a group (plain group install)\&.
If the name starts with a "-" character, then a search is done within the
transaction and any matches are removed. Note that Yum options use the same
syntax and it may be necessary to use "--" to resolve any possible conflicts.
If the name is a file, then install works
like localinstall\&. If the name doesn't match a package, then package
"provides" are searched (e.g. "_sqlitecache.so()(64bit)") as are
filelists (Eg. "/usr/bin/yum"). Also note that for filelists, wildcards will
match multiple packages\&.
Because install does a lot of work to make it as easy as possible to use, there
are also a few specific install commands "\fBinstall-n\fP", "\fBinstall-na\fP"
and "\fBinstall-nevra\fP". These only work on package names, and do not process
wildcards etc.
.IP
.IP "\fBupdate\fP"
If run without any packages, update will update every currently
installed package. If one or more packages or package globs are specified, Yum will
only update the listed packages\&. While updating packages, \fByum\fP
will ensure that all dependencies are satisfied\&. (See \fBSpecifying package names\fP for more information)
If the packages or globs specified match to packages which are not currently installed then update will
not install them\&. update operates on groups, files, provides and filelists
just like the "install" command\&.
If the main obsoletes configure option is true (default) or the \-\-obsoletes
flag is present \fByum\fP will include package
obsoletes in its calculations - this makes it better for distro\-version
changes, for example: upgrading from somelinux 8.0 to somelinux 9.
Note that "\fBupdate\fP" works on installed packages first, and only if there
are no matches does it look for available packages. The difference is most
noticeable when you do "\fBupdate\fP foo-1-2" which will act exactly as
"\fBupdate\fP foo" if foo-1-2 is installed. You can use the "\fBupdate-to\fP"
if you'd prefer that nothing happen in the above case.
.IP
.IP "\fBupdate-to\fP"
This command works like "\fBupdate\fP" but always specifies the version of the
package we want to update to.
.IP
.IP "\fBupdate-minimal\fP"
This works like the update command, but if you have the package foo-1
installed and have foo-2 (bugfix) and foo-3 (enhancement) available with
updateinfo.xml then update-minimal --bugfix will update you to foo-2.
.IP
.IP "\fBcheck\-update\fP"
Implemented so you could know if your machine had any updates that needed to
be applied without running it interactively. Returns exit value of 100 if
there are packages available for an update. Also returns a list of the packages
to be updated in list format. Returns 0 if no packages are available for
update. Returns 1 if an error occurred.
Running in verbose mode also shows obsoletes.
.IP
.IP "\fBupgrade\fP"
Is the same as the update command with the \-\-obsoletes flag set. See update
for more details.
.IP
.IP "\fBupgrade-to\fP"
This command works like "\fBupgrade\fP" but always specifies the version of the
package we want to update to.
.IP
.IP "\fBdistribution\-synchronization\fP or \fBdistro\-sync\fP"
Synchronizes the installed package set with the latest packages available, this
is done by either obsoleting, upgrading or downgrading as appropriate. This will
"normally" do the same thing as the upgrade command however if you have the
package FOO installed at version 4, and the latest available is only
version 3, then this command will \fBdowngrade\fP FOO to version 3.
If you give the optional argument "full", then the command will also reinstall
packages where the install checksum and the available checksum do not match. And
remove old packages (can be used to sync. rpmdb versions). The optional argument
"different" can be used to specify the default operation.
This command does not perform operations on groups, local packages or negative
selections.
.IP
.IP "\fBremove\fP or \fBerase\fP"
Are used to remove the specified packages from the system
as well as removing any packages which depend on the package being
removed\&. remove operates on groups, files, provides and filelists just like
the "install" command\&.(See \fBSpecifying package names\fP for more information)
Note that "yum" is included in the protected_packages configuration, by default.
So you can't accidentally remove yum itself.
The remove_leaf_only configuration changes the behaviour of this command
to only remove packages which aren't required by something else.
The clean_requirements_on_remove configuration changes the behaviour of this
command to also remove packages that are only dependencies of this package.
Because remove does a lot of work to make it as easy as possible to use, there
are also a few specific remove commands "\fBremove-n\fP", "\fBremove-na\fP"
and "\fBremove-nevra\fP". These only work on package names, and do not process
wildcards etc.
.IP
.IP "\fBautoremove\fP"
.IP
With one or more arguments this command works like running the "\fBremove\fP"
command with the clean_requirements_on_remove turned on. However you can also
specify no arguments, at which point it tries to remove any packages that
weren't installed explicitly by the user and which aren't required by
anything (so called leaf packages).
Because autoremove does a lot of work to make it as easy as possible to use,
there are also a few specific autoremove commands "\fBautoremove-n\fP",
"\fBautoremove-na\fP" and "\fBautoremove-nevra\fP". These only work on package
names, and do not process wildcards etc.
.IP "\fBlist\fP"
Is used to list various information about available
packages; more complete details are available in the \fIList Options\fP
section below\&.
.IP
.IP "\fBprovides\fP or \fBwhatprovides\fP"
Is used to find out which package provides some feature
or file. Just use a specific name or a file-glob-syntax wildcards to list
the packages available or installed that provide that feature or file\&.
.IP
.IP "\fBsearch\fP"
This is used to find packages when you know something about the package but
aren't sure of it's name. By default search will try searching just package
names and summaries, but if that "fails" it will then try descriptions and url.
Yum search orders the results so that those packages matching more terms will
appear first.
You can force searching everything by specifying "all" as the first argument.
.IP
.IP "\fBinfo\fP"
Is used to list a description and summary information about available
packages; takes the same arguments as in the \fIList Options\fP
section below\&.
.IP
.IP "\fBclean\fP"
Is used to clean up various things which accumulate in the
\fByum\fP cache directory over time. More complete details can be found in
the \fIClean Options\fP section below\&.
.IP
.IP "\fBmakecache\fP"
Is used to download and make usable all the metadata for the currently enabled
\fByum\fP repos. If the argument "fast" is passed, then we just try to make
sure the repos are current (much like "yum clean expire-cache").
.IP
.IP "\fBgroups\fP"
A command, new in 3.4.2, that collects all the subcommands that act on groups
together. Note that recent yum using distributions (Fedora-19+, RHEL-7+) have
configured group_command=objects which changes how group commands act in some
important ways.
"\fBgroup install\fP" is used to install all of the individual packages in a
group, of the specified types (this works as if you'd taken each of those
package names and put them on the command line for a "yum install" command).
The group_package_types configuration option specifies which types will
be installed.
If you wish to "reinstall" a group so that you get a package that is currently
blacklisted the easiest way to do that currently is to install the package
manually and then run "groups mark packages-sync mygroup mypackagename" (or
use yumdb to set the group_member of the package(s)).
"\fBgroup update\fP" is just an alias for group install, when using
group_command=compat. This will install packages in the group not already
installed and upgrade existing packages. With group_command=simple it will just
upgrade already installed packages. With group_command=objects it will try to
upgrade the group object, installing any available packages not blacklisted
(marked '-' in group info) and will upgrade the installed packages.
"\fBgroup list\fP" is used to list the available groups from all \fByum\fP
repos. When group_command=objects the group is installed if the user
explicitly installed it (or used the group mark* commands to mark it installed).
It does not need to have any packages installed.
When not using group_command=objects groups are shown as "installed" if all
mandatory packages are installed, or if a group doesn't
have any mandatory packages then it is installed if any of the optional or
default package are installed (when not in group_command=objects mode).
You can pass optional arguments to the list/summary commands: installed,
available, environment, language, packages, hidden and ids (or any of those
prefixed by "no" to turn them off again).
Note that groups that are available but hidden will not be listed unless
\'hidden\' keyword is passed to the command.
If you pass the \-v option, to enable verbose mode, then the groupids are
displayed by default (but "yum group list ids" is often easier to read).
"\fBgroup remove\fP" is used to remove all of the packages in a group, unlike "groupinstall" this
will remove everything regardless of group_package_types. It is worth pointing
out that packages can be in more than one group, so "group install X Y" followed
by "group remove Y" does not do give you the same result as "group install X".
The groupremove_leaf_only configuration changes the behaviour of this command
to only remove packages which aren't required by something else.
"\fBgroup info\fP" is used to give the description and package list of a group (and which type
those packages are marked as). Note that you can use the yum-filter-data and
yum-list-data plugins to get/use the data the other way around (i.e. what
groups own packages need updating). If you pass the \-v option, to enable verbose
mode, then the package names are matched against installed/available packages
similar to the list command.
When using group_command=objects, the info command will display markers next
to each package saying how that package relates to the group object. The
meaning of these markers is:
.br
"-" = Package isn't installed, and won't be installed as part of the group (Eg. "yum group install foo -pkgA" or "yum group install foo; yum remove pkgA" … this will have pkgA marked as '-')
.br
"+" = Package isn't installed, but will be the next time you run "yum upgrade" or "yum group upgrade foo"
.br
" " = Package is installed, but wasn't installed via the group (so "group remove foo" won't remove it).
.br
"=" = Package is installed, and was installed via the group.
you can move an installed package into an installed group using either
"group mark package-sync/package-sync-forced" or "yumdb set group_member".
"\fBgroup summary\fP" is used to give a quick summary of how many groups
are installed and available.
"\fBgroup mark\fP" and "\fBgroup unmark\fP" are used when groups are configured
in group_command=objects mode. These commands then allow you to alter yum's idea
of which groups are installed, and the packages that belong to them.
"\fBgroup mark install\fP" mark the group as installed. When
installed "\fByum upgrade\fP" and "\fByum group upgrade\fP" will install new
packages for the group (only those packages already installed will be marked as
members of the installed group to start with).
"\fBgroup mark remove\fP" the opposite of mark install.
"\fBgroup mark packages\fP" takes a group id (which must be installed) and marks
any given installed packages (which aren't members of a group) as members of
the group. Note that the data from the repositories does not need to specify
the packages as a member of the group.
"\fBgroup mark packages-force\fP" works like mark packages, but doesn't care if
the packages are already members of another group.
"\fBgroup mark blacklist\fP" will blacklist all packages marked to be installed
for a group. After this command a "yum group upgrade" will not install any new
packages as part of the group.
"\fBgroup mark convert-blacklist\fP"
"\fBgroup mark convert-whitelist\fP"
"\fBgroup mark convert\fP" converts the automatic data you get
without using groups as objects into groups as objects data, in other words
this will make "yum --setopt=group_command=objects groups list" look as similar
as possible to the current output of
"yum --setopt=group_command=simple groups list". This makes it much
easier to convert to groups as objects without having to reinstall. For groups
that are installed the whitelist variant will mark all uninstalled packages for
the group as to be installed on the next "yum group upgrade", the blacklist
variant (current default) will mark them all as blacklisted.
"\fBgroup unmark packages\fP" remove a package as a member from any groups.
.IP
.IP "\fBshell\fP"
Is used to enter the 'yum shell', when a filename is specified the contents of
that file is executed in yum shell mode. See \fIyum-shell(8)\fP for more info.
.IP
.IP "\fBresolvedep\fP"
Is used to list packages providing the specified dependencies, at most one
package is listed per dependency. This command is maintained for legacy
reasons only, use repoquery instead.
.IP
.IP "\fBlocalinstall\fP"
Is used to install a set of local rpm files. If required the enabled
repositories will be used to resolve dependencies. Note that the install command
will do a local install, if given a filename. This command is maintained for legacy
reasons only.
.IP
.IP "\fBlocalupdate\fP"
Is used to update the system by specifying local rpm files. Only the specified
rpm files of which an older version is already installed will be installed,
the remaining specified packages will be ignored.
If required the enabled repositories will be used to resolve dependencies. Note
that the update command will do a local update, if given a filename. This command is maintained for
legacy reasons only.
.IP
.IP "\fBreinstall\fP"
Will reinstall the identically versioned package as is currently installed.
This does not work for "installonly" packages, like Kernels. reinstall operates
on groups, files, provides and filelists just like the "install" command\&.
.IP
.IP "\fBdowngrade\fP"
Will try and downgrade a package from the version currently installed to the
previously highest version (or the specified version).
The depsolver will not necessarily work, but if you specify all the packages it
should work (thus, all the simple cases will work). Also this does not
work for "installonly" packages, like Kernels. downgrade operates
on groups, files, provides, filelists and rpm files just like the "install" command\&.
.IP
.IP "\fBswap\fP"
At it's simplest this is just a simpler way to remove one set of package(s) and
install another set of package(s) without having to use the "shell" command.
However you can specify different commands to call than just remove or install,
and you can list multiple packages (it splits using the "--" marker).
Note that option parsing will remove the first "--" in an argument list on the
command line.
Examples:
.nf
swap foo bar
swap -- remove foo -- install bar
swap foo group install bar-grp
swap -- group remove foo-grp -- group install bar-grp
.fi
.IP
.IP "\fBdeplist\fP"
Produces a list of all dependencies and what packages provide those
dependencies for the given packages. As of 3.2.30 it now just shows the latest
version of each package that matches (this can be changed by
using --showduplicates) and it only shows the newest providers (which can be
changed by using --verbose).
.IP
.IP "\fBrepolist\fP"
Produces a list of configured repositories. The default is to list all
enabled repositories. If you pass \-v, for verbose mode, or use repoinfo then
more information is listed. If the first argument is \'enabled\', \'disabled\'
or \'all\' then the command will list those types of repos.
You can pass repo id or name arguments, or wildcards which to match against
both of those. However if the id or name matches exactly then the repo will
be listed even if you are listing enabled repos and it is disabled.
In non-verbose mode the first column will start with a \'*\' if the repo. has
metalink data and the latest metadata is not local and will start with a
\'!\' if the repo. has metadata that is expired (this can happen due to
metadata_expire_filter). For non-verbose mode the
last column will also display the number of packages in the repo. and (if there
are any user specified excludes) the number of packages excluded.
One last special feature of repolist, is that if you are in non-verbose mode
then yum will ignore any repo errors and output the information it can get
(Eg. "yum clean all; yum -C repolist" will output something, although the
package counts/etc. will be zeroed out).
.IP
.IP "\fBrepoinfo\fP"
.IP
This command works exactly like repolist -v.
.IP
.IP "\fBrepository\-packages\fP"
Treat a repo. as a collection of packages (like "yum groups") allowing the user
to install or remove them as a single entity.
"repository\-packages <repo> list" - Works like the "yum list" command, but
only shows packages from the given repository.
"repository\-packages <repo> info" - Works like the "yum info" command, but
only shows packages from the given repository.
"repository\-packages <repo> check-update" - Works like the
"yum check-update" command, but only shows packages from the given repository.
"repository\-packages <repo> install" - Install all of the packages in the
repository, basically the same as: yum install $(repoquery --repoid=<repo> -a).
Specific packages/wildcards can be specified.
"repository\-packages <repo> upgrade" - Update all of the packages in the
repository, basically the same as: yum upgrade $(repoquery --repoid=<repo> -a).
Specific packages/wildcards can be specified.
"repository\-packages <repo> upgrade-to" - Update all of the packages in the
repository, basically the same as: yum upgrade $(repoquery --repoid=<repo> -a).
Without arguments it works the same as upgrade, with arguments it just
interprets them as the versions you want to move to.
"repository\-packages <repo> reinstall-old" - ReInstall all of the packages
that are installed from the repository and available in the
repository, similar to: yum reinstall $(yumdb search-quiet from_repo <repo>).
"repository\-packages <repo> move-to" - ReInstall all of the packages
that are available in the repository, basically the same as:
yum reinstall $(repoquery --repoid=<repo> -a).
"repository\-packages <repo> reinstall" - Tries to do reinstall-old, but if that
produces no packages then tries move-to.
"repo\-pkgs <repo> remove" - Remove all of the packages in the repository, very
similar to: yum remove $(repoquery --repoid=<repo> -a). However the
repopkgsremove_leaf_only option is obeyed.
"repo\-pkgs <repo> remove-or-reinstall" - Works like remove for any package
that doesn't have the exact same version in another repository. For any package
that does have the exact NEVRA in another repository then that version will be
reinstalled.
"repo\-pkgs <repo> remove-or-distro-sync" - Works like remove for any package
that doesn't exist in another repository. For any package that does exist
it tries to work as if distro-sync was called (with the repo. disabled).
.IP
.IP "\fBversion\fP"
Produces a "version" of the rpmdb, and of the enabled repositories if "all" is
given as the first argument. You can also specify version groups in the
version-groups configuration file. If you pass \-v, for verbose mode, more
information is listed. The version is calculated by taking an SHA1 hash of the
packages (in sorted order), and the checksum_type/checksum_data entries from
the yumdb. Note that this rpmdb version is now also used significantly within
yum (esp. in yum history).
The version command will now show "groups" of packages as a separate version,
and so takes sub-commands:
"version grouplist" - List the defined version groups.
"version groupinfo" - Get the complete list of packages within one or more version groups.
"version installed" - This is the default, only show the version information for installed packages.
"version available" - Only show the version information for available packages.
"version all" - Show the version information for installed and available packages.
"version nogroups | nogroups-*" - Just show the main version information.
"version group-*" - Just show the grouped version information, if more arguments are given then only show the data for those groups.
.IP
.IP "\fBhistory\fP"
The history command allows the user to view what has happened in past
transactions (assuming the history_record config. option is set). You can use
info/list/packages-list/packages-info/summary to view what happened,
undo/redo/rollback to act on that information and new to start a new history
file.
The info/list/summary commands take either a transaction id or a package (with
wildcards, as in \fBSpecifying package names\fP), all three can also be passed
no arguments. list can be passed the keyword "all" to list all the transactions.
The info command can also take ranges of transaction ids, of the form start..end,
which will then display a merged history as if all the transactions in the range
had happened at once\&.
.br
Eg. "history info 1..4" will merge the first four transactions and display them
as a single transaction.
The packages-list/packages-info commands takes a package (with wildcards, as in
\fBSpecifying package names\fP). And show data from the point of view of that
package.
The undo/redo/rollback commands take either a single transaction id or the
keyword last and an offset from the last transaction (Eg. if you've done 250
transactions, "last" refers to transaction 250, and "last-4" refers to
transaction 246).
The redo command can also take some optional arguments before you specify the
transaction. "force-reinstall" tells it reinstall any packages that were
installed in that transaction (via install, upgrade or downgrade).
"force-remove" tells it to forcibly remove any packages that were updated or
downgraded.
The undo/redo commands act on the specified transaction, undo'ing or repeating
the work of that transaction. While the rollback command will undo all
transactions up to the point of the specified transaction. For example, if you
have 3 transactions, where package A; B and C where installed respectively.
Then "undo 1" will try to remove package A, "redo 1" will try to install package
A (if it is not still installed), and "rollback 1" will try to remove packages
B and C. Note that after a "rollback 1" you will have a fourth transaction,
although the ending rpmdb version (see: yum version) should be the same in
transactions 1 and 4.
The addon-info command takes a transaction ID, and the packages-list command
takes a package (with wildcards).
The stats command shows some statistics about the current history DB.
The sync commands allows you to change the rpmdb/yumdb data stored for any
installed packages, to whatever is in the current rpmdb/yumdb (this is mostly
useful when this data was not stored when the package went into the history DB).
In "history list" you can change the behaviour of the 2nd column via the
configuration option history_list_view.
In "history list" output the Altered column also gives some extra information
if there was something not good with the transaction (this is also shown at the
end of the package column in the packages-list command).
.br
.I \fB>\fR - The rpmdb was changed, outside yum, after the transaction.
.br
.I \fB<\fR - The rpmdb was changed, outside yum, before the transaction.
.br
.I \fB*\fR - The transaction aborted before completion.
.br
.I \fB#\fR - The transaction completed, but with a non-zero status.
.br
.I \fBE\fR - The transaction completed fine, but had warning/error output during the transaction.
.br
.I \fBP\fR - The transaction completed fine, but problems already existed in the rpmdb.
.br
.I \fBs\fR - The transaction completed fine, but --skip-broken was enabled and had to skip some packages.
.br
.IP
.IP "\fBload-transaction\fP"
This command will re-load a saved yum transaction file, this allows you to
run a transaction on one machine and then use it on another.
The two common ways to get a saved yum transaction file are from
"yum -q history addon-info last saved_tx" or via the automatic saves in
$TMPDIR/yum_save_tx.* when a transaction is solved but not run.
Running the command without an argument, or a directory as an argument will
try and list the possible files available to load. Showing if the packages are
still available, if the rpmdb matches the current rpmdb, how many transaction
install/removes members are in the saved transaction and what the filename is.
.IP
.IP "\fBupdateinfo\fP"
This command has a bunch of sub-commands to act on the updateinfo in the
repositories. The simplest commands are:
.br
.I \fR yum updateinfo info [all | available | installed | updates]
.br
.I \fR yum updateinfo list [all | available | installed | updates]
.br
.I \fR yum updateinfo [summary] [all | available | installed | updates]
.br
which all display information about the available update information relevant
to your machine (including anything installed, if you supply "all").
.br
.br
.I \fR "\fB* updates\fP"
Is used to display information about advisories for packages that can be
updated. This is the default.
.br
.I \fR "\fB* installed\fP"
Is used to display information only about installed advisories.
.br
.I \fR "\fB* available\fP"
Is used to display information about advisories for packages available
for updating or installation.
.br
.I \fR "\fB* all\fP"
Is used to display information about both installed and available advisories.
.br
They all take as arguments:
.br
.br
.I \fR "\fB* <advisory> [advisory...]\fP"
Is used to display information about one or more advisories.
.br
.I \fR "\fB* <package> [package...]\fP"
Is used to display information about one or more packages.
.br
.I \fR "\fB* bugzillas / bzs\fP"
Is the subset of the updateinfo information, pertaining to the bugzillas.
.br
.I \fR "\fB* cves\fP"
Is the subset of the updateinfo information, pertaining to the CVEs.
.br
.I \fR "\fB* enhancement\fP"
Is the subset of the updateinfo information, pertaining to enhancements.
.br
.I \fR "\fB* bugfix\fP"
Is the subset of the updateinfo information, pertaining to bugfixes.
.br
.I \fR "\fB* security / sec\fP"
Is the subset of the updateinfo information, pertaining to security.
.br
.I \fR "\fB* severity / sev\fP"
Include security relevant packages of this severity.
.br
.I \fR "\fB* recommended\fP"
Is the subset of the updateinfo information, pertaining to recommended updates.
.br
.I \fR "\fB* new-packages\fP"
Is the subset of the updateinfo information, pertaining to new packages. These
are packages which weren't available at the initial release of your
distribution.
.br
There are also three sub-commands to remove packages when using "yum shell",
they are:
.br
.I \fR yum updateinfo remove-pkgs-ts
.br
.I \fR yum updateinfo exclude-updates
.br
.I \fR yum updateinfo exclude-all
.br
they all take the following arguments:
.br
.I \fR* [bzs=foo] [advisories=foo] [cves=foo] [security-severity=foo] [security] [bugfix]
.br
and finally there is a command to manually check the running kernel against
updateinfo data:
.br
.I \fR yum updateinfo check-running-kernel
.br
.IP
.IP "\fBfssnapshot\fP or \fBfssnap\fP"
This command has a few sub-commands to act on the LVM data of the host, to list
snapshots and to create and remove them. The simplest commands, to display
information about the configured LVM snapshotable devices, are:
.br
.I \fR yum fssnapshot [summary]
.br
.I \fR yum fssnapshot list
.br
.I \fR yum fssnapshot have-space
.br
then you can create and delete snapshots using:
.br
.I \fR yum fssnapshot create
.br
.I \fR yum fssnapshot delete <device(s)>
.br
.br
Configuration Options: \fBfssnap_automatic_pre\fP, \fBfssnap_automatic_post\fP, \fBfssnap_automatic_keep\fP, \fBfssnap_percentage\fP, \fBfssnap_devices\fP, \fBfssnap_abort_on_errors\fP
.IP
.IP "\fBfs\fP"
This command has a few sub-commands to act on the filesystem data of the host,
mainly for removing languages/documentation for minimal installs:
.br
.I \fR yum fs filters
.br
.I \fR yum fs filter languages en:es
.br
.I \fR yum fs filter documentation
.br
.I \fR yum fs refilter [package(s)]
.br
.I \fR yum fs refilter-cleanup [package(s)]
.br
.I \fR yum fs du [path]
.br
.I \fR yum fs status [path]
.br
.I \fR yum fs diff [path]
the first 3 being a simple interface to change yum.conf altering the tsflags
and override_install_langs configurations. The refilter command is an optimized
way of calling "yum reinstall" to reinstall the packages with the new filters
applied. The refilter-cleanup command is needed because rpm doesn't actually
remove the files on reinstall, as it should. And the du/status/diff commands are
included so you can easily see the space used/saved and any other changes.
.IP
.IP "\fBcheck\fP"
Checks the local rpmdb and produces information on any problems it finds. You
can pass the check command the arguments "dependencies", "duplicates", "obsoleted" or "provides",
to limit the checking that is performed (the default is "all" which does all).
.IP
.IP "\fBhelp\fP"
Produces help, either for all commands or if given a command name then the help
for that particular command\&.
.IP
.PP
.SH "GENERAL OPTIONS"
Most command line options can be set using the configuration file as
well and the descriptions indicate the necessary configuration option
to set\&.
.PP
.IP "\fB\-h, \-\-help\fP"
Help; display a help message and then quit\&.
.IP "\fB\-y, \-\-assumeyes\fP"
Assume yes; assume that the answer to any question which would be asked
is yes\&.
.br
Configuration Option: \fBassumeyes\fP
.IP "\fB\-\-assumeno\fP"
Assume no; assume that the answer to any question which would be asked
is no\&. This option overrides assumeyes, but is still subject to alwaysprompt.
.br
Configuration Option: \fBassumeno\fP
.IP "\fB\-c, \-\-config=[config file]\fP"
Specifies the config file location - can take HTTP and FTP URLs and local file
paths\&.
.br
.IP "\fB\-q, \-\-quiet\fP"
Run without output. Note that you likely also want to use \-y\&.
.br
.IP "\fB\-v, \-\-verbose\fP"
Run with a lot of debugging output\&.
.br
.IP "\fB\-d, \-\-debuglevel=[number]\fP"
Sets the debugging level to [number] \- turns up or down the amount of things that are printed\&. Practical range: 0 - 10
.br
Configuration Option: \fBdebuglevel\fP
.IP "\fB\-e, \-\-errorlevel=[number]\fP"
Sets the error level to [number] Practical range 0 \- 10. 0 means print only critical errors about which you must be told. 1 means print all errors, even ones that are not overly important. 1+ means print more errors (if any) \-e 0 is good for cron jobs.
.br
Configuration Option: \fBerrorlevel\fP
.IP "\fB\-\-rpmverbosity=[name]\fP"
Sets the debug level to [name] for rpm scriptlets. 'info' is the default, other
options are: 'critical', 'emergency', 'error', 'warn' and 'debug'.
.br
Configuration Option: \fBrpmverbosity\fP
.IP "\fB\-R, \-\-randomwait=[time in minutes]\fP"
Sets the maximum amount of time yum will wait before performing a command \- it randomizes over the time.
.IP "\fB\-C, \-\-cacheonly\fP"
Tells yum to run entirely from system cache; does not download or update
metadata.
When this is used by a non\-root user, yum will run entirely from user cache in
$TMPDIR.
This option doesn't stop yum from updating user cache from system cache locally
if the latter is newer (this is always done when running as a user).
.IP "\fB\-\-version\fP"
Reports the \fByum\fP version number and installed package versions for
everything in history_record_packages (can be added to by plugins).
.IP "\fB\-\-showduplicates\fP"
Doesn't limit packages to their latest versions in the info, list and search
commands (will also affect plugins which use the doPackageLists() API).
.IP "\fB\-\-installroot=root\fP"
Specifies an alternative installroot, relative to which all packages will be
installed. Think of this like doing "chroot <root> yum" except using
\-\-installroot allows yum to work before the chroot is created.
Note: You may also want to use the option \-\-releasever=/ when creating the
installroot as otherwise the $releasever value is taken from the rpmdb within
the installroot (and thus. will be empty, before creation).
.br
Configuration Option: \fBinstallroot\fP
.IP "\fB\-\-enablerepo=repoidglob\fP"
Enables specific repositories by id or glob that have been disabled in the
configuration file using the enabled=0 option.
.br
Configuration Option: \fBenabled\fP
.IP "\fB\-\-disablerepo=repoidglob\fP"
Disables specific repositories by id or glob.
.br
Configuration Option: \fBenabled\fP
.IP "\fB\-\-obsoletes\fP"
This option only has affect for an update, it enables \fByum\fP\'s obsoletes
processing logic. For more information see the \fBupdate\fP command above.
.br
Configuration Option: \fBobsoletes\fP
.IP "\fB\-x, \-\-exclude=package\fP"
Exclude a specific package by name or glob from all repositories, so yum works
as if that package was never in the repositories.
This is commonly used so a package isn't upgraded or installed accidentally, but
can be used to remove packages in any way that "yum list" will show packages.
Can be disabled using --disableexcludes.
Configuration Option: \fBexclude\fP, \fBincludepkgs\fP
.br
.IP "\fB\-\-color=[always|auto|never]\fP"
Display colorized output automatically, depending on the output terminal,
always (using ANSI codes) or never. Note that some commands (Eg. list and info)
will do a little extra work when color is enabled.
Configuration Option: \fBcolor\fP
.br
.IP "\fB\-\-disableexcludes=[all|main|repoid]\fP"
Disable the excludes defined in your config files. Takes one of three options:
.br
all == disable all excludes
.br
main == disable excludes defined in [main] in yum.conf
.br
repoid == disable excludes defined for that repo
.br
.IP "\fB\-\-disableincludes=[all|repoid]\fP"
Disable the includes defined in your config files. Takes one of two options:
.br
all == disable all includes
.br
repoid == disable includes defined for that repo
.br
.IP "\fB\-\-disableplugin=plugin\fP"
Run with one or more plugins disabled, the argument is a comma separated list
of wildcards to match against plugin names.
.br
.IP "\fB\-\-noplugins\fP"
Run with all plugins disabled.
.br
Configuration Option: \fBplugins\fP
.IP "\fB\-\-nogpgcheck\fP"
Run with GPG signature checking disabled.
.br
Configuration Option: \fBgpgcheck\fP
.IP "\fB\-\-skip\-broken\fP"
Resolve depsolve problems by removing packages that are causing problems
from the transaction.
.br
Configuration Option: \fBskip_broken\fP
.br
.IP "\fB\-\-releasever=version\fP"
Pretend the current release version is the given string. This is very useful
when combined with \-\-installroot. You can also use \-\-releasever=/ to take
the releasever information from outside the installroot.
Note that with the default upstream cachedir, of /var/cache/yum, using this
option will corrupt your cache (and you can use $releasever in your cachedir
configuration to stop this).
.PP
.IP "\fB\-t, \-\-tolerant\fP"
This option makes yum go slower, checking for things that shouldn't be possible
making it more tolerant of external errors.
.br
.IP "\fB\-\-downloadonly\fP"
Don't update, just download. This is done in the background, so the yum lock is released for other operations. This can also be chosen by typing 'd'ownloadonly
at the transaction confirmation prompt.
.br
.IP "\fB\-\-downloaddir=directory\fP"
Specifies an alternate directory to store packages.
.br
.IP "\fB\-\-setopt=option=value\fP"
Set any config option in yum config or repo files. For options in the global
config just use: \-\-setopt=option=value for repo options use: \-\-setopt=repoid.option=value
.PP
.IP "\fB\-\-security\fP"
This option includes packages that say they fix a security issue, in updates.
.br
.IP "\fB\--advisory=ADVS, --advisories=ADVS\fP"
This option includes in updates packages corresponding to the advisory ID, Eg. FEDORA-2201-123.
.IP "\fB\--bz=BZS\fP"
This option includes in updates packages that say they fix a Bugzilla ID, Eg. 123.
.IP "\fB\--cve=CVES\fP"
This option includes in updates packages that say they fix a CVE - Common Vulnerabilities and Exposures ID (http://cve.mitre.org/about/), Eg. CVE-2201-0123.
.IP "\fB\--bugfix\fP"
This option includes in updates packages that say they fix a bugfix issue.
.IP "\fB\--sec-severity=SEVS, --secseverity=SEVS\fP"
This option includes in updates security relevant packages of the specified severity.
.SH "LIST OPTIONS"
The following are the ways which you can invoke \fByum\fP in list
mode\&. Note that all \fBlist\fP commands include information on the
version of the package\&.
.IP
.IP "\fBOUTPUT\fP"
The format of the output of yum list is:
name.arch [epoch:]version-release repo or @installed-from-repo
Note that if the repo cannot be determined, "installed" is printed instead.
.IP "\fByum list [all | glob_exp1] [glob_exp2] [\&.\&.\&.]\fP"
List all available and installed packages\&.
.IP "\fByum list available [glob_exp1] [\&.\&.\&.]\fP"
List all packages in the yum repositories available to be installed\&.
.IP
.IP "\fByum list updates [glob_exp1] [\&.\&.\&.]\fP"
List all packages with updates available in the yum repositories\&.
.IP
.IP "\fByum list installed [glob_exp1] [\&.\&.\&.]\fP"
List the packages specified by \fIargs\fP\&. If an argument does not
match the name of an available package, it is assumed to be a
shell\-style glob and any matches are printed\&.
.IP
.IP "\fByum list extras [glob_exp1] [\&.\&.\&.]\fP"
List the packages installed on the system that are not available in any yum
repository listed in the config file.
.IP
.IP "\fByum list distro-extras [glob_exp1] [\&.\&.\&.]\fP"
List the packages installed on the system that are not available, by name,
in any yum repository listed in the config file.
.IP
.IP "\fByum list obsoletes [glob_exp1] [\&.\&.\&.]\fP"
List the packages installed on the system that are obsoleted by packages
in any yum repository listed in the config file.
.IP
.IP "\fByum list recent\fP"