Как мне обновить php на centOS?
У меня установлен php 5.1.6 на сервере centOS, и мне нужен как минимум 5.3.2 (но лучше установить последнюю доступную версию 5.*).
Если я бегу
yum update php
он говорит, что будет обновляться до 5.1.6-34.el5_8 (у меня это 5.1.6-27.el5_5.3)..... какого черта????
Существуют ли доступные пакеты для centOS THAT за текущей версией, или это потому, что по умолчанию yum будет обновляться только в рамках подрывной деятельности после второй точки (или чего-то еще), и мне нужно сообщить это, чтобы дать мне более свежую версию? Если да, то как мне это сделать?
4 ответа
Скорее всего, вы используете старую версию Centos (5.5 или даже более раннюю), в которой нет репозиториев PHP 5.2.x или 5.3.x. У вас есть 2 варианта: обновить Centos до более новой версии (5.6 - первая с PHP 5.3) или использовать http://iuscommunity.org/About
Да, насколько я помню, получение новой версии php на CentOs 5.x было очень болезненным.
В основном, в репозиториях обновлений есть пакет php53;
# cat /etc/redhat-release
CentOS release 5.8 (Final)
# repoquery -i php53
Name : php53
Version : 5.3.3
Release : 7.el5_8
Repository : updates
но если вы запустите что-то подобное;
# yum provides php
php-5.1.6-32.el5.x86_64 : The PHP HTML-embedded scripting language. (PHP: Hypertext Preprocessor)
php-5.1.6-34.el5_8.x86_64 : The PHP HTML-embedded scripting language. (PHP: Hypertext Preprocessor)
вы увидите, что php53
пакет на самом деле не предоставляет php, что означает, что при его установке будут нарушены все пакеты, которые зависят от php
, несмотря на наличие php в системе.
В конце я использовал shim rpm, который содержал только одну строку обеспечить, которую я нашел где-то в Интернете, потому что все мои требования к php были просты.
Альтернативы, такие как @ c2h5oh, упоминаются для использования сторонней перепакованной версии (или для обновления до Centos 6.2:-<).
Вы можете увидеть, что заменяет все php
с php53
сломается следующей командой;
# rpm --whatrequires -V php
Unsatisfied dependencies for pastebin-0.60-4.el5.noarch: php
Из результатов этой последней команды видно, что в моем случае я не использовал пакеты, требующие php
это было важно, так что я просто использовал --nodeps
заставить удалить весь php.
Ты можешь использовать yum shell
выполнить remove
(из php-*
) а также install
(из php53-*
) операции в одной транзакции.
Использование yum update
, затем yum upgrade
обновить CentOS до 5.8, затем повторите попытку yum update php