Назад | Перейти на главную страницу

yum конфликты зависимостей с уже установленным пакетом

Я хочу установить php 5.6 из веб-репозитория:

yum установить php56w php56w-opcache php56w-mysql php56w-mcrypt php56w-pdo php56w-xml

Одна из зависимостей - httpd:

Installing for dependencies:  httpd               x86_64     
2.2.15-31.el6.centos       updates       824 k

У меня уже установлен apache 2.4. Проблема в том, что имя пакета apache - httpd24-httpd

yum list installed | grep httpd
httpd24.x86_64       1-6.el6            @epel-httpd24                           
httpd24-apr.x86_64   1.4.8-2.el6        @epel-httpd24                           
httpd24-apr-util.x86_64
                     1.5.2-5.el6        @epel-httpd24                           
httpd24-httpd.x86_64 2.4.6-5.el6        @epel-httpd24                           
httpd24-httpd-tools.x86_64
                     2.4.6-5.el6        @epel-httpd24                           
httpd24-runtime.x86_64
                     1-6.el6            @epel-httpd24 

Как я могу сказать yum, что пакет, который вы ищете, действительно httpd24-httpd вместо того httpd? Проблема в том, что httpd как зависимость не может быть установлен из-за уже установленного httpd 2.4:

Transaction Check Error:
  file /etc/httpd/conf.d/README from install of httpd-2.2.15-31.el6.centos.x86_64 conflicts with file from package httpd24-httpd-2.4.6-5.el6.x86_64
  file /etc/httpd/conf.d/welcome.conf from install of httpd-2.2.15-31.el6.centos.x86_64 conflicts with file from package httpd24-httpd-2.4.6-5.el6.x86_64
  file /etc/httpd/conf/httpd.conf from install of httpd-2.2.15-31.el6.centos.x86_64 conflicts with file from package httpd24-httpd-2.4.6-5.el6.x86_64
  file /etc/httpd/conf/magic from install of httpd-2.2.15-31.el6.centos.x86_64 conflicts with file from package httpd24-httpd-2.4.6-5.el6.x86_64
  file /etc/httpd/logs from install of httpd-2.2.15-31.el6.centos.x86_64 conflicts with file from package httpd24-httpd-2.4.6-5.el6.x86_64
  file /etc/httpd/modules from install of httpd-2.2.15-31.el6.centos.x86_64 conflicts with file from package httpd24-httpd-2.4.6-5.el6.x86_64
  file /etc/httpd/run from install of httpd-2.2.15-31.el6.centos.x86_64 conflicts with file from package httpd24-httpd-2.4.6-5.el6.x86_64

Любое решение для этого будет оценено. Я думаю, что одним из способов является переименование пакетов; однако я не знаком с этим процессом (если возможно).

Webtatic php56w в CentOS 5 и 6 скомпилирован только для поддержки базовых пакетов httpd 2.2. Это потому, что mod_php скомпилирован против httpd базового дистрибутива.

Я бы предложил либо:

  • используя CentOS 7, где php56w поддерживает httpd 2.4
  • или, придерживаясь CentOS 6, используя php56w-fpm вместо php56w, который его интерфейс fastcgi поддерживается модулем httpd 2.4 mod_proxy_fcgi