[Debian-ha-maintainers] Bug#981088: pacemaker: crm shell can't be executed due to a library error

Thorsten Rehm thorsten.rehm at ionos.com
Thu Jan 28 13:52:57 GMT 2021


Hi Markus,

thank you for your reply.
I've installed a fresh Debian Stretch and I think I know why I had
such a problem. I believe it's a dependency problem, but I let you
decide, if this is the case.
We're always installing the packages "pacemaker" and "crmsh" on our
systems. As you know, the latter one has a dependency to the
"pacemaker-cli-utils" package:

$ apt-cache depends pacemaker | grep pacemaker-cli-utils
  Breaks: pacemaker-cli-utils
  Recommends: pacemaker-cli-utils
  Replaces: pacemaker-cli-utils

$ apt-cache depends crmsh | grep pacemaker-cli-utils
  Depends: pacemaker-cli-utils

This is the reason why we have the "pacemaker-cli-utils" package on
our systems. We didn't install it manually, it was installed due to
the dependency. So far so good.

After you provided the new package of pacemaker, I did the following:
$ apt install pacemaker crmsh

This will update the two packages to the new version, but it will not
update the package "pacemaker-cli-utils", but as you pointed out
correctly, the new version of this package is needed as well.

It could be, that I'm not fully understand the dependencies of
packages, but in my humble opinion:
If the "crmsh" package needs the "pacemaker-cli-utils" package and
installs it in the first place due to the dependency, it should also
update the dependency package if it needs the newer version.

Why not use "apt upgrade" and update all packages?
We have some company policies with an approval process to update our
systems including a maintenance window. I didn't want to just update
all non related packages to "hotfix" the pacemaker problem.

Why not "apt install pacemaker crmsh pacemaker-cli-utils"?
This didn't come to my mind in the first place, because we do not
install the pacemaker-cli-utils package as mentioned before. But this
fixes the issue of course.

In detail, a system with the pacemaker 1.1.16-1+deb9u2 Package installed:
$ apt-cache policy pacemaker crmsh pacemaker-cli-utils | grep -B1 -E
"Installed|Candidate"
pacemaker:
  Installed: 1.1.16-1+deb9u2
  Candidate: 1.1.24-0+deb9u1
--
crmsh:
 Installed: 2.3.2-4
  Candidate: 2.3.2-4+deb9u1
--
pacemaker-cli-utils:
  Installed: 1.1.16-1+deb9u2
  Candidate: 1.1.24-0+deb9u1

$ apt install pacemaker crmsh
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  libcib4 libcrmcluster4 libcrmcommon3 libcrmservice3 liblrmd1
libpe-rules2 libpe-status10 libpengine10 libstonithd2
  libtransitioner2
Recommended packages:
  fence-agents
The following packages will be upgraded:
  crmsh libcib4 libcrmcluster4 libcrmcommon3 libcrmservice3 liblrmd1
libpe-rules2 libpe-status10 libpengine10
  libstonithd2 libtransitioner2 pacemaker
12 upgraded, 0 newly installed, 0 to remove and 11 not upgraded.
Need to get 0 B/2,299 kB of archives.
After this operation, 241 kB of additional disk space will be used.
Do you want to continue? [Y/n]
[...]

$ apt-cache policy pacemaker crmsh pacemaker-cli-utils | grep -B1 -E
"Installed|Candidate"
pacemaker:
  Installed: 1.1.24-0+deb9u1
  Candidate: 1.1.24-0+deb9u1
--
crmsh:
  Installed: 2.3.2-4+deb9u1
  Candidate: 2.3.2-4+deb9u1
--
pacemaker-cli-utils:
  Installed: 1.1.16-1+deb9u2
  Candidate: 1.1.24-0+deb9u1

$ crm_mon --version
crm_mon: error while loading shared libraries: libpe_status.so.10:
cannot open shared object file: No such file or directory

$ apt install pacemaker-cli-utils
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be upgraded:
  pacemaker-cli-utils
1 upgraded, 0 newly installed, 0 to remove and 10 not upgraded.
Need to get 0 B/250 kB of archives.
[...]

$ crm_mon --version
Pacemaker 1.1.24
Written by Andrew Beekhof


Best regards,
Thosten



On Thu, 28 Jan 2021 at 00:26, Markus Koschany <apo at debian.org> wrote:
>
> Hello,
>
> On Tue, 26 Jan 2021 08:24:19 +0100 Thorsten Rehm <thorsten.rehm at ionos.com>
> wrote:
> > Package: pacemaker
> > Version: 1.1.24-0+deb9u1
> > Severity: normal
> >
> > Dear Maintainer,
> >
> > thank you for the effort and the update.
> > Unfortunately there are still some problems with the updated version.
> >
> > I've just updated the pacemaker package from 1.1.16-1+deb9u2 to
> > 1.1.24-0+deb9u1. Afterwards parts of the Cluster Resource Manager
> > (crm) can't be executed due to a library error. TL;DR:
> > libpe_status.so.10 != libpe_status.so.16 and libpengine.so.10 !=
> > libpengine.so.16
>
> This can't be possible. You need to upgrade not only pacemaker but also all of
> its dependencies. They are all part of the same source package. I have
> tightened those dependencies explicitly. On my system crm_mon --version works
> as expected. The command is part of the package pacemaker-cli-utils.
>
> Regards,
>
> Markus
>
>
>
>
>



More information about the Debian-ha-maintainers mailing list