Cuando llevas tiempo administrando servidores Linux te sucede que algunos clientes por antigüedad tienen aun una instalación de 32bits que no llegó a realizarse por algún motivo o luego se mejoró el hardware con nuevos procesadores con soporte de 64bits. Y para poder gestionar más de tres Gigabytes de memoria y mejorar el rendimiento,es necesario,actualizarlo a los 64bits para sacar el mayor rendimiento al hardware.

En proceso de migración de un sistema Gentoo de 32Bits a 64Bits existen varias formas de realizar lo, nosotros creamos un chroot con todo el sistema desde cero y luego vamos copiando la configuración. Esto nos permitirá actualizar el servidor sin apenas tiempo de desconexión.

Pasos previos:

  • Actualizar el portage, emerge e instalar el ultimo kernel estable
emerge –-sync
emerge -1 portage
emerge gentoo-sources

Creando el compilador de 64Bits (Cross Compiler)
El primer proceso en la migración a 64Bits es la instalación de un compilador que permita generar código de otra plataforma, para ello necesitamos las utilidades de crossdev.

emerge -1 crossdev
mkdir /usr/local/portage

Añadimos en /etc/make.conf o /etc/portage/make.conf
PORTDIR_OVERLAY=”/usr/local/portage”

Y compilamos el compilador y su entorno.
crossdev -S -s1 --target x86_64-pc-linux-gnu

Compilamos el kernel y lo activamos en nuestro gestor arranque (grub / lilo)

make ARCH=x86_64 oldconfig
make ARCH=x86_64 CROSS_COMPILE=x86_64-pc-linux-gnu-

Y nos acordamos de activar “IA32 Emulation” y ajustar también los cambios pertinentes del nuevo kernel o requerimientos del udev u otros.
Reiniciamos la máquina y ya tendremos el kernel de 64bits funcionando con el resto de aplicaciones de 32bits.


Descargamos el stage3 apropiado y creamos un entorno en /mnt/64bits

Creamos un directorio en /mnt/64bits y descomprimimos el stage3 actual y con chroot /mnt/64bits instalamos los programas necesarios y copiamos la configuración del sistema actual.

Acordarse de activar los nuevos valores del nuevo sistema en el make.conf CHOST y CFLAGS apropiados

CHOST="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=native -pipe"

 

cp /etc/locale.gen /mnt/64bits/etc/
cp /etc/localtime /mnt/64bits/etc/ mount -o bind /dev /mnt/64bits/dev
mount -o bind /proc /mnt/64bits/proc
mount -o bind /sys /mnt/64bits/sys
mount -o bind /usr/portage /mnt/64bits/usr/portage
chroot /mnt/64bits
source /etc/profile

Una vez instalados todos los programas requeridos reiniciamos el equipo y lo arrancamos con una sistema de rescate SystemRescueCD por ejemplo.
Movemos los directorios anteriores del sistema a /mnt/32bits por si tenemos que realizar una marcha atrás, y movemos el sistema de 64bits a su ubicación normal. Luego con reiniciar es suficiente para tener todo el sistema a 64bits con apenas tiempos de parada.

Referencias:

Publicado en Seguridad

En las estadísticas de apache del nuevo hosting del villarrealcf.com se puede apreciar que cuando un entrenador se va, sufre más el apache que cuando entra el nuevo entrenador.
Se puede ver la gráfica de los hits por segundo, pareque que hay mas morbo y causa mas repercusión mediática

expulsion nuevo entrenador 

Publicado en Blog