Slackware y demás GNU

martes, 27 de noviembre de 2007

COMPILAR KERNEL PARA OPENVZ











Soporte para:
OpenVZ, Virtuozzo, CCISS, SMP.


Primero que nada es importante destacar que solo lo he logrado realizar con el kernel 2.6.18, debido a que, las versiones superiores muestran multiples errores, es más, encontré un foro donde el gurú de los gurú, el padre del kernel, el Sr Linus Torvalds indicaba que el kernel 2.6.22 o superior eran muy jovenes para el uso de OpenVZ.



Descargar la carpeta con todos los archivos necesarios para la compilación y el parcheado del kernel para OpenVZ.


Descarga aquí.


Descomprime la carpeta en /usr/src/

Dentro de la carpenta encontraras el archivo correspondiente al kernel (linux-2.6.18.tar.gz)

Descomprimelo en /usr/src/

tar -xvvzf linux-2.6.18.tar.gz

Crea link simbólico

ln -s linux-2.6.18 linux

cd linux

Ejecuta los siguientes comandos para limpiar cualquier basura.

make mrproper && make clean

Copia el archivo de configuración que te dejé en la carpeta.

cp /usr/src/kernel_2.6.18_TODO/config-2.6.18 /usr/src/linux/.config

Verifica que se encuentre correctamente en la carpeta linux

ls -a

Copia el archivo patch-ovz028stab049.1-combined en linux/

cp /usr/src/kernel_2.6.18_TODO/patch-ovz028stab049.1-combined /usr/src/linux/

Parchear el kernel para OpenVZ

patch -p1 < patch-ovz028stab049.1-combined

Limpiar cualquier basura nuevamente.

make mrproper && make clean

Copia nuevamente el archivo de configuración que te dejé en la carpeta.

cp /usr/src/kernel_2.6.18_TODO/config-2.6.18 /usr/src/linux/.config

Carga el archivo .config al kernel con el siguiente comando

make menuconfig

make -j8 bzImage # la opcion -j8 se refiere al número de CPU puedes colocar -j2, -j4 según sea el caso.

make -j8 modules

make modules_install

cp System.map /boot/System.map-smp-2.6.18 && cp .config /boot/config-2.6.18

Copiando imagen del Kernel

cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.6.18

mv /boot/vmlinuz /boot/vmlinuz-old

cd /boot/

mv config config-old

ln -s config-2.6.18 config

mv System.map System.map-old

ln -s System.map-smp-2.6.18 System.map

ln -s vmlinuz-2.6.18 vmlinuz


Configuramos el LILO para el arranque de nuestro nuevo kernel

vi /etc/lilo.conf

------

image = /boot/vmlinuz-old

root = /dev/cciss/c0d0p2

label = Linux

read-only


image = /boot/vmlinuz

root = /dev/cciss/c0d0p2

label = OpenVZ

read-only

--------


Guardar los cambios para que actualice el MBR

lilo


Reinicia el servidor y luego seleccionas en el lilo la opción OpenVZ para usar tu nuevo kernel.