Downgrade o cambio de versión de PHP

PHP choiceInteresante post, éste, que explica cómo cambiar la versión de PHP con un ejemplo real, ya sea, haciendo un downgrade de la versión de PHP o instalando a una versión concreta. Este ejemplo está ejecutando en una máquina con CentOS 6.3 64 bits, con el repositorio de remi instalado.

Primero, podemos ver qué versión tenemos.

# php -v
PHP 5.4.11 (cli) (built: Jan 16 2013 16:51:38)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies

Con yum, podemos, a continuación, ver qué versiones tenemos disponibles en los diferentes repositorios.

# yum –showduplicates list php
Available Packages
php.x86_64               5.3.3-3.el6_2.8                                                   base
php.x86_64               5.3.3-14.el6_3                                                    updates
php.x86_64               5.4.10-1.el6.remi                                                remi
php.x86_64               5.4.11-1.el6.remi                                                remi

Continuar leyendo «Downgrade o cambio de versión de PHP»

Balanceador de carga con LVS y Piranha

cloud computingEn este artículo veremos cómo configurar un balanceador de carga con LVS y Piranha, en un servidor CentOS, con un único router LVS. Hay muchos artículos por Internet que explican cómo hacerlo con 2 routers, para conseguir así tener alta disponibilidad en el balanceador, pero no siempre se disponen de dos máquinas para conseguir la alta disponibilidad. Como añadido, el servicio a balancear será MySQL, no Apache como suele ser habitual.

Para el test, los sevidores tienen las siguientes características, además de selinux deshabilitado e iptables configurado:

Hostname: balancer
IP: (eth0) 192.168.2.228. Default gw: 192.168.2.1

Hostname: mysql1
IP: (eth0) 192.168.2.241. Default gw: 192.168.2.1

Hostname: mysql2
IP: (eth1) 192.168.2.242. Default gw: 192.168.2.1

Continuar leyendo «Balanceador de carga con LVS y Piranha»

Yum rollback, undo o deshacer

Yum rollbackEn muchas ocasiones, hemos de actualizar o instalar nuevos paquetes en servidores críticos, que difícilmente podemos asegurar que no afectarán a nuestros servicios. Es posible que la nueva versión de PHP tenga alguna incompatibilidad con el código que usa la versión añeja que tiene el servidor, o que una nueva versión de openssh venga con un 0day.

¿Cómo podemos deshacer lo que acabamos de estropear con yum?

Afortunadamente, las últimas versiones de yum, vienen con una nueva funcionalidad que permite ver el histórico de ejecuciones, y lo más importante, volver atrás. Aquí lo explican en la documentación oficial.

Continuar leyendo «Yum rollback, undo o deshacer»

Añadir disco extra en Red Hat

Red HatEn entornos tanto físicos como virtuales, es común encontrarse con la necesidad de añadir un disco duro extra a un servidor tipo Red Hat. Éste proceso se puede hacer de diversas maneras, pero con cualquiera de ellas, se convierte en una tarea crítica, puesto que cualquier fallo nos puede provocar muchos problemas.

A continuación describo el proceso que a mi me funciona:

Identificar los discos, con

fdisk -l

Crear una partición primaria para el nuevo disco, en el ejemplo /dev/sda:

[root@USAFront2 dev]# fdisk /dev/sda
Orden (m para obtener ayuda): n
Acción de la orden
e Partición extendida
p Partición primaria (1-4)
p
Número de partición (1-4): 1
Primer cilindro (1-4865, valor predeterminado 1):
Se está utilizando el valor predeterminado 1
Last cilindro, +cilindros or +size{K,M,G} (1-4865, valor predeterminado 4865):
Se está utilizando el valor predeterminado 4865

Orden (m para obtener ayuda): w
¡Se ha modificado la tabla de particiones!

NOTA:
n Añade una nueva partición
w Escribe la tabla en el disco y sale

Continuar leyendo «Añadir disco extra en Red Hat»

Gestion de virtualización qemu-kvm

virtualizacionCon el comando «virsh» se pueden gestionar las máquinas virtuales en un entorno qemu-kvm. Para ello, únicamente tendremos que conectar, ya sea de forma remota o como en el ejemplo, de forma local, mediante virsh:

[root@server ]# virsh -c qemu:///system
Bienvenido a virsh, la terminal de virtualización interactiva.
Ingrese: ‘help’ para obtener ayuda con los comandos
‘quit’ para salir
virsh #

Continuar leyendo «Gestion de virtualización qemu-kvm»

¿Para qué sirve la tecla «Pet Sis»?

Kernel PanicHoy tengo el placer de publicar un post escrito por Gabriel Becerra Gottlieb especialmente para este blog. A disfrutarlo.

¿A cuántos de vosotros más de una vez se os ha quedado colgado un Linux y habéis tenido que hacerle un “botonazo”?
Pues debéis saber que Linux cuenta con la posibilidad de apagar el sistema de forma “segura” delante de un cuelgue inesperado o un kernel panic con las llamadas “Las Magic Keys o Claves Mágicas”.

Como todos sabemos, los kernel panic, son los sucesos más preocupantes en un Linux puesto que dependiendo del sistema de ficheros o volumen de información que se maneje, puede provocar una pérdida de información de muy difícil solución, aquí es donde entra esa tecla que acostumbra a pasar desapercibida en nuestros teclados, la tecla “Pet Sys” (en algunos teclados no existe como tal pero es la misma que la de “Impr Pant”). En muchas distribuciones vienen activadas por defecto, pero podéis activarlas en todas.

Continuar leyendo «¿Para qué sirve la tecla «Pet Sis»?»

Instalar y configurar un servidor LAMP

Hoy me lanzo a la piscina con un paso a paso para instalar un servidor LAMP (Linux, Apache, Mysql, Php) y realizar los primeros pasos, en entornos tipo servidor Red Hat (Fedora, CentOS, etc.). Hay muchas formas de hacer ésto, pero la descrita a continuación siempre me suele funcionar:

Primer paso, instalar todos los componentes con yum:

yum install -y httpd php mysql-server mysql php-mysql

Continuar leyendo «Instalar y configurar un servidor LAMP»

no acceptable C compiler found in $PATH

Intentando instalar los plugins de Nagios en una máquina «cliente» a monitorizar, es posible que nos encontremos con el siguiente error, tras ejecutar el ./configure:

[root@miserver nagios-plugins-1.4.15]# ./configure
checking for a BSD-compatible install… /usr/bin/install -c
checking whether build environment is sane… yes
checking for a thread-safe mkdir -p… /bin/mkdir -p
checking for gawk… gawk
checking whether make sets $(MAKE)… yes
checking build system type… x86_64-unknown-linux-gnu
checking host system type… x86_64-unknown-linux-gnu
checking for gcc… no
checking for cc… no
checking for cl.exe… no
configure: error: no acceptable C compiler found in $PATH
See `config.log’ for more details.
[root@miserver nagios-plugins-1.4.15]#

Este error es de por sí, bastante descriptivo; falta el compilador de C, concretamente, «gcc». En entornos Red Hat, bastará con usar yum para instalar gcc y solucionar así el problema:

[root@miserver nagios-plugins-1.4.15]# yum install gcc

En mi caso, gcc ha tenido las siguientes dependencias, también instaladas junto con gcc de forma automática:

  • cpp
  • glibc-devel
  • glibc-headers
  • kernel-headers

El propósito del post, es ver los paquetes imprescindibles a instalar para solucionar este problema.

Actualizar PHP en Red Hat 5

Para finalizar el año, veremos cómo actualizar PHP en un servidor Red Hat Enterprise 5.5.

En primer lugar miraremos qué versión de php tenemos, sin necesidad de usar phpinfo():

[root@miserver ~]# php -v
PHP 5.1.6 (cli) (built: Nov 13 2010 16:05:12)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies

A continuación instalaremos los repositorios de remi siguiendo los pasos descritos aquí:

[root@miserver ~]# wget http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
[root@miserver ~]# wget http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
[root@miserver ~]# rpm -Uvh remi-release-5*.rpm epel-release-5*.rpm

Continuar leyendo «Actualizar PHP en Red Hat 5»