Опять коротенькая заметочка как это решать, пока все помню. Частенько возникают проблемы с зависимостями модулей между собой и какие-то модули не ставятся к другим версиям пхп после обновления пхп или даунгрейда (особенно него). Очень хорошо, когда описано из-за какого модуля проблема с зависимостями (к примеру, ругается на php-common, как было в моем случае — перед этим стоял php 8.0, а я даунгрейднул его до 7.4, так как все движки отказались работать на новом еще необкатанном пхп).
Дальнейшие действия делаем на свой страх и риск — может вообще все полететь и придется переустанавливать CentOS — это будет проще, чем решать ворох появившихся проблем. но если вам, как говорится, терять нечего, то вперед.
Соответственно, как решать — нужно удалить старый уже установленный модуль, который мешает, командой
yum remove name
, где name — имя неугодного модуля. Либо в некоторых случаях это name80, если ваша версия пхп 8.0, например — php-common80. А после этого установить уже нужную версию:
yum install name
например yum install php-common74 либо просто yum install php-common.
Если там опять проблемы с зависимостями, нужно удалить еще какой-то модуль и так далее. Пока не встанет необходимый модуль нужной версии.
Также частенько проблемы возникают при переходах с пхп5.6 на 7 версию, эти вообще меня замучали, пока наконец я не попробовал это решение — теперь счастлив.
UPD. Есть еще одна охрененная команда yum search название, которая показывает, какие пакеты с таким названием есть в используемых системой репозиториях.
Например,
Соответственно, при введении команды
yum install php80-php-opcache
мы сможем установить отдельный модуль под пхп8, а не тот, который пытается установиться по умолчанию под пхп5.6 версии.