AIX Open Source

 View Only

YUM Plugins for AIX

By SANKET RATHI posted Tue September 08, 2020 12:06 PM

  

YUM plugins are the python modules provided with a separate package and these modules are loaded when yum starts. Individual package needs to be installed to enable the required plugins.

This document explains basic functionality of each individual plugins provided on AIX Toolbox with sample output. Not all options output are shown here, only most of the basic and important output are included.

More information on each plugins can found using help option or refer the link provided in reference section.

Not all plugins which are supported on other linux distributions are provided, as some of the tools and packaging is totally different.

Refer the section “Unsupported and future availability list” to know more on unsupported plugins and future availability of some of the plugins.

Yum plugins .py files are install under the path /opt/freeware/lib/yum-plugins/

and conf files are installed under the path /opt/freeware/etc/yum/pluginconf.d

With yum-3.4.3-6, plugins option in default yum.conf /opt/freeware/etc/yum/yum.conf will be set to 1.

To verify if a plugins are enabled after installing required plugin packages, just run yum which will have the first line output as below.


# yum
Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, list-data, local, merge-conf, post-transaction-actions,
: protectbase, ps, remove-with-leaves, rpm-warm-cache, show-leaves, tmprepo, tsflags, verify, versionlock



Now lets start with each plugins supported on AIX.

fastestmirror: sorts each repository's mirrorlist by connection speed prior to downloading packages.

To enable this plugin install yum-plugin-fastestmirror package.

To make this work, first needs to build the mirror list.

As we don’t have mirror sites for AIX Toolbox we will use fedora mirror list just for testing this plugin.

Build the local mirror list file as

# cat /opt/freeware/etc/yum/repos.d/fedora_mirror

ftp://mirror.pregi.net/fedora/releases/26/Everything/x86_64/os/

ftp://mirrors.njupt.edu.cn/fedora/releases/26/Everything/x86_64/os/

ftp://mirrors.163.com/fedora/linux/releases/26/Everything/x86_64/os/

ftp://kartolo.sby.datautama.net.id/fedora/releases/26/Everything/x86_64/os/

ftp://mirror.rise.ph/fedora/linux/releases/26/Everything/x86_64/os/

ftp://ftp.jaist.ac.jp/pub/Linux/Fedora//releases/26/Everything/x86_64/os/

ftp://repo.fedoralinux.ir/pub/fedora/linux/releases/26/Everything/x86_64/os/

ftp://fedora.mirror.angkasa.id/pub/fedora/linux/releases/26/Everything/x86_64/os/

ftp://mirrors.tuna.tsinghua.edu.cn/fedora/releases/26/Everything/x86_64/os/



And then add this mirror list to one of the repository as.

# cat /opt/freeware/etc/yum/repos.d/fedora-mirror.repo

[base]

name=Fedora 26 base

mirrorlist=file:///opt/freeware/etc/yum/repos.d/fedora_mirror

enable=1



And then run yum repolist to check which fastest mirror does yum selects.

# yum repolist

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, list-data, local, merge-conf, post-transaction-actions,

: protectbase, ps, remove-with-leaves, rpm-warm-cache, show-leaves, tmprepo, tsflags, verify, versionlock

Determining fastest mirrors

* base: mirror.rise.ph

base | 3.8 kB 00:00:00

base/primary_db | 27 MB 00:00:32

0 packages excluded due to repository protections

repo id repo name status

base Fedora 26 base 53,912

repolist: 53,912



changelog: adds a command line option to allow viewing package changelog deltas before or after updating packages.

To enable this plugin install yum-plugin-changelog package.

# yum changelog 2008-Jan bash

Loaded plugins: changelog, fastestmirror

Loading mirror speeds from cached hostfile

Listing changelogs since 2008-01-08

==================== Installed Packages ====================

bash-4.3.30-1.ppc installed

* Mon Apr 4 19:00:00 2016 Nitish K Mishra <nitismis@in.ibm.com> 4.3.30

- Update to version 4.3.30

* Mon Jul 27 19:00:00 2015 Michael Wilson <michael.wilson@bull.net> 4.3

- Update to version 4.3.30

* Tue Sep 30 19:00:00 2014 Gerard Visiedo <gerard.visiedo@bull.net> 4.2-9

- Add patch bash-4.2-50

* Mon Sep 29 19:00:00 2014 Gerard Visiedo <gerard.visiedo@bull.net> 4.2-8

- Patches with Bash shell vulnerability CVE-2014-6271 and CVE-2014-7169

…………………..

changelog stats. 1 pkg, 1 source pkg, 9 changelogs



To get changelog entries of the package from the repository which isn’t installed.

# yum changelog 2008-Jan gtk2

Loaded plugins: changelog, fastestmirror

Loading mirror speeds from cached hostfile

AIX_Toolbox/other_db | 218 kB 00:00:00

Listing changelogs since 2008-01-08

==================== Available Packages ====================

gtk2-2.24.30-1waixX11.ppc AIX_Toolbox

* Thu Jun 9 19:00:00 2016 Matthieu Sarter <matthieu.sarter.external@atos.net> 2.24.30-1

- Updated to version 2.24.30

* Thu Apr 7 19:00:00 2016 Tony Reix <tony.reix@bull.net> - 2.24.28

- First port of version 2.24.28

* Mon Oct 7 19:00:00 2013 Gerard Visiedo <gerard.visiedo@bull.net> - 2.20.1-4

- Rebuild due to libX11 issue



filter-data: adds the options --filter- vendors, groups, packagers, licenses, arches, committers, buildhosts, baseurls, package-sizes, archive-sizes and installed-sizes. These options are just for "update" and "list update" type commands.

To enable this plugin install yum-plugin-filter-data package.

To list all updates that are 1MB or less.

# yum --filter-package-sizes=-1m check-update

Loaded plugins: changelog, fastestmirror, filter-data

Loading mirror speeds from cached hostfile

Limiting package lists to filtered ones

Left with 6 of 9 packages, after filters applied

curl.ppc 7.54.1-2 AIX_Toolbox

expat.ppc 2.2.0-1 AIX_Toolbox

expat-devel.ppc 2.2.0-1 AIX_Toolbox

popt.ppc 1.16-3 AIX_Toolbox

python.ppc 2.7.12-2 AIX_Toolbox_local

python-devel.ppc 2.7.12-2 AIX_Toolbox

python-tools.ppc 2.7.12-2 AIX_Toolbox



To filter with licenses

# yum --filter-licenses=MIT check-update

Loaded plugins: changelog, fastestmirror, filter-data

Loading mirror speeds from cached hostfile

Limiting package lists to filtered ones

Left with 2 of 9 packages, after filters applied

expat.ppc 2.2.0-1 AIX_Toolbox

expat-devel.ppc 2.2.0-1 AIX_Toolbox

python.ppc 2.7.12-2 AIX_Toolbox_local


downloadonly:
adds a --downloadonly flag to yum so that yum will only download the packages and not install/update them.

To enable this plugin install yum-plugin-downloadonly.

# yum install httpd -y --downloadonly --downloaddir=/tmp/yum_dw

Loaded plugins: changelog, downloadonly, fastestmirror, filter-data

Loading mirror speeds from cached hostfile

Skipping filters plugin, no data

Setting up Install Process

Resolving Dependencies

Skipping filters plugin, no data

--> Running transaction check

---> Package httpd.ppc 0:2.4.27-1 will be installed

--> Processing Dependency: pcre >= 8.33 for package: httpd-2.4.27-1.ppc

--> Processing Dependency: lua >= 5.1.5 for package: httpd-2.4.27-1.ppc

--> Processing Dependency: openldap >= 2.4.40 for package: httpd-2.4.27-1.ppc

--> Processing Dependency: libpcre.a(libpcre.so.1) for package: httpd-2.4.27-1.ppc

--> Processing Dependency: liblber.a(liblber-2.4.so.2) for package: httpd-2.4.27-1.ppc

--> Processing Dependency: libldap.a(libldap-2.4.so.2) for package: httpd-2.4.27-1.ppc

--> Running transaction check

---> Package lua.ppc 0:5.3.3-1 will be installed

---> Package openldap.ppc 0:2.4.40-2 will be installed

---> Package pcre.ppc 0:8.33-1 will be installed

--> Finished Dependency Resolution

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Installing:

httpd ppc 2.4.27-1 AIX_Toolbox 3.9 M

Installing for dependencies:

lua ppc 5.3.3-1 AIX_Toolbox 1.6 M

openldap ppc 2.4.40-2 AIX_Toolbox 4.4 M

pcre ppc 8.33-1 AIX_Toolbo 538 k

Transaction Summary

===================================================================================

Install 4 Packages

Total download size: 11 M

Installed size: 33 M

Downloading Packages:

(1/4): httpd-2.4.27-1.aix6.1.ppc | 3.9 MB 00:00:01

(2/4): lua-5.3.3-1.aix6.1.ppc.rpm | 1.6 MB 00:00:00

(3/4): openldap-2.4.40-2.aix6.1.ppc | 4.4 MB 00:00:01

(4/4): pcre-8.33-1.aix6.1.ppc.rpm | 538 kB 00:00:00

---------------------------------------------------------------------------------------------------------------------------------------------

Total 3.1 MB/s | 11 MB 00:03

exiting because --downloadonly specified

# ls /tmp/yum_dw

httpd-2.4.27-1.aix6.1.ppc.rpm lua-5.3.3-1.aix6.1.ppc.rpm openldap-2.4.40-2.aix6.1.ppc.rpm pcre-8.33-1.aix6.1.ppc.rpm


priorities:
allows repositories to have different priorities.

If a package is in more than one repository, it will be installed from the high priority repository.

Packages from low priority repository won't be upgraded which were installed from a high priority repository.

To enable this plugin install yum-plugin-priorities package.

For example we enabled 4 repositories

# yum repolist

Loaded plugins: changelog, downloadonly, fastestmirror, filter-data, priorities

Loading mirror speeds from cached hostfile

repo id repo name status

AIX_Toolbox AIX generic repository 320

AIX_Toolbox_71 AIX 7.1 specific repository 10

AIX_Toolbox_local Toolbox local 25

AIX_Toolbox_noarch AIX noarch repository 39

repolist: 394


AIX_Toolbox_local repository is having some of the duplicates packages from AIX_Toolbox repository.

Now we will set the priority for AIX_Toolbox to 1 in yum.conf file and see the list.

# yum repolist

Loaded plugins: changelog, downloadonly, fastestmirror, filter-data, priorities

Loading mirror speeds from cached hostfile

AIX_Toolbox | 2.9 kB 00:00:00

AIX_Toolbox_71 | 2.9 kB 00:00:00

AIX_Toolbox_local | 3.6 kB 00:00:00

AIX_Toolbox_noarch | 2.9 kB 00:00:00

20 packages excluded due to repository priority protections

repo id repo name status

AIX_Toolbox AIX generic repository 320

AIX_Toolbox_71 AIX 7.1 specific repository 10

AIX_Toolbox_local Toolbox local 4+21

AIX_Toolbox_noarch AIX noarch repository 39

repolist: 373


versionlock:
takes a set of name/versions for packages and excludes all other versions of those packages. This allows us to protect packages from being updated by newer versions.

To enable this plugin install yum-plugin-versionlock package.

We can use versionlock command to add, delete, clear the entries from versionlock list.

# yum versionlock list

Loaded plugins: changelog, downloadonly, fastestmirror, filter-data, priorities, versionlock

versionlock list done

# yum list curl

Loaded plugins: changelog, downloadonly, fastestmirror, filter-data, priorities, versionlock

Loading mirror speeds from cached hostfile

20 packages excluded due to repository priority protections

Installed Packages

curl.ppc 7.52.1-1 installed

Available Packages

curl.ppc 7.54.1-2 AIX_Toolbox

# yum versionlock add curl

Loaded plugins: changelog, downloadonly, fastestmirror, filter-data, priorities, versionlock

Adding versionlock on: 0:curl-7.52.1-1

versionlock added: 1

# yum versionlock list

Loaded plugins: changelog, downloadonly, fastestmirror, filter-data, priorities, versionlock

0:curl-7.52.1-1.*

versionlock list done

# yum update curl

Loaded plugins: changelog, downloadonly, fastestmirror, filter-data, priorities, versionlock

Loading mirror speeds from cached hostfile

Skipping filters plugin, no data

20 packages excluded due to repository priority protections

Setting up Update Process

No Packages marked for Update



Now delete the entry from the locklist and try an update again.

# yum versionlock delete 0:curl-7.52.1-1.*

Loaded plugins: changelog, downloadonly, fastestmirror, filter-data, priorities, versionlock

Deleting versionlock for: 0:curl-7.52.1-1.*

versionlock deleted: 1

# yum versionlock list

Loaded plugins: changelog, downloadonly, fastestmirror, filter-data, priorities, versionlock

versionlock list done

# yum update curl

Loaded plugins: changelog, downloadonly, fastestmirror, filter-data, priorities, versionlock

Loading mirror speeds from cached hostfile

Skipping filters plugin, no data

20 packages excluded due to repository priority protections

Setting up Update Process

Resolving Dependencies

Skipping filters plugin, no data

--> Running transaction check

---> Package curl.ppc 0:7.52.1-1 will be updated

---> Package curl.ppc 0:7.54.1-2 will be an update

--> Finished Dependency Resolution

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Updating:

curl ppc 7.54.1-2 AIX_Toolbox 534 k

Transaction Summary

===================================================================================

Upgrade 1 Package

Total download size: 534 k

Is this ok [y/N]:


post-transaction-actions:
runs actions following the transaction based on the content of the transaction.

This extension allows the user to execute arbitrary actions immediately after a transaction over specific packages.

To enable this plugin install yum-plugin-post-transaction-action package.

We need to create an action files under the /opt/freeware/etc/yum/post-actions path, similar to one which comes with yum-plugin-post-transaction-actions package at /opt/freeware/doc/yum-plugin-post-transaction-actions-1.1.31/sample.action. This file has information about how to create an action file entries.

# cat /opt/freeware/etc/yum/post-actions/sample.action

*:install:touch /tmp/$name-installed

*:remove: echo "Removed $name"


This entry makes post transaction action plugin to run touch command if any package is installed, and echo a message if any package is removed.

# yum -y install grep

Loaded plugins: changelog, downloadonly, fastestmirror, filter-data, post-transaction-actions, priorities, versionlock

Loading mirror speeds from cached hostfile

Skipping filters plugin, no data

20 packages excluded due to repository priority protections

Setting up Install Process

Resolving Dependencies

Skipping filters plugin, no data

--> Running transaction check

---> Package grep.ppc 0:2.22-1 will be installed

--> Finished Dependency Resolution

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Installing:

grep ppc 2.22-1 AIX_Toolbox 442 k

Transaction Summary

===================================================================================

Install 1 Package

Total size: 442 k

Installed size: 1.4 M

Downloading Packages:

Running Transaction Check

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Installing : grep-2.22-1.ppc 1/1

Running post transaction command: touch /tmp/grep-installed

Installed:

grep.ppc 0:2.22-1

Complete!

# yum -y erase grep

Loaded plugins: changelog, downloadonly, fastestmirror, filter-data, post-transaction-actions, priorities, versionlock

Setting up Remove Process

Resolving Dependencies

--> Running transaction check

---> Package grep.ppc 0:2.22-1 will be erased

--> Finished Dependency Resolution

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Removing:

grep ppc 2.22-1 @AIX_Toolbox 1.4 M

Transaction Summary

===================================================================================

Remove 1 Package

Installed size: 1.4 M

Downloading Packages:

Running Transaction Check

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Erasing : grep-2.22-1.ppc 1/1

Running post transaction command: echo "Removed grep"

Removed grep

Removed:

grep.ppc 0:2.22-1

Complete!



rpm-warm-cache: This plugin reads the complete RPM database into the buffer cache in order to improve database reads later on.

To enable this plugin install yum-plugin-rpm-warm-cache.

aliases: This plugin adds the alias command which allows to configure and use alias for yum commands, , much like the alias command in bash.

To enable this plugin install yum-plugin-aliases package.

The /opt/freeware/etc/yum/pluginconf.d/aliases.conf will have the conffile entry to point to /opt/freeware/etc/yum/aliases.conf which has the default aliases for most commonly used yum commands.

# yum h

Loaded plugins: aliases, changelog, downloadonly, fastestmirror, filter-data, post-transaction-actions, rpm-warm-cache, versionlock

ID | Command line | Date and time | Action(s) | Altered

-------------------------------------------------------------------------------

37 | -y erase grep | 2017-09-08 07:59 | Erase | 1

36 | -y install grep | 2017-09-08 07:59 | Install | 1

35 | erase grep | 2017-09-08 07:56 | Erase | 1

34 | install grep | 2017-09-08 07:52 | Install | 1

33 | erase grep | 2017-09-08 07:52 | Erase | 1 P<

32 | install python-six | 2017-09-08 03:30 | Install | 1 ><

..........

# yum rl

Loaded plugins: aliases, changelog, downloadonly, fastestmirror, filter-data, post-transaction-actions, rpm-warm-cache, versionlock

Loading mirror speeds from cached hostfile

repo id repo name status

AIX_Toolbox AIX generic repository 320

AIX_Toolbox_71 AIX 7.1 specific repository 10

AIX_Toolbox_local Toolbox local 25

AIX_Toolbox_noarch AIX noarch repository 39

repolist: 394



allowdowngrade: Yum plugin to enable manual downgrading of packages.

This plugin adds a --allow-downgrade flag to yum to make it possible to manually downgrade packages to specific

versions.

To enable this plugin install yum-plugin-allowdowngrade package.

Looks like this plugin has an legacy defect as it isn’t working correctly.

We can use “yum downgrade” as an alternate.

Here we first manually installed the latest version of grep-2.26-2, and latest available on AIX Toolbox repo is

grep-2.22-1.

# yum list grep

Loaded plugins: aliases, allowdowngrade, changelog, downloadonly, fastestmirror, filter-data, post-transaction-actions, rpm-warm-cache, versionlock

Loading mirror speeds from cached hostfile

Installed Packages

grep.ppc 2.26-2 installed

# yum --allow-downgrade install grep-2.22-1

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, list-data, local, merge-conf, post-transaction-actions,

: priorities, protectbase, ps, remove-with-leaves, rpm-warm-cache, show-leaves, tmprepo, tsflags, verify, versionlock

Loading mirror speeds from cached hostfile

Skipping filters plugin, no data

0 packages excluded due to repository protections

Setting up Install Process

Package matching grep-2.22-1.ppc already installed. Checking for update.

Nothing to do

# yum downgrade install grep-2.22-1

Loaded plugins: aliases, allowdowngrade, changelog, downloadonly, fastestmirror, filter-data, post-transaction-actions, rpm-warm-cache, versionlock

Setting up Downgrade Process

Loading mirror speeds from cached hostfile

No package install available.

Resolving Dependencies

--> Running transaction check

---> Package grep.ppc 0:2.22-1 will be a downgrade

---> Package grep.ppc 0:2.26-2 will be erased

--> Finished Dependency Resolution

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Downgrading:

grep ppc 2.22-1 AIX_Toolbox 442 k

Transaction Summary

===================================================================================

Downgrade 1 Package

Total download size: 442 k

Is this ok [y/N]: y

Downloading Packages:

grep-2.22-1.aix6.1.ppc.rpm | 442 kB 00:00:00

Running Transaction Check

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Installing : grep-2.22-1.ppc 1/2

Cleanup : grep-2.26-2.ppc 2/2

Removed:

grep.ppc 0:2.26-2

Installed:

grep.ppc 0:2.22-1

Complete!



show-leaves: shows newly installed leaf packages and packages that became leaves after a transaction.

This shows packages which aren’t used by any other package so that it will help in cleaning up the system.

To enable this plugin install yum-plugin-show-leaves package.

# yum install httpd

Loaded plugins: aliases, allowdowngrade, changelog, downloadonly, fastestmirror, filter-data, post-transaction-actions, rpm-warm-cache, show-leaves, versionlock

Loading mirror speeds from cached hostfile

Skipping filters plugin, no data

Setting up Install Process

Resolving Dependencies

Skipping filters plugin, no data

--> Running transaction check

---> Package httpd.ppc 0:2.4.27-1 will be installed

--> Processing Dependency: lua >= 5.1.5 for package: httpd-2.4.27-1.ppc

--> Processing Dependency: openldap >= 2.4.40 for package: httpd-2.4.27-1.ppc

--> Processing Dependency: liblber.a(liblber-2.4.so.2) for package: httpd-2.4.27-1.ppc

--> Processing Dependency: libldap.a(libldap-2.4.so.2) for package: httpd-2.4.27-1.ppc

--> Running transaction check

---> Package lua.ppc 0:5.3.3-1 will be installed

---> Package openldap.ppc 0:2.4.40-2 will be installed

--> Finished Dependency Resolution

Checking allo_downgrade

False

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Installing:

httpd ppc 2.4.27-1 AIX_Toolbox 3.9 M

Installing for dependencies:

lua ppc 5.3.3-1 AIX_Toolbox 1.6 M

openldap ppc 2.4.40-2 AIX_Toolbox 4.4 M

Transaction Summary

===================================================================================

Install 3 Packages

Total download size: 10 M

Installed size: 30 M

Is this ok [y/N]: y

Downloading Packages:

(1/3): httpd-2.4.27-1.aix6.1.pp | 3.9 MB 00:00:00

(2/3): lua-5.3.3-1.aix6.1.ppc.rpm | 1.6 MB 00:00:00

(3/3): openldap-2.4.40-2.aix6.1.ppc.rpm | 4.4 MB 00:00:00

---------------------------------------------------------------------------------------------------------------------------------------------

Total 3.8 MB/s | 10 MB 00:02

Running Transaction Check

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Installing : lua-5.3.3-1.ppc 1/3

Installing : openldap-2.4.40-2.ppc 2/3

3004-686 Group "ldap" does not exist.

Installing : httpd-2.4.27-1.ppc 3/3

3004-686 Group "apache" does not exist.

3004-687 User "apache" does not exist.

Running post transaction command: touch /tmp/lua-installed

Running post transaction command: touch /tmp/openldap-installed

Running post transaction command: touch /tmp/httpd-installed

Installed:

httpd.ppc 0:2.4.27-1

Dependency Installed:

lua.ppc 0:5.3.3-1 openldap.ppc 0:2.4.40-2

Complete!

New leaves:

httpd.ppc

# yum erase httpd

Loaded plugins: aliases, allowdowngrade, changelog, downloadonly, fastestmirror, filter-data, post-transaction-actions, rpm-warm-cache, show-leaves, versionlock

Setting up Remove Process

Resolving Dependencies

--> Running transaction check

---> Package httpd.ppc 0:2.4.27-1 will be erased

--> Finished Dependency Resolution

Checking allo_downgrade

False

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Removing:

httpd ppc 2.4.27-1 @AIX_Toolbox 13 M

Transaction Summary

===================================================================================

Remove 1 Package

Installed size: 13 M

Is this ok [y/N]: y

Downloading Packages:

Running Transaction Check

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Erasing : httpd-2.4.27-1.ppc 1/1

Running post transaction command: echo "Removed httpd"

Removed httpd

Removed:

httpd.ppc 0:2.4.27-1

Complete!

New leaves:

openldap.ppc

pcre.ppc



protectbase: Yum plugin to protect packages from certain repositories.

With this plugin, repositories that are to be protected will not be updated by newer files from unprotected repositories.

To enable this plugin install yum-plugin-protectbase package.

Let’s check how this plugin protect repository from updating packages.

First check without adding protect=1 in any of the repos.

# yum list grep

Loaded plugins: aliases, allowdowngrade, changelog, downloadonly, fastestmirror, filter-data, post-transaction-actions, protectbase, rpm-warm-cache, show-leaves, versionlock

Loading mirror speeds from cached hostfile

21 packages excluded due to repository protections

Installed Packages

grep.ppc 2.22-1 @AIX_Toolbox



We have grep installed from AIX_Toolbox repository and update version is available through AIX_Toolbox_local repo.

# yum check-update grep

Loaded plugins: aliases, allowdowngrade, changelog, downloadonly, fastestmirror, filter-data, post-transaction-actions, protectbase, rpm-warm-cache, show-leaves, versionlock

Loading mirror speeds from cached hostfile

Skipping filters plugin, no data

0 packages excluded due to repository protections

grep.ppc 2.26-2 AIX_Toolbox_local



Now add protect=1 to the AIX_Toolbox repo and check for update.

# yum check-update grep

Loaded plugins: aliases, allowdowngrade, changelog, downloadonly, fastestmirror, filter-data, post-transaction-actions, protectbase, rpm-warm-cache, show-leaves, versionlock

Loading mirror speeds from cached hostfile

AIX_Toolbox | 2.9 kB 00:00:00

AIX_Toolbox_71 | 2.9 kB 00:00:00

AIX_Toolbox_local | 2.9 kB 00:00:00

AIX_Toolbox_noarch | 2.9 kB 00:00:00

Skipping filters plugin, no data

21 packages excluded due to repository protections



tmprepo: This extension adds the --tmprepo option taking an url of a .repo file, downloads it and enable it for only one transaction. This extension tries to ensure the safe temporary usage of repositories, by default, it does not allow to disable the gpg check.

To enable this plugin install yum-plugin-tmprepo package.

Here we will try to update grep package from AIX_Toolbox_local repo using tmprepo option.

# yum list grep

Loaded plugins: aliases, allowdowngrade, changelog, downloadonly, fastestmirror, filter-data, post-transaction-actions, protectbase, rpm-warm-cache, show-leaves, tmprepo,

: versionlock

Determining fastest mirrors

AIX_Toolbox_local | 2.9 kB 00:00:00

AIX_Toolbox_local/primary_db | 21 kB 00:00:00

0 packages excluded due to repository protections

Installed Packages

grep.ppc 2.22-1 @AIX_Toolbox

Available Packages

grep.ppc 2.26-2 AIX_Toolbox_local

# yum repolist

Loaded plugins: aliases, allowdowngrade, changelog, downloadonly, fastestmirror, filter-data, post-transaction-actions, protectbase, rpm-warm-cache, show-leaves, tmprepo,

: versionlock

Loading mirror speeds from cached hostfile

0 packages excluded due to repository protections

repo id repo name status

AIX_Toolbox_local Toolbox local 25

repolist: 25

# yum --tmprepo=file:/opt/freeware/etc/yum.repos.d/local_repo.repo update grep --nogpgcheck

Loaded plugins: aliases, allowdowngrade, changelog, downloadonly, fastestmirror, filter-data, post-transaction-actions, protectbase, rpm-warm-cache, show-leaves, tmprepo,

: versionlock

Failed to retrieve file:/opt/freeware/etc/yum.repos.d/local_repo.repo

Loading mirror speeds from cached hostfile

Skipping filters plugin, no data

0 packages excluded due to repository protections

Setting up Update Process

Resolving Dependencies

Skipping filters plugin, no data

--> Running transaction check

---> Package grep.ppc 0:2.22-1 will be updated

---> Package grep.ppc 0:2.26-2 will be an update

--> Finished Dependency Resolution

Checking allo_downgrade

False

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Updating:

grep ppc 2.26-2 AIX_Toolbox_local 586 k

Transaction Summary

===================================================================================

Upgrade 1 Package

Total download size: 586 k

Is this ok [y/N]: y

Downloading Packages:

Running Transaction Check

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Updating : grep-2.26-2.ppc 1/2

Cleanup : grep-2.22-1.ppc 2/2

Running post transaction command: touch /tmp/grep-installed

Running post transaction command: echo "Removed grep"

Removed grep

Updated:

grep.ppc 0:2.26-2

Complete!



basearchonly: this plugin makes Yum only install basearch packages on multiarch systems.

If we type 'yum install foo' on a x68_64 system, only 'foo-x.y.x86_46.rpm' is installed.

If we want to install the foo-x.y.i386.rpm, we have to type 'yum install foo.i386'.

The plugin only works with 'yum install'.

To enable this plugin install yum-plugin-basearchonly package.

This plugin mayn’t be much useful on AIX as we don’t have multiarch support systems.

We have packages built with ppc and noarch . If we have ppc and noarch package then yum chooses the ppc package on top of noarch package.

# yum list dejagnu

Loaded plugins: aliases, allowdowngrade, changelog, downloadonly, fastestmirror, filter-data, post-transaction-actions, protectbase, rpm-warm-cache, show-leaves, tmprepo,

: versionlock

Loading mirror speeds from cached hostfile

0 packages excluded due to repository protections

Available Packages

dejagnu.noarch 1.6-1 AIX_Toolbox_local

dejagnu.ppc 1.6-1 AIX_Toolbox_local

# yum install dejagnu

Loaded plugins: aliases, allowdowngrade, changelog, downloadonly, fastestmirror, filter-data, post-transaction-actions, protectbase, rpm-warm-cache, show-leaves, tmprepo,

: versionlock

Loading mirror speeds from cached hostfile

Skipping filters plugin, no data

0 packages excluded due to repository protections

Setting up Install Process

Resolving Dependencies

Skipping filters plugin, no data

--> Running transaction check

---> Package dejagnu.ppc 0:1.6-1 will be installed

--> Finished Dependency Resolution

Checking allo_downgrade

False

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Installing:

dejagnu ppc 1.6-1 AIX_Toolbox_local 265 k

Transaction Summary

===================================================================================

Install 1 Package

Total download size: 265 k

Installed size: 1.1 M

Is this ok [y/N]:

# yum install dejagnu.noarch

Loaded plugins: aliases, allowdowngrade, changelog, downloadonly, fastestmirror, filter-data, post-transaction-actions, protectbase, rpm-warm-cache, show-leaves, tmprepo,

: versionlock

Loading mirror speeds from cached hostfile

Skipping filters plugin, no data

0 packages excluded due to repository protections

Setting up Install Process

Resolving Dependencies

Skipping filters plugin, no data

--> Running transaction check

---> Package dejagnu.noarch 0:1.6-1 will be installed

--> Finished Dependency Resolution

Checking allo_downgrade

False

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Installing:

dejagnu noarch 1.6-1 AIX_Toolbox_local 358 k

Transaction Summary

===================================================================================

Install 1 Package

Total download size: 358 k

Installed size: 1.3 M



keys: adds the commands keys, keys-info, keys-data and keys-remove. They allow you to query and remove signing keys.

To enable this plugin install the yum-plugin-keys package.

As we don’t have a gpg keys for AIX Toolbox packages we can try with importing sample keys from some other source.

# yum | grep keys

: fastestmirror, filter-data, keys, post-transaction-actions,

You need to give some command

keys Lists keys for signing data

keys-data Show public key block information for signing data

keys-info Full information keys for signing data

keys-remove Remove a public key block for signing data

# rpm -qa gpg-pubkey

# rpm --import https://www.centos.org/keys/RPM-GPG-KEY-CentOS-Testing-7

# rpm -qa gpg-pubkey

gpg-pubkey-8fae34bd-538f1e51

# yum keys

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, post-transaction-actions, protectbase, rpm-warm-cache, show-

: leaves, tmprepo, versionlock

Key owner Key email Repo Key ID

CentOS-7 Testing (CentOS 7 Testing content) security@centos.org installed 8fae34bd-538f1e51

keys done

# yum keys-info

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, post-transaction-actions, protectbase, rpm-warm-cache, show-

: leaves, tmprepo, versionlock

Type : GPG

Rpm Key ID : 8fae34bd-538f1e51

Key owner : CentOS-7 Testing (CentOS 7 Testing content)

Key email : security@centos.org

Repo : installed

Created : Wed Jun 4 08:25:37 2014

Version : PGP Public Key Certificate v4

Primary ID : CentOS-7 Testing (CentOS 7 Testing content) <security@centos.org>

Algorithm : RSA (Encrypt or Sign)

Fingerprint: ba02a5e6aff970f7269dd972c78893ac8fae34bd

Key ID : c78893ac8fae34bd

keys-info done

# yum keys-data

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, post-transaction-actions, protectbase, rpm-warm-cache, show-

: leaves, tmprepo, versionlock

Type : GPG

Key owner: CentOS-7 Testing (CentOS 7 Testing content)

Key email: security@centos.org

Key ID : 8fae34bd

Repo : installed

Created : Wed Jun 4 08:25:37 2014

Raw Data :

-----BEGIN PGP PUBLIC KEY BLOCK-----

Version: rpm-4.13.0.1 (NSS-3)

mQINBFOPHlEBEADP3E1fQHyrL4Rees0MywxIdPgtRueiNSaf+JibtIlfjydqipzA

P5R6th3VuHmplChgUiuP7jxc2aLQewz2WgtFP03y6jUF70UHkRLq0THnBJ8hRKBb

dE5cKsqjFDn9XqhSvdZrEIJtTNEnrUrEh+E3qCXkGDQJTcpff8hfdzukrmGs02uf

Bo9NnDpUahsqVSQFd6AcFPCfzumNjH/dNFvFsmqvdR1RR+c59RXCOn2UtXicqCnx

nOrzAJQD4SHfpso7t2wVLOY0lN+3CRbKLWZc8W7tN+NHHBswy3QdJSWm6ZyCwk3F

Ldx1t7IkKJe8L28Ed7QboDt5oe/wgiN3FRMOmzSsqD+1juMEJLDZ5tvGiEqHakXO

3fcJKk4zVFRpbzZPS791x05E+k5xNpSl1kGM5jkzE2jw6I47FBQF/l3/SLME7kGg

kbECP6i9+b7JWjesaSwl9d+iXrjpxkN74/pitposle0uvdcyKjCihsFlW91XsgKu

8ysPetyOyLxdMhI6r3jhKJavBD5NDFhQAofO7CFv+5ZEBZCZjBglWLSXXMx8yuF+

ulSbZF6kvoTASQ+hjuM8hSoNTM7EW99oVBMU29XHp6mD8xxej3wI/4lVom1CTdC3

JZvRnMRZT+jvx1pJOKaIt4lGeVUOmtyPNkt48EYZvXZWzftHp/5K/ePR0QARAQAB

tEFDZW50T1MtNyBUZXN0aW5nIChDZW50T1MgNyBUZXN0aW5nIGNvbnRlbnQpIDxz

ZWN1cml0eUBjZW50b3Mub3JnPokCNQQTAQIAHwUCU48eUQIbAwYLCQgHAwIEFQII

AwMWAgECHgECF4AACgkQx4iTrI+uNL3oxBAAwNt5F2X3/8g5a9QpXiQ72WSpHOKi

pOa4K4FZGA5mkiZ2r8NWO852uQD8TdSUFkx3p7XbP8MVQyuvw+FY6O77FVs9nNMw

EjvRS5KLbiSmqVss1NbAVAMQl/a148aPwckvp75DZMmD8wYXVZdrdCzxXxz+JVxJ

f1mLRyUb1rnaHU9V9SfO0rsULaLeyHyOZTZrSSq9TODrgsdy7eoV4V4gGMM+/q9R

4w/jInaImEet3OVmyBO+qHeZrGRQpO/xG/NnFTXSLg2ltL5I13GK65XvOCtoUweg

DSrxh7loUBQpPDylScjcV3VVBHHFn+m1fkFSsAaIN0LZZsQ6beOvgGd4Ll6tzHae

dBgn30fltcIbInYZ8rr7Sdl9ql502mHejpGYb4pM+g429ZnWh/INzHqXpip/5YJS

qKUOjJxhFey5yieNEmh4VREo/3goBrof6+WCcF8EAAcUUswRB4QIz4+iGTYz2+cD

WXCr24Vr0CrIOECZ7N3+Ftp8OH2E3rM1QmMzFyCxuauQJ3HYyi8BxghYCOanHNME

XrktWUPHttAnoA0yxA3uYXlCwQMv9UYGhQXI8PRRegAceRjcUsCm7SnWm5Z/Cxgz

wfxyKEYqvbRUX2KV24wVRFoW4EWcYyHC7AxG3XUlTh+nIeOcBDRtEqZbI6kyTYVP

fERnsC7RfCEWxFg=

=J/Px

-----END PGP PUBLIC KEY BLOCK-----

keys-data done

# yum keys-remove 8fae34bd-538f1e51

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, post-transaction-actions, protectbase, rpm-warm-cache, show-

: leaves, tmprepo, versionlock

Loading mirror speeds from cached hostfile

AIX_Toolbox | 2.9 kB 00:00:00

AIX_Toolbox_local | 2.9 kB 00:00:00

AIX_Toolbox_noarch | 2.9 kB 00:00:00

0 packages excluded due to repository protections

Resolving Dependencies

--> Running transaction check

---> Package gpg-pubkey.noarch 0:8fae34bd-538f1e51 will be erased

--> Finished Dependency Resolution

Checking allo_downgrade

False

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Removing:

gpg-pubkey noarch 8fae34bd-538f1e51 installed 0.0

Transaction Summary

===================================================================================

Remove 1 Package

Installed size: 0

Is this ok [y/N]: y

Downloading Packages:

Running Transaction Check

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Warning: RPMDB altered outside of yum.

Erasing : gpg-pubkey-8fae34bd-538f1e51.noarch 1/1

Running post transaction command: echo "Removed gpg-pubkey"

Removed gpg-pubkey

Removed:

gpg-pubkey.noarch 0:8fae34bd-538f1e51

Complete!

# rpm -qa gpg-pubkey

#



ps: allows you to see which running processes are associated with which packages (and if they need rebooting, or have updates, etc.)

To enable this plugin install yum-plugin-ps package.

Shows all the processes affected by a packages update.

For example, if python is dependent on zlib package, and if any python process is running, then it will list zlib package and shows what are all python processes are effected.

* in the output below for the uptime shows that process needs to be restarted as update of the package happens after the process started.

All command line options like “yum ps updates” “yum ps upgrades” “yum ps all” should shows same output.

To check for the individual package and all the process effected, run “yum ps zlib”

# yum ps

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, list-data, local, merge-conf, post-transaction-actions,

: priorities, protectbase, ps, remove-with-leaves, rpm-warm-cache, show-leaves, tmprepo, tsflags, verify, versionlock

pid proc CPU RSS State uptime

Loading mirror speeds from cached hostfile

0 packages excluded due to repository protections

curl-7.52.1-1.ppc Upgrade 7.54.1-2.ppc

9109694 python 0:00 14 MB Active: 00:06

db-4.8.24-3.ppc

9109694 python 0:00 14 MB Active: 00:06

gettext-0.19.7-1.ppc

9109694 python 0:00 14 MB Active: 00:07

9175446 nmbd 0:07 1.4 MB Active: 2 day(s) 7:13:19

9896402 smbd 0:00 464 kB Active: 2 day(s) 7:13:52

6947304 smbd 0:00 464 kB Active: 2 day(s) 7:13:53

9634214 smbd 0:00 432 kB Active: 2 day(s) 7:13:53

9830586 smbd 0:00 452 kB Active: 2 day(s) 7:13:53

glib2-2.14.6-2.ppc Upgrade 2.48.0-1.ppc

9109694 python 0:00 14 MB Active: 00:07

lua-5.3.3-1.ppc

9109694 python 0:00 14 MB Active: 00:07

popt-1.16-1.ppc Upgrade 1.16-3.ppc

9109694 python 0:00 14 MB Active: 00:08

9175446 nmbd 0:07 1.4 MB Active: 2 day(s) 7:13:20

9896402 smbd 0:00 464 kB Active: 2 day(s) 7:13:52

6947304 smbd 0:00 464 kB Active: 2 day(s) 7:13:54

9634214 smbd 0:00 432 kB Active: 2 day(s) 7:13:54

9830586 smbd 0:00 452 kB Active: 2 day(s) 7:13:54

pysqlite-1.1.7-2.ppc

9109694 python 0:00 14 MB Active: 00:08

python-2.7.10-1.ppc Upgrade 2.7.12-2.ppc

9109694 python 0:00 14 MB Active: 00:08

python-pycurl-7.19.3-1.ppc

9109694 python 0:00 15 MB Active: 00:08

samba-common-4.6.4-1.ppc

9175446 nmbd 0:07 1.4 MB Active: *2 day(s) 7:13:21

6947304 smbd 0:00 464 kB Active: *2 day(s) 7:13:54

9896402 smbd 0:00 464 kB Active: *2 day(s) 7:13:54

9634214 smbd 0:00 432 kB Active: *2 day(s) 7:13:55

9830586 smbd 0:00 452 kB Active: *2 day(s) 7:13:55

samba-devel-4.6.4-1.ppc

9175446 nmbd 0:07 1.4 MB Active: *2 day(s) 7:13:21

9896402 smbd 0:00 464 kB Active: *2 day(s) 7:13:54

6947304 smbd 0:00 464 kB Active: *2 day(s) 7:13:55

9634214 smbd 0:00 432 kB Active: *2 day(s) 7:13:55

9830586 smbd 0:00 452 kB Active: *2 day(s) 7:13:55

samba-libs-4.6.4-1.ppc

9175446 nmbd 0:07 1.4 MB Active: *2 day(s) 7:13:22

6947304 smbd 0:00 464 kB Active: *2 day(s) 7:13:55

9896402 smbd 0:00 464 kB Active: *2 day(s) 7:13:55

9634214 smbd 0:00 432 kB Active: *2 day(s) 7:13:56

9830586 smbd 0:00 452 kB Active: *2 day(s) 7:13:56

samba-winbind-clients-4.6.4-1.ppc

9175446 nmbd 0:07 1.4 MB Active: *2 day(s) 7:13:22

9896402 smbd 0:00 464 kB Active: *2 day(s) 7:13:55

6947304 smbd 0:00 464 kB Active: *2 day(s) 7:13:56

9634214 smbd 0:00 432 kB Active: *2 day(s) 7:13:56

9830586 smbd 0:00 452 kB Active: *2 day(s) 7:13:56

sqlite-3.15.2-1.ppc

9109694 python 0:00 15 MB Active: 00:10

yum-metadata-parser-1.1.4-2.ppc

9109694 python 0:00 15 MB Active: 00:11

zlib-1.2.11-1.ppc

9109694 python 0:00 15 MB Active: 00:11

9175446 nmbd 0:07 1.4 MB Active: 2 day(s) 7:13:23

9896402 smbd 0:00 464 kB Active: 2 day(s) 7:13:56

6947304 smbd 0:00 464 kB Active: 2 day(s) 7:13:57

9634214 smbd 0:00 432 kB Active: 2 day(s) 7:13:57

9830586 smbd 0:00 452 kB Active: 2 day(s) 7:13:57

ps



tsflags: allows us to specify optional transaction flags on the yum command line.

tsflags supports following options noscripts, notriggers,nodocs,test,justdb,repackage. notriggers & repackge options aren’t fully tested.

To enable this plugin install yum-plugin-tsflags package.

To install and uninstall a package without running any pre/post install script.

# yum --tsflags noscripts install wget

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, post-transaction-actions, protectbase, ps, rpm-warm-cache,

: show-leaves, tmprepo, tsflags, versionlock

Loading mirror speeds from cached hostfile

Skipping filters plugin, no data

0 packages excluded due to repository protections

Setting up Install Process

Resolving Dependencies

Skipping filters plugin, no data

--> Running transaction check

---> Package wget.ppc 0:1.17.1-1 will be installed

--> Finished Dependency Resolution

Checking allo_downgrade

False

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Installing:

wget ppc 1.17.1-1 AIX_Toolbox 359 k

Transaction Summary

===================================================================================

Install 1 Package

Total download size: 359 k

Installed size: 932 k

Is this ok [y/N]: y

Downloading Packages:

wget-1.17.1-1.aix6.1.ppc.rpm | 359 kB 00:00:00

Running Transaction Check

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Installing : wget-1.17.1-1.ppc 1/1

Running post transaction command: touch /tmp/wget-installed

Installed:

wget.ppc 0:1.17.1-1

Complete!

New leaves:

wget.ppc

# yum -y --tsflags noscripts erase wget

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, post-transaction-actions, protectbase, ps, rpm-warm-cache,

: show-leaves, tmprepo, tsflags, versionlock

Setting up Remove Process

Resolving Dependencies

--> Running transaction check

---> Package wget.ppc 0:1.17.1-1 will be erased

--> Finished Dependency Resolution

Checking allo_downgrade

False

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Removing:

wget ppc 1.17.1-1 @AIX_Toolbox 932 k

Transaction Summary

===================================================================================

Remove 1 Package

Installed size: 932 k

Downloading Packages:

Running Transaction Check

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Erasing : wget-1.17.1-1.ppc 1/1

install-info: warning: no entries found for `/opt/freeware/info/wget.info.gz'; nothing deleted

Running post transaction command: echo "Removed wget"

Removed wget

Removed:

wget.ppc 0:1.17.1-1

Complete!


To install a package without doc files.

# yum -y --tsflags nodocs install wget

# ls /opt/freeware/info/wget.info.gz

ls: 0653-341 The file /opt/freeware/info/wget.info.gz does not exist.


To test the package installation.

# yum -y --tsflags test install grep


To just update the rpm database not the filesystem.

# yum -y --tsflags justdb install wget

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, post-transaction-actions, protectbase, ps, rpm-warm-cache,

: show-leaves, tmprepo, tsflags, versionlock

Loading mirror speeds from cached hostfile

Skipping filters plugin, no data

0 packages excluded due to repository protections

Setting up Install Process

Resolving Dependencies

Skipping filters plugin, no data

--> Running transaction check

---> Package wget.ppc 0:1.17.1-1 will be installed

--> Finished Dependency Resolution

Checking allo_downgrade

False

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Installing:

wget ppc 1.17.1-1 AIX_Toolbox 359 k

Transaction Summary

===================================================================================

Install 1 Package

Total size: 359 k

Installed size: 932 k

Downloading Packages:

Running Transaction Check

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Installing : wget-1.17.1-1.ppc 1/1

Running post transaction command: touch /tmp/wget-installed

Installed:

wget.ppc 0:1.17.1-1

Complete!

New leaves:

wget.ppc

# rpm -ql wget

/opt/freeware/bin/wget

/opt/freeware/doc/wget-1.17.1

/opt/freeware/doc/wget-1.17.1/AUTHORS

…...

/opt/freeware/doc/wget-1.17.1/README

/opt/freeware/doc/wget-1.17.1/sample.wgetrc

/opt/freeware/etc/wgetrc

/opt/freeware/info/wget.info.gz

/opt/freewtsflagsare/man/man1/wget.1

/usr/bin/wget

# ls /opt/freeware/bin/wget

ls: 0653-341 The file /opt/freeware/bin/wget does not exist.



list-data: adds the commands list- vendors, groups, packagers, licenses, arches, committers, buildhosts, baseurls, package-sizes, archive-sizes and installed-sizes.

To enable this plugin install yum-plugin-list-data package.

# yum list-vendors

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, list-data, post-transaction-actions, protectbase, ps, rpm-

: warm-cache, show-leaves, tmprepo, tsflags, versionlock

Loading mirror speeds from cached hostfile

0 packages excluded due to repository protections

==================== Installed Packages ====================

-- Unknown -- 82 ( 96%)

Benjamin Peterson <benjamin@python.org> 1 ( 1%)

Daniel Stenberg <Daniel.Stenberg@haxx.se> 2 ( 2%)

==================== Available Packages ====================

-- Unknown -- 288 ( 91%)

Armin Ronacher <armin.ronacher@active-4.com> 3 ( 0%)

Daniel Stenberg <Daniel.Stenberg@haxx.se> 1 ( 0%)

Edgewall Software <info@edgewall.org> 1 ( 0%)

Eli Collins <elic@assurancetechnologies.com> 1 ( 0%)

Google, Inc. <keyczar-discuss@googlegroups.com> 1 ( 0%)

IBM Pvt Ltd. 1 ( 0%)

........

# yum list-rpm-groups

Loaded pluginlist-datas: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, list-data, post-transaction-actions, protectbase, ps, rpm-

: warm-cache, show-leaves, tmprepo, tsflags, versionlock

Loading mirror speeds from cached hostfile

0 packages excluded due to repository protections

==================== Installed Packages ====================

Appl/var/tions/Internet 1 ( 1%)

Applications/Archiving 2 ( 2%)

Applications/Databases 1 ( 1%)

....

# yum list-licenses

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, list-data, post-transaction-actions, protectbase, ps, rpm-

: warm-cache, show-leaves, tmprepo, tsflags, versionlock

Loading mirror speeds from cached hostfile

0 packages excluded due to repository protections

==================== Installed Packages ====================

BSD 5 ( 5%)

GPL 11 ( 12%)

GPL v3 1 ( 1%)

GPLv2+ 23 ( 27%)

GPLv3 and LGPLv2+ 1 ( 1%)

GPLv3+ 4 ( 4%)

GPLv3+ and LGPLv3+ 6 ( 7%)

IBM_ILA 3 ( 3%)

LGPL 1 ( 1%)

LGPLv2+ 6 ( 7%)

......

==================== Available Packages ====================

APL 1 ( 0%)

APLv2 1 ( 0%)

ASL 2.0 1 ( 0%)

Apache License 2.0 1 ( 0%)

Apache Software License 6 ( 1%)

Artistic 3 ( 0%)

BSD 27 ( 8%)

BSD (3 clause) 1 ( 0%)

.....


local:
Yum plugin to automatically manage a local repo of downloaded packages.

It will automatically copy all installed packages to a repository on the local file system and rebuild the repository.

This means that any package that you downloaded and installed with yum will always exist, even if it is removed from the original repository, therefore, it can be uninstalled, reinstalled, downgraded, etc.

To enable this plugin install yum-plugin-local package. This plugin requires createrepo package.

# ls /opt/freeware/etc/yum.repos.d/

# ls /var/lib/yum/

history repos rpmdb-indexes uuid yumdb

# yum -y install grep

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, list-data, local, post-transaction-actions, protectbase, ps,

: rpm-warm-cache, show-leaves, tmprepo, tsflags, versionlock

Loading mirror speeds from cached hostfile

Skipping filters plugin, no data

0 packages excluded due to repository protections

Setting up Install Process

Resolving Dependencies

Skipping filters plugin, no data

--> Running transaction check

---> Package grep.ppc 0:2.26-2 will be installed

--> Finished Dependency Resolution

Checking allo_downgrade

False

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Installing:

grep ppc 2.26-2 AIX_Toolbox_local 586 k

Transaction Summary

===================================================================================

Install 1 Package

Total download size: 586 k

Installed size: 1.7 M

Downloading Packages:

Could not find valid repo at: /var/lib/yum/plugins/local <= This error occurs only for the first install.

Running Transaction Check

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Installing : grep-2.26-2.ppc 1/1

Running post transaction command: touch /tmp/grep-installed

Installed:

grep.ppc 0:2.26-2

Complete!

New leaves:

grep.ppc

# ls /opt/freeware/etc/yum.repos.d/

_local.repo

# ls /var/lib/yum/plugins/local

grep-2.26-2.aix6.1.ppc.rpm repodata

# yum -y install wget

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, list-data, local, post-transaction-actions, protectbase, ps,

: rpm-warm-cache, show-leaves, tmprepo, tsflags, versionlock

Loading mirror speeds from cached hostfile

_local | 2.9 kB 00:00:00

Skipping filters plugin, no data

0 packages excluded due to repository protections

Setting up Install Process

Resolving Dependencies

Skipping filters plugin, no data

--> Running transaction check

---> Package wget.ppc 0:1.17.1-1 will be installed

--> Finished Dependency Resolution

Checking allo_downgrade

False

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Installing:

wget ppc 1.17.1-1 AIX_Toolbox 359 k

Transaction Summary

===================================================================================

Install 1 Package

Total size: 359 k

Installed size: 932 k

Downloading Packages:

Running Transaction Check

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Installing : wget-1.17.1-1.ppc 1/1

Running post transaction command: touch /tmp/wget-installed

Installed:

wget.ppc 0:1.17.1-1

Complete!

New leaves:

wget.ppc

# ls /var/lib/yum/plugins/local/

grep-2.26-2.aix6.1.ppc.rpm repodata wget-1.17.1-1.aix6.1.ppc.rpm

# yum rl

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, list-data, local, post-transaction-actions, protectbase, ps,

: rpm-warm-cache, show-leaves, tmprepo, tsflags, versionlock

Loading mirror speeds from cached hostfile

_local | 2.9 kB 00:00:00

_local/primary_db | 3.3 kB 00:00:00

0 packages excluded due to repository protections

repo id repo name status

AIX_Toolbox AIX generic repository 320

AIX_Toolbox_local Toolbox local 27

AIX_Toolbox_noarch AIX noarch repository 39

_local Automatic local repo. (manged by the "local" yum plugin). 2

repolist: 388


verify:
Yum plugin to add verify command, and options, gives verification information on the installed system, much like rpm -V. You can change how the verification is done and which files it applies to. added yum commands are: verify, verify-rpm, verify-all.

To enable this plugin install yum-plugin-verify package.

# yum verify grep

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, list-data, local, merge-conf, post-transaction-actions,

: protectbase, ps, remove-with-leaves, rpm-warm-cache, show-leaves, tmprepo, tsflags, verify, versionlock

==================== Installed Packages ====================

grep.ppc : The GNU versions of grep pattern matching utilities.

File: /opt/freeware/bin/egrep_32

Problem: group does not match

Current: system

Original: root

File: /opt/freeware/bin/egrep_64

Problem: group does not match

Current: system

Original: root

.....

# yum verify-rpm

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, list-data, local, post-transaction-actions, protectbase, ps,

: rpm-warm-cache, show-leaves, tmprepo, tsflags, verify, versionlock

==================== Installed Packages ====================

ca-certificates.ppc : The Mozilla CA root certificate bundle

File: /opt/freeware/etc/ssl/certs/ACCVRAIZ1.crt

Problem: group does not match

Current: system

Original: root

File: /opt/freeware/etc/ssl/certs/ACEDICOM_Root.crt

Problem: group does not match

Current: system

Original: root

......

createrepo.noarch : Creates a common metadata repository

File: /opt/freeware/bin/createrepo

Problem: group does not match

Current: system

Original: root

File: /opt/freeware/bin/mergerepo

Problem: group does not match

Current: system

Original: root

........


merge-conf:
Yum plugin to merge configuration changes when installing packages.

To enable this plugin install yum-plugin-merge-conf package. This plugin requires vim package.

If we have edited httpd.conf file from httpd package after install, then while update we can use merge-conf option to merge the changes.

# yum update httpd --merge-conf

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror,

: filter-data, keys, list-data, local, merge-conf, post-transaction-actions,

: priorities, ps, rpm-warm-cache, show-leaves, tmprepo, tsflags, upgrade-helper,

: verify

Loading mirror speeds from cached hostfile

Skipping filters plugin, no data

Setting up Update Process

Resolving Dependencies

Skipping filters plugin, no data

--> Running transaction check

---> Package httpd.ppc 0:2.4.25-1 will be updated

---> Package httpd.ppc 0:2.4.27-1 will be an update

--> Finished Dependency Resolution

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Updating:

httpd ppc 2.4.27-1 AIX_Toolbox_local 3.9 M

Transaction Summary

===================================================================================

Upgrade 1 Package

Total size: 3.9 M

Is this ok [y/N]: y

Downloading Packages:

Running Transaction Check

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Warning: RPMDB altered outside of yum.

Updating : httpd-2.4.27-1.ppc 1/2

warning: /opt/freeware/etc/httpd/conf/httpd.conf created as /opt/freeware/etc/httpd/conf/httpd.conf.rpmnew

Cleanup : httpd-2.4.25-1.ppc 2/2

Package httpd: merging configuration for file "/opt/freeware/etc/httpd/conf/httpd.conf":

By default, RPM would keep your local version and rename the new one to /opt/freeware/etc/httpd/conf/httpd.conf.rpmnew

What do you want to do ?

- diff the two versions (d)

- do the default RPM action (q)

- install the package's version (i)

- merge interactively with vim (v)

- background this process and examine manually (z)

Your answer ? v

2 files to edit

External merge complete, delete "/opt/freeware/etc/httpd/conf/httpd.conf.rpmnew"? (y/n) y

"/opt/freeware/etc/httpd/conf/httpd.conf.rpmnew" deleted.

Running post transaction command: touch /tmp/httpd-installed

Updated:

httpd.ppc 0:2.4.27-1

Complete!


Now lets try again this with running in background.

# yum update httpd --merge-conf

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror,

: filter-data, keys, list-data, local, merge-conf, post-transaction-actions,

: priorities, ps, rpm-warm-cache, show-leaves, tmprepo, tsflags, upgrade-helper,

: verify

Loading mirror speeds from cached hostfile

Skipping filters plugin, no data

Setting up Update Process

Resolving Dependencies

Skipping filters plugin, no data

--> Running transaction check

---> Package httpd.ppc 0:2.4.25-1 will be updated

---> Package httpd.ppc 0:2.4.27-1 will be an update

--> Finished Dependency Resolution

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Updating:

httpd ppc 2.4.27-1 AIX_Toolbox_local 3.9 M

Transaction Summary

===================================================================================

Upgrade 1 Package

Total size: 3.9 M

Is this ok [y/N]: y

Downloading Packages:

Running Transaction Check

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Warning: RPMDB altered outside of yum.

Updating : httpd-2.4.27-1.ppc 1/2

warning: /opt/freeware/etc/httpd/conf/httpd.conf created as /opt/freeware/etc/httpd/conf/httpd.conf.rpmnew

Cleanup : httpd-2.4.25-1.ppc 2/2

Package httpd: merging configuration for file "/opt/freeware/etc/httpd/conf/httpd.conf":

By default, RPM would keep your local version and rename the new one to /opt/freeware/etc/httpd/conf/httpd.conf.rpmnew

What do you want to do ?

- diff the two versions (d)

- do the default RPM action (q)

- install the package's version (i)

- merge interactively with vim (v)

- background this process and examine manually (z)

Your answer ? z

Type 'exit' when you're done

# exit

By default, RPM would keep your local version and rename the new one to /opt/freeware/etc/httpd/conf/httpd.conf.rpmnew

What do you want to do ?

- diff the two versions (d)

- do the default RPM action (q)

- install the package's version (i)

- merge interactively with vim (v)

- background this process and examine manually (z)

Your answer ? q

Choosing RPM's default action.

Running post transaction command: touch /tmp/httpd-installed

Updated:

httpd.ppc 0:2.4.27-1

Complete!


remove-with-leaves:
removes any unused dependencies that were brought in by an install and helps to keep a system clean of unused libraries and packages.

This plugin adds the --leaves-exclude-bin & --remove-leaves options to the remove/erase command.

To enable this plugin install yum-plugin-remove-with-leaves package.

# yum -y remove --remove-leaves httpd

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, list-data, local, merge-conf, post-transaction-actions,

: protectbase, ps, remove-with-leaves, rpm-warm-cache, show-leaves, tmprepo, tsflags, verify, versionlock

Setting up Remove Process

Resolving Dependencies

--> Running transaction check

---> Package httpd.ppc 0:2.4.27-1 will be erased

--> Finished Dependency Resolution

Checking allo_downgrade

False

removing openldap-2.4.40-2.ppc. It is not required by anything else.

--> Running transaction check

---> Package openldap.ppc 0:2.4.40-2 will be erased

--> Finished Dependency Resolution

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Removing:

httpd ppc 2.4.27-1 @AIX_Toolbox 13 M

openldap ppc 2.4.40-2 @AIX_Toolbox 13 M

Transaction Summary

===================================================================================

Remove 2 Packages

Installed size: 26 M

Downloading Packages:

Running Transaction Check

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Erasing : httpd-2.4.27-1.ppc 1/2

Erasing : openldap-2.4.40-2.ppc 2/2

Running post transaction command: echo "Removed httpd"

Removed httpd

Running post transaction command: echo "Removed openldap"

Removed openldap

Removed:

httpd.ppc 0:2.4.27-1 openldap.ppc 0:2.4.40-2

Complete!

# yum -y remove --remove-leaves --leaves-exclude-bin httpd

Loaded plugins: aliases, allowdowngrade, basearchonly, changelog, downloadonly, fastestmirror, filter-data, keys, list-data, local, merge-conf, post-transaction-actions,

: protectbase, ps, remove-with-leaves, rpm-warm-cache, show-leaves, tmprepo, tsflags, verify, versionlock

Setting up Remove Process

Resolving Dependencies

--> Running transaction check

---> Package httpd.ppc 0:2.4.27-1 will be erased

--> Finished Dependency Resolution

Checking allo_downgrade

False

Dependencies Resolved

===================================================================================

Package Arch Version Repository Size

===================================================================================

Removing:

httpd ppc 2.4.27-1 @AIX_Toolbox 13 M

Transaction Summary

===================================================================================

Remove 1 Package

Installed size: 13 M

Downloading Packages:

Running Transaction Check

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Erasing : httpd-2.4.27-1.ppc 1/1

Running post transaction command: echo "Removed httpd"

Removed httpd

Removed:

httpd.ppc 0:2.4.27-1

Complete!

New leaves:

openldap.ppc


Unsupported and future availability list

As mentioned, not all utilities and plugins which are provided on linux doesn’t work on AIX.

Here is the list of of Unsupported and future availability list.

Unsupported

fs-snapshot

Works on linux where btrfs filesystem is supported.

auto-update-debug-info

Works on debuginfo packages which aren’t provided on AIX Toolbox.

kernel-module

Works on linux where their is a separate package for the kernel module is supported. Not include as part of the redhat yum-utils SPEC file to build this plugin.

upgradehelper

This plugin is used to help upgrades to the next distribution version.

AIX doesn't have the distribution model.

refreshupdatesd

This is used in linux system where GUI based tool is used to display and update packages.

Future availability

puppetverify

Can be made available once puppet is added to AIX Toolbox.

security

AIX don’t have same mechanism used in other Linux distros for security updates.

References

http://yum.baseurl.org/wiki/YumUtils

http://man7.org/linux/man-pages/man1

https://jsmith.fedorapeople.org/drafts/SMG/html/Software_Management_Guide

https://wiki.centos.org/PackageManagement/Yum/

0 comments
67 views

Permalink