
Estoy resolviendo un montón de problemas de seguridad en el servidor de un cliente para que cumplan con las leyes de tarjetas de crédito y demás.
La primera orden del día es obtener PHP de 5.2.14 a 5.2.16.
Cuando ejecuto yum update php, este es el resultado que obtengo:
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
Soy bastante nuevo en CentOS, pero con Debian/Ubuntu, puedes agregar PPA para permitir nuevos paquetes de software. ¿Existe algo similar para CentOS? Este resultado hace que parezca que también está ignorando todos los repositorios de paquetes principales.
Respuesta1
Recomiendo ampliamente usar elProyecto Comunitario IUSrepositorios para actualizar sus paquetes PHP 5.2 e incluso PHP 5.3 en CentOS 5. Estos son un conjunto de paquetes muy bien mantenidos y de alta calidad, utilizados porEspacio en racky mantenido,pero no es compatiblepor ellos (a menos que sea un cliente, por supuesto).
Las instrucciones de instalación pueden ser un poco difíciles de encontrar si eres nuevo en esto. Estas buscando elguía de uso del clienteen su wiki. Duplicaré las instrucciones aquí para facilitar su uso.
[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
Esto descarga e instala tanto elEPELy repositorios de IUS para usted.
IUS promete no utilizar nombres de paquetes conflictivos con ninguno de los repositorios oficiales, incluido EPEL (esto es genial), las cosas no son tan simples como yum upgrade php
. Primero deberá desinstalar todos los paquetes PHP existentes e instalar los apropiados desde IUS. Alternativamente, puede usar el yum-plugin-replace
complemento para agregar una útil capacidad de "reemplazar" a YUM.
A mano
Primero:
[root@linuxbox ~]# rpm -qa | grep php
[root@linuxbox ~]# yum erase php
rpm -qa | grep php
enumera cada paquete PHP instalado. Utilizará esta lista para instalar todos los paquetes PHP individuales apropiados de IUSyum erase php
El comando simplemente borra PHP y sus paquetes dependientes.
Finalmente:
[root@linuxbox ~]# yum search php52
[root@linuxbox ~]# yum install php52 php52-common php52-pecl-apc php52-mysql ...
yum search php52
enumera los paquetes PHP 5.2 disponiblesyum install
Instala los paquetes PHP 5.2 elegidos. Utilizaría la lista que obtuvo en el paso uno para determinar cuál necesita.
yum-plugin-reemplazar
[root@linuxbox ~]# yum install yum-plugin-replace
[root@linuxbox ~]# yum replace php --replace-with php52
Esto determinará mágicamente qué paquetes PHP borrar y qué paquetes php52 coincidentes instalar por usted.