Actualización Rápida del Kernel de CentOS 6.7 a la Versión 3.10.9

Introducción al Kernel

En los repositorios de ELRepo para yum, se encuentran disponibles dos versiones del kernel: mainline (3.13.1) y long-term (3.10.90). Dada la mayor estabilidad y soporte prolongado de la versión long-term, se recomienda utilizar el paquete kernel-lt.

Proceso de Actualización

Importación de la clave pública

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

Instalación de ELRepo

rpm -ivh http://www.elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm

Instalación del kernel-lt 3.10.90

La abreviatura "lt" corresponde a "long-term". Se recomienda instalar esta versión por su mayor estabilidad. La dirección de descarga alternativa es: http://pan.baidu.com/s/1eQuJkcU.

yum --enablerepo=elrepo-kernel install kernel-lt -y

Alternativamente, puedes instalar kernel-ml (ml = mainline) con el siguiente comando:

yum --enablerepo=elrepo-kernel install kernel-ml -y

Modificación del orden de arranque

Antes de la modificación:

[root@servidor ~]# vim /etc/grub.conf 

# grub.conf generado por anaconda
#
# Nota que no es necesario ejecutar grub después de modificar este archivo
# ADVERTENCIA: No tienes una partición /boot. Esto significa que
#              todas las rutas del kernel y initrd son relativas a /, por ejemplo.
#              root (hd0,0)
#              kernel /boot/vmlinuz-version ro root=/dev/xvda1
#              initrd /boot/initrd-[generic-]version.img
#boot=/dev/xvda
default=0
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.32-573.7.1.el6.x86_64)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.32-573.7.1.el6.x86_64 ro root=UUID=94e4e384-0ace-437f-bc96-057dd64f42ee rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
        initrd /boot/initramfs-2.6.32-573.7.1.el6.x86_64.img
title CentOS (2.6.32-431.23.3.el6.x86_64)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.32-431.23.3.el6.x86_64 ro root=UUID=94e4e384-0ace-437f-bc96-057dd64f42ee rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
        initrd /boot/initramfs-2.6.32-431.23.3.el6.x86_64.img

Después de la modificación:

[root@servidor ~]# vim /etc/grub.conf 

# grub.conf generado por anaconda
#
# Nota que no es necesario ejecutar grub después de modificar este archivo
# ADVERTENCIA: No tienes una partición /boot. Esto significa que
#              todas las rutas del kernel y initrd son relativas a /, por ejemplo.
#              root (hd0,0)
#              kernel /boot/vmlinuz-version ro root=/dev/xvda1
#              initrd /boot/initrd-[generic-]version.img
#boot=/dev/xvda
default=0
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
title CentOS (3.10.90-1.el6.elrepo.x86_64)
        root (hd0,0)
        kernel /boot/vmlinuz-3.10.90-1.el6.elrepo.x86_64 ro root=UUID=94e4e384-0ace-437f-bc96-057dd64f42ee rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
        initrd /boot/initramfs-3.10.90-1.el6.elrepo.x86_64.img
title CentOS (2.6.32-573.7.1.el6.x86_64)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.32-573.7.1.el6.x86_64 ro root=UUID=94e4e384-0ace-437f-bc96-057dd64f42ee rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
        initrd /boot/initramfs-2.6.32-573.7.1.el6.x86_64.img
title CentOS (2.6.32-431.23.3.el6.x86_64)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.32-431.23.3.el6.x86_64 ro root=UUID=94e4e384-0ace-437f-bc96-057dd64f42ee rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
        initrd /boot/initramfs-2.6.32-431.23.3.el6.x86_64.img

Antes de modificar, verifica la posición del nuevo kernel instalado y establece el valor de default (empezando desde 0). Generalmente, el kernel recién instalado ocupa la primera posición, por lo que se establece default=0.

Reiniciar para aplicar cambios

Versión del kernel antes de la actualización:

[root@servidor ~]# uname -a
Linux servidor 2.6.32-573.7.1.el6.x86_64 #1 SMP Tue Sep 22 22:00:00 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

Versión del kernel después de la actualización:

[root@servidor ~]# uname -a
Linux servidor 3.10.90-1.el6.elrepo.x86_64 #1 SMP Thu Oct 1 15:15:53 EDT 2015 x86_64 x86_64 x86_64 GNU/Linux

Otras fuentes de descarga de kernels

http://mirrors.neterra.net/

Posibles Problemas

Si después de actualizar el kernel de CentOS no puedes especificar el kernel del sistema durante el arranque, el problema podría deberse a una falta de sincronización entre /etc/grub.conf y /boot/grub/grub.conf (este último es el archivo que realmente se utiliza). Para solucionarlo:

cp -rf /boot/grub/grub.conf /etc/grub.conf

Etiquetas: centos Kernel linux ELRepo Actualización de sistema

Publicado el 6-30 03:08