Score:0

Long-overdue "yum update" has multiple "requires" errors

cd flag

After much neglect of my VPS (currently running CentOS 7.4.1708), I tried to run yum update, but after a long list of "Processing Dependency..." lines, the end of the output looked like this:

...
---> Package nginx-mod-mail.x86_64 1:1.20.1-9.el7 will be an update
--> Processing Dependency: nginx(abi) = 1.20.1 for package: 1:nginx-mod-mail-1.20.1-9.el7.x86_64
---> Package nginx-mod-stream.x86_64 1:1.20.1-9.el7 will be an update
--> Processing Dependency: nginx(abi) = 1.20.1 for package: 1:nginx-mod-stream-1.20.1-9.el7.x86_64
--> Finished Dependency Resolution
Error: Package: libzip5-1.8.0-2.el7.remi.x86_64 (remi)
           Requires: libzstd(x86-64) >= 1.3.6
           Installing: libzstd-1.3.4-1.el7.x86_64 (MariaDB)
               libzstd(x86-64) = 1.3.4-1.el7
Error: Package: 1:nginx-1.10.2-1.el7.x86_64 (@epel)
           Requires: nginx-all-modules = 1:1.10.2-1.el7
           Removing: 1:nginx-all-modules-1.10.2-1.el7.noarch (@epel)
               nginx-all-modules = 1:1.10.2-1.el7
           Updated By: 1:nginx-all-modules-1.20.1-9.el7.noarch (epel)
               nginx-all-modules = 1:1.20.1-9.el7
Error: Package: 1:nginx-mod-stream-1.20.1-9.el7.x86_64 (epel)
           Requires: nginx(abi) = 1.20.1
Error: Package: libzip5-1.8.0-2.el7.remi.x86_64 (remi)
           Requires: libzstd(x86-64) >= 1.3.6
           Available: libzstd-1.3.4-1.el7.x86_64 (MariaDB)
               libzstd(x86-64) = 1.3.4-1.el7
Error: Package: 1:nginx-mod-http-image-filter-1.20.1-9.el7.x86_64 (epel)
           Requires: nginx(abi) = 1.20.1
Error: Package: 1:nginx-mod-mail-1.20.1-9.el7.x86_64 (epel)
           Requires: nginx(abi) = 1.20.1
Error: Package: 1:nginx-1.10.2-1.el7.x86_64 (@epel)
           Requires: nginx-filesystem = 1:1.10.2-1.el7
           Removing: 1:nginx-filesystem-1.10.2-1.el7.noarch (@epel)
               nginx-filesystem = 1:1.10.2-1.el7
           Updated By: 1:nginx-filesystem-1.20.1-9.el7.noarch (epel)
               nginx-filesystem = 1:1.20.1-9.el7
Error: Package: 1:nginx-mod-http-perl-1.20.1-9.el7.x86_64 (epel)
           Requires: nginx(abi) = 1.20.1
Error: Package: 1:nginx-mod-http-xslt-filter-1.20.1-9.el7.x86_64 (epel)
           Requires: nginx(abi) = 1.20.1
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

Web searches produced questions about specific errors about specific packages, but does that mean I have to figure out what to do about each of these one by one? Or is it safe to use --skip-broken like it says is an option?

I also have Webmin, and it says that 391 packages have updates, 35 of which are security updates. It is offering to update them, but can I trust it to not mess things up? I trust yum, but...

EDIT: I decided to go ahead and run yum update --skip-broken and let it do what it could. After the "Installed", "Dependency Installed", and "Updated" stages, this was the end of the output:

Skipped (dependency problems):
  gd.x86_64 0:2.0.35-27.el7_9                 libzip5.x86_64 0:1.8.0-2.el7.remi                  libzstd.x86_64 0:1.3.4-1.el7
  nginx-all-modules.noarch 1:1.20.1-9.el7     nginx-filesystem.noarch 1:1.20.1-9.el7             nginx-mod-http-image-filter.x86_64 1:1.20.1-9.el7
  nginx-mod-http-perl.x86_64 1:1.20.1-9.el7   nginx-mod-http-xslt-filter.x86_64 1:1.20.1-9.el7   nginx-mod-mail.x86_64 1:1.20.1-9.el7
  nginx-mod-stream.x86_64 1:1.20.1-9.el7      php-pecl-zip.x86_64 0:1.20.0-1.el7.remi.7.1

Replaced:
  grub2.x86_64 1:2.02-0.64.el7.centos             grub2-tools.x86_64 1:2.02-0.64.el7.centos       grub2-tools-efi.x86_64 1:2.02-0.64.el7.centos
  iwl7265-firmware.noarch 0:22.0.7.0-56.el7       python-parsedatetime.noarch 0:1.5-3.el7         python2-requests.noarch 0:2.6.0-0.el7

Complete!

And now the view in Webmin looks like this - 10 packages (and the 7 related to nginx are considered "security updates"):

enter image description here

Remi Collet avatar
jp flag
missing full yum output (especially for enabled repo and enabled plugins), BTW libzstd should be pulled from EPEL which have 1.5.2 (so something wrong with MariaDB repo)
cd flag
Sorry, I wouldn't know how to get you a full yum output - the SSH window doesn't hold that much. I suppose I could have directed it to a file, but then I wouldn't have been able to say yes when it asked if it can proceed to do the update. Anyway, I have now run it with `--skip-broken`, so that's water under the bridge (see EDIT). As for libzstd and EPEL, I've never heard of either of them (Google hits seem to think EPEL is a Fedora thing, not CentOS), so I have no idea how to do what you suggested.
cd flag
Hmm, I see in the Webmin view that the not-yet-updated packages related to nginx say their source is "Epel", so I guess I do have that - I don't remember installing it, but it has been a long time since I set this VPS up, and I'm probably not competent to be maintaining a server on my own - it's only out of necessity.
mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.