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

Centos обновляет PHP

Я занимаюсь решением множества проблем с безопасностью на сервере клиентов, чтобы привести их в соответствие с законами о кредитных картах и ​​т. Д.

Первым делом нужно перейти на php с 5.2.14 на 5.2.16.

Когда я запускаю yum update php, я получаю следующий результат:

Excluding Packages from CentOS-5 - Addons
Finished
Excluding Packages from CentOS-5 - Base
Finished
Excluding Packages from CentOS-5 - Extras
Finished
Excluding Packages from CentOS-5 - Updates
Finished
Setting up Update Process
No Packages marked for Update

Я новичок в CentOS, но с Debian / Ubuntu вы можете добавить PPA, чтобы разрешить новые пакеты программного обеспечения. Есть ли что-то подобное для CentOS? Этот вывод делает вид, что он также игнорирует все основные репозитории пакетов.

Я настоятельно рекомендую использовать Проект сообщества IUS репозитории для обновления вашего PHP 5.2 и даже пакетов PHP 5.3 на CentOS 5. Это набор очень хорошо поддерживаемых и высококачественных пакетов, используемых Rackspace и поддерживается, но не поддерживается ими (если, конечно, вы не клиент).

Инструкции по установке могут быть немного сложными, если вы новичок в этом. Вы ищете руководство по использованию клиента на их вики. Я продублирую инструкции здесь для удобства использования.

[root@linuxbox ~]# wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/x86_64/ius-release-1.0-6.ius.el5.noarch.rpm 

[root@linuxbox ~]# wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/x86_64/epel-release-1-1.ius.el5.noarch.rpm

[root@linuxbox ~]# rpm -Uvh ius-release*.rpm epel-release*.rpm

Это загружает и устанавливает оба EPEL и репозитории IUS для вас.

IUS обещает не использовать конфликтующие имена пакетов ни с одним из официальных репозиториев, включая EPEL (это отличная вещь), все не так просто, как yum upgrade php. Вам необходимо сначала удалить все существующие пакеты PHP и установить соответствующие из IUS. В качестве альтернативы вы можете использовать yum-plugin-replace плагин, чтобы добавить в YUM полезную возможность «замены».


Вручную

Первый:

[root@linuxbox ~]# rpm -qa | grep php

[root@linuxbox ~]# yum erase php
  • rpm -qa | grep php перечисляет каждый установленный пакет PHP. Вы будете использовать этот список для установки всех соответствующих индивидуальных пакетов PHP из IUS.
  • yum erase php команда просто стирает PHP и его зависимые пакеты

В заключение:

[root@linuxbox ~]# yum search php52

[root@linuxbox ~]# yum install php52 php52-common php52-pecl-apc php52-mysql ...
  • yum search php52 перечисляет доступные пакеты PHP 5.2
  • yum install устанавливает выбранные вами пакеты PHP 5.2. Вы можете использовать список, полученный на первом шаге, чтобы определить, что вам нужно

yum-plugin-replace

[root@linuxbox ~]# yum install yum-plugin-replace

[root@linuxbox ~]# yum replace php --replace-with php52

Это волшебным образом определит, какие пакеты PHP нужно удалить, и какие соответствующие пакеты php52 установить для вас.