У меня есть выделенный сервер на Кимсуфи. Я пытаюсь обновить PHP 5.3 до PHP 5.5 на CentOS 6.7, используя это руководство, но, к сожалению, получаю следующие ошибки:
Error: Package: php-mysql-5.4.45-1.el6.remi.x86_64 (remi)
Requires: php-pdo(x86-64) = 5.4.45-1.el6.remi
Removing: php-pdo-5.3.3-27.el6.2.x86_64 (@LocalRepo)
php-pdo(x86-64) = 5.3.3-27.el6.2
Updated By: php-pdo-5.5.29-1.el6.remi.x86_64 (remi-php55)
php-pdo(x86-64) = 5.5.29-1.el6.remi
Available: php-pdo-5.4.44-1.el6.remi.x86_64 (remi)
php-pdo(x86-64) = 5.4.44-1.el6.remi
Available: php-pdo-5.4.45-1.el6.remi.x86_64 (remi)
php-pdo(x86-64) = 5.4.45-1.el6.remi
Available: php-pdo-5.5.28-1.el6.remi.x86_64 (remi-php55)
php-pdo(x86-64) = 5.5.28-1.el6.remi
Available: php54w-pdo-5.4.44-1.w6.x86_64 (webtatic)
php-pdo(x86-64) = 5.4.44-1.w6
Available: php55w-pdo-5.5.28-1.w6.x86_64 (webtatic)
php-pdo(x86-64) = 5.5.28-1.w6
Available: php56w-pdo-5.6.12-1.w6.x86_64 (webtatic)
php-pdo(x86-64) = 5.6.12-1.w6
Error: Package: php-pecl-apc-3.1.9-2.el6.x86_64 (@base)
Requires: php(api) = 20090626
Removing: php-common-5.3.3-27.el6.2.x86_64 (@LocalRepo)
php(api) = 20090626
Updated By: php-common-5.5.29-1.el6.remi.x86_64 (remi-php55)
php(api) = 20121113-64
Available: php-common-5.4.44-1.el6.remi.x86_64 (remi)
php(api) = 20100412-x86-64
Available: php-common-5.4.45-1.el6.remi.x86_64 (remi)
php(api) = 20100412-x86-64
Available: php-common-5.5.28-1.el6.remi.x86_64 (remi-php55)
php(api) = 20121113-64
Available: php54w-common-5.4.44-1.w6.x86_64 (webtatic)
php(api) = 20100412-64
Available: php55w-common-5.5.28-1.w6.x86_64 (webtatic)
php(api) = 20121113-64
Installing: php56w-common-5.6.12-1.w6.x86_64 (webtatic)
php(api) = 20131106-64
Error: Package: php-pecl-apc-3.1.9-2.el6.x86_64 (@base)
Requires: php(zend-abi) = 20090626
Removing: php-common-5.3.3-27.el6.2.x86_64 (@LocalRepo)
php(zend-abi) = 20090626
Updated By: php-common-5.5.29-1.el6.remi.x86_64 (remi-php55)
php(zend-abi) = 20121212-64
Available: php-common-5.4.44-1.el6.remi.x86_64 (remi)
php(zend-abi) = 20100525-x86-64
Available: php-common-5.4.45-1.el6.remi.x86_64 (remi)
php(zend-abi) = 20100525-x86-64
Available: php-common-5.5.28-1.el6.remi.x86_64 (remi-php55)
php(zend-abi) = 20121212-64
Available: php54w-common-5.4.44-1.w6.x86_64 (webtatic)
php(zend-abi) = 20100525-64
Available: php55w-common-5.5.28-1.w6.x86_64 (webtatic)
php(zend-abi) = 20121212-64
Installing: php56w-common-5.6.12-1.w6.x86_64 (webtatic)
php(zend-abi) = 20131226-64
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
Что они означают именно и как их исправить?
У вас есть конфликтующий репозиторий с именем webtatic
установлены. Удалите это репо (и все установленные из него пакеты).
Как только это будет сделано, запустите yum distro-sync
для синхронизации вашей системы с последними версиями пакетов, которые находятся в репозиториях.
На этом этапе вы можете установить любые дополнительные пакеты, которые вам нужны.
Для PHP 5.5 нет расширения APC, вместо этого вам следует перейти на Zend Opcache.
Я отправляю ответ Webtatic, поскольку являюсь его сопровождающим, и мне не нравится отсутствие закрепления пакетов старых RPM репозитория Remi и новых пакетов SCL. Первый способ прояснил бы и этот вопрос.
Поскольку у вас уже установлено репозиторий Webtatic, вы можете запустить:
yum install yum-plugin-replace
yum replace php-common --replace-with=php55w-common
yum install php55w-opcache
Это также можно решить другим способом, если вы хотите придерживаться репозитория Remi php55:
yum remove php-pecl-apc
yum update php*
yum install php-opcache