The Issue:
Without unnecessary detail, I have two servers that are nearly identical. However one has its yum repos configured such that php 7.2 packages imagick and sodium are available for install, whereas the other doesn't.
Same exact kernel version:
CentOS Linux release 7.5.1804 (Core)
Similar PHP versions:
Server A:
PHP 7.2.18 (cli)
Server B:
PHP 7.2.20 (cli)
Server A:
$ sudo yum search sodium imagick
...
php72u-sodium.x86_64 : Wrapper for the Sodium cryptographic library
php72u-pecl-imagick.x86_64 : Provides a wrapper to the ImageMagick library
...
Server B:
$ sudo yum search sodium imagick
[only versions for php 7.3 and 7.4 shown]
I believe this is due to the configuration of the yum repos, in particular the ius
repo:
Server A:
$ sudo yum repolist
Loaded plugins: fastestmirror, replace
Loading mirror speeds from cached hostfile
* base: d36uatko69830t.cloudfront.net
* epel: iad.mirror.rackspace.com
* extras: d36uatko69830t.cloudfront.net
* ius: ius.mirror.constant.com <================ THIS ONE
* updates: d36uatko69830t.cloudfront.net
...
Server B:
$ sudo yum repolist
Loaded plugins: fastestmirror, replace
Loading mirror speeds from cached hostfile
* base: d36uatko69830t.cloudfront.net
* epel: dl.fedoraproject.org
* extras: d36uatko69830t.cloudfront.net
* updates: d36uatko69830t.cloudfront.net
...
So in short I need to figure out how to configure server B to have that same IUS repo (at the same version so it has PHP 7.2 packages available!)
Things I've Tried
- Installing the IUS repo from scratch following their instructions.
- Copying the full
/etc/yum.repos.d/
directory over from Server A to B, then running yum clean all
- Installing these modules manually with pecl
But none of these attempts worked. The results:
- The newest IUS which still didn't have these packages available.
- Didn't seem to make a difference (or maybe broke the IUS repo, I can't recall now).
- Pecl similarly didn't have the PHP 7.2 versions of these modules available.