Como Actualizar el Kernel de Linux en las Ediciones LTS de Ubuntu

Muy buenas lector, si eres usuario de las verisones LTS o Long Term Support, seguramente sabrás que, al disponer de un ciclo de vida más largo (concretamente 5 años) que las versiones regulares, cada cierto tiempo se publican imágenes de descarga en forma de Point Release que engloban todas las actualizaciones y parches habidos hasta la fecha.

Debido a su ciclo de vida más extenso, es de suponer que el Kernel con el que nace, a lo largo de los 5 años de vida de estas ediciones se irá quedando obsoleto en muchos aspectos. En esta guía verás como actualizar el Kernel de Linux y el stack gráfico en estas ediciones de Ubuntu. Empezemos

En este post verás:

¿Cómo sé la Versión del Kernel que Tengo?

Obviamente, antes que explicar nada, es importante que sepas que versión del kernel tienes y cual es la arquitectura de tu sistema. Si eres un usuario algo avanzado, es muy probable que sabiendo la versión de Ubuntu de que dispones, ya sepas la versión del Kernel que lleva. Aun así, si no eres un usuario tan experimentado es posible que sea algo que desconozcas.

Bien, aparte de revisar las notas oficiales de tu versión, esta información la puedes conocer con un simple comando de terminal. Para ello, tan solo abre una ventana de terminal y teclea la siguiente sentencia:

uname -a

La salida del comando te informará no sólo de la versión del kernel, sino también de la arquitectura de tu sistema (generalmente 32 bits o 64 bits).

Hay muchos más comandos que te pueden servir para esto, así que si quieres profundizar más en ello, te dejo con este post en el que conocerás con más detalle cuales son los comandos más utiles a la hora de extraer información de tu sistema. Ahora si que, hecho este pequeño paréntesis, podemos pasar a lo que nos interesa.

Que es el Hardware Enablement Stack de las LTS

Cada versión LTS de Ubuntu dispone de un total de 5 revisiones o Point Releases (en la LTS actual se corresponderian con la 14.04.1, 14.04.2, y así sucesivamente hasta la 14.04.5).

Hasta la 12.04, estas imágenes no eran más que la versión inicial con todos los parches aplicados hasta la fecha con el único objetivo de ofrecer una imagen actualizada de fábrica por tal de reducir el número de actualizaciones a instalar en cada nueva instalación.

Con el estreno de Ubuntu 12.04 esta situación cambio sensiblemente de modo que ahora, a partir de la segunda Point Release (.2) de cada LTS y en adelante hasta la quinta y última, cada una de ellas incluye un Kernel y Stack gráfico actualizado que coincide con el de la versión de Ubuntu más reciente.

A este Upgrade del núcleo y del servidor X en las versiones LTS lo denominan Hardware Enablement Stack o HWE y básicamente persigue el objetivo de mantener el soporte de nuevos dispositivos en aquellas nuevas instalaciones de cada nueva revisión de una LTS.

Para explicarlo de un modo resumido, tendríamos que, en el caso de la última LTS, la 14.04 la situación seria la siguiente:

  • Ubuntu 14.04 y 14.04.1 – kernel 3.13
  • Ubuntu 14.04.2 – kernel y servidor X corresponidente a la release 14.10
  • Ubuntu 14.04.2 – kernel y servidor X correspondiente a la release 15.04
  • Ubuntu 14.04.4 – kernel y servidor X correspondiente a la release 15.10
  • Ubuntu 14.04.5 – kernel y servidor X correspondiente a la release 16.04

De este modo se suelen presentar dos situaciones. Por un lado, si te descargas la imagen de la última revisión de tu Ubuntu LTS, actualmente la 14.04.4, esta te vendrá ya de forma predeterminada con el mismo kernel y stack gráfico de la última versión de Ubuntu, que en este caso concreto adopta la versión 4.2 del núcleo.

Por otro lado, si ya tenias instalada la versión pero has ido aplicando los parches regularmente, automáticamente tu versión ya será la correspondiente a la última revisión, pero NO se hará un Upgrade del Kernel ni del servidor gráfico, que seguirán siendo los correspondientes a la versión que instalaste.

Esto es algo lógico, puesto que en una versión estable y destinada a entornos de producción, el que las actualizaciones regulares incluyeran un cambio de versión de Kernel sería asumir un cierto riesgo nada deseable en una versión en la que justamente se supone que debe primar la estabilidad por encima de cualquier otra cosa (ya conoces el dicho de que si algo funciona no lo toques).

Aun así, en una instalación de cero, que el Kernel de una versión LTS venga actualizado según la última versión estable no es algo tan descabellado, sobretodo teniendo en cuenta que el ciclo de vida de dichas versiones es de 5 años y que en muchos casos, el núcleo que viene en la versión inicial no se corresponde con una versión del kernel con soporte extendido.

Por lo tanto, si bien como recomendación personal diría que, si quieres disfrutar de un kernel más nuevo en tu LTS, siempre será mejor descargarte la imagen de cero de la última Point Release, si prefieres mantenerte en tu instalación pero quieres probar que tal funciona el nuevo kernel y stack gráfico, también tienes la posibilidad de hacerlo.

A continuación te presento las opciones que tienes bajo mi punto de vista a la hora de actualizar el núcleo del sistema. Te los he ordenado de menos a más riesgo desde el punto de vista de la estabilidad y el buen funcionamiento del conjunto. Ahí van:

Opción 1: Instalar la Imagen de Ubuntu 14.04.X desde Cero

Esta es la opción menos arriesgada, pero por otro lado te obliga a instalar Ubuntu de nuevo. En un entorno de producción en el que debe primar la máxima estabilidad, esta es la opción que te recomiendo (sin contar la alternativa de mantenerte en la versión actual del kernel y limitarte a ir aplicando las sucesivas actualizaciones de seguridad).

En este caso no estaríamos hablando de actualizar el kernel, sino más bien de instalar una nueva versión de Ubuntu, ya que el nuevo kernel junto con todos los parches correspondientes ya vienen en la imagen del sistema que nos descargamos.

Digamos que la única contrapartida es justamente esta, que requiere instalar el sistema de cero, con todo el trabajo de puesta a punto que ello conlleva. Aun así, si en su momento ya optaste por separar la partición Home del sistema, te ahorrarás un buen montón de trabajo a la hora de traspasar archivos, carpetas, etc.

Si quieres ir sobre seguro, esta es y será siempre la mejor opción y desde luego es con la que yo me quedo y la que te recomiendo. De hecho, implicitamente es lo que recomiendan los propios desarrolladores de Ubuntu al no hacer un Upgrade de versión automáticamente en las instalaciones existentes.

El hecho de descargar e instalar la ultima Point Release desde cero o quedarte con la instalación en la que estabas depende de ti. Si con el kernel original vas bien, no hay necesidad de tocar nada, pero de lógica una versión más nueva siempre contará con un mejor soporte de hardware, por lo que la decisión es tuya.

En caso de que optes por esto, lo único que tienes que hacer es descargar la imagen correspondiente a la nueva revisión, instalarla y listo. A continuación te dejo el enlace de descarga correspondiente a la ultima revisión de la LTS actual, la 14.04.4, la cual viene con el kernel 4.2.

DESCARGA:    http://cdimage.ubuntu.com/releases/14.04.4/release/

Opción 2: Activar el HWE de tu LTS en cada Nueva Revisión

En caso de que hayas optado por no hacer una instalación de cero, sino por activar el nuevo HWE de tu edición LTS según la Point Release más reciente, lo que debes hacer es basicamente instalar una serie de paquetes a través de la terminal y listo.

Lo único que debes tener en cuenta es que, dependiendo de la versión de Ubuntu de la que deriva el kernel y stack gráfico, el nombre cambiará sensiblemente acorde a la versión de Ubuntu de la que se han tomado y adaptado los paquetes.

A continuación te dejo la sentencia que debes aplicar en el caso de Ubuntu 14.04.4, que recoge la base de la 15.10, de nombre clave Wily Werewolf:

sudo apt-get install --install-recommends linux-generic-lts-wily xserver-xorg-core-lts-wily xserver-xorg-lts-wily xserver-xorg-video-all-lts-wily xserver-xorg-input-all-lts-wily libwayland-egl1-mesa-lts-wily

Hecho esto, lo único que queda por hacer es reiniciar el sistema y listo. Lo que si sería bueno hacer una vez reiniciado el sistema, es comprobar si existen paquetes por actualizar. para ello puedes valerte de:

sudo apt-get update

Si existen paquetes por actualizar, puedes idescargarlos e instalarlos con:

sudo apt-get upgrade

Y con esto se puede decir que ya tendrás tu LTS a la última en cuestión de nucleo y servidor gráfico. Otra cosa que sería bueno hacer es comprobar hasta cuando está soportado tu actual stack gráfico o HWE. Esto puedes hacerlo tanto antes como después de la instalación con el siguiente comando.

hwe-support-status --verbose

Esto te dará una información valiosa a la hora de determinar si actualizar o no.

Alternativa más Arriesgada: Instalar el ultimo Kernel por tu Cuenta

Existe otra opción, en el otro extremo, que consiste básicamente en “pasar” de los HWE de las LTS y optar por instalar el último kernel a cuenta y riesgo de cada uno. Esto significa en cierto modo “romper” con la base oficial de Ubuntu y adentrarte en un terreno distinto que puede llegar a ser bastante más movedizo, aunque si de lo que se trata es de experimentar, de eso es de lo que más se aprende.

En este caso, instalaremos el último kernel mediante PPA. Pongamos por ejemplo que queremos probar la versión 4.4, la misma con la que viene la recién estrenada 16.04 LTS. Lo primero que tenemos que hacer es dirigirnos a la siguiente URL correspondiente al PPA del Ubuntu Kernel Team.

http://kernel.ubuntu.com/~kernel-ppa/mainline/

En ella se van subiendo todas las versiones y revisiones del Kernel de Linux que se van probando por parte de los desarrolladores del equipo del Kernel en Ubuntu. Como verás, están prácticamente todas desde la 2.6.24 hasta la más reciente.

PPA Ubuntu Kernel Team

Obviamente, de los tres métodos para hacer un upgrade del Kernel en las versiones LTS de Ubuntu, ya sabemos que este es el más arriesgado y el último al que deberíamos recurrir (más aun si estamos en un entorno de producción). En otras palabras, que si queremos seguir adelante podemos hacerlo, pero teniendo en mente el riesgo que supone.

Antes que nada, y como pequeño recordatorio, es importante que sepas cual es la versión del Kernel de que dispones en este momento. Si no lo sabes, en la primera parte del post te explico como conocerlo. Es importante que te hayas fijado también en la arquitectura de tu sistema (32 o 64 bits) puesto que dependiendo de ella necesitaremos un paquete u otro.

Dicho esto, suponemos que estamos en un entorno de pruebas y asumimos el riesgo. En este caso podemos proceder. Lo que nos toca hacer ahora es buscar la carpeta correspondiente a la versión del Kernel que queremos instalar. En mi caso me encuentro actualmente en Ubuntu 14.04.4 LTS (kernel 4.2) y voy a intentar instalar la versión 4.4 (la que lleba Ubuntu 16.04 LTS y que previsiblemente también tendremos en Ubuntu 14.04.5 LTS)

PPA Ubuntu Kernel Team v4.4.8

Lo que ves en la captura de arriba son los diferentes paquetes .deb (correspondientes a las diferentes arquitecturas disponibles) dentro del directorio de la versión del kernel que hayas seleccionado (en este caso son los paquetes correspondientes a la v4.4.8, la ultima revisión que he encontrado de la rama 4.4.

Si tu sistema es de 32 bits, deberás buscar los los archivo correspondientes a la arquitectura i386, mientras que si es de 64 bits, debemos fijarnos en aquellos con la terminación amd64. Los archivos a descargarnos son basicamente 3, en este caso, suponiendo que disponemos de un sistema de 64 bits, seran los siguientes:

linux-headers-4.4.8-040408-generic_4.4.8-040408.201604200335_amd64.deb
linux-headers-4.4.8-040408_4.4.8-040408.201604200335_all.deb
linux-image-4.4.8-040408-generic_4.4.8-040408.201604200335_amd64.deb

Ten en cuenta que la numeración variará en caso de que optes por descargarte otra versión del Kernel. Llegados a este punto, puedes optar por descargarte los paquetes desde la misma web, y posteriormente instalarlos mediante dpkg, o bien añadir los repositorios vía consola.

ESTO CONTINUA EN BREVE!!!

Por cierto, si en algun momento recibes una alerta indicando que te has quedado sin espacio en la partición Boot (algo que puede llegar a ser frecuente cuando en el momento de instalar el sistema optaste por utilizar LVM), en este post que te enlazo a continuación tienes explicado como puedes liberar espacio es Boot eliminando paquetes de Kernels antiguos.

Esto Termina Aquí

Y basicamente eso es todo. Como ves, hacer un upgrade del nucleo y servidor gráfico en las ediciones LTS es relativamente fácil grácias al mecanismo de Hardware Enablement Stack.

Tienes la opción más conservadora (que basicamente consiste en descargar la nueva imagen) y la opción de hacer el upgrade a partir de tu instalación existente, lo cual siempre entraña algo más de riesgo. Próximamente ampliaré esta guía con la alternativa de actualizar el nucleo por tu cuenta sin utilizar el HWE.

Espero que te haya sido util el post y para cualquier duda, aclaración o corrección te espero en los comments justo debajo. Hasta pronto:)

Anuncios

4 comentarios en “Como Actualizar el Kernel de Linux en las Ediciones LTS de Ubuntu

  1. Hola.soy inexperto en este tipo de cosas y tengo muchas dudas. Te quería comentar lo que me pasó y si podrías ayudarme a resolverlo, ya que he leído y experimentado mucho con cosas que encontré en la web para solucionarlo y no lo logré.
    Uso una computadora de escritorio y sólo tengo instalado ubuntu 14.04.5 lts .Hace unos días en una de las actualizaciones que regularmente me pedia acepté y al reinicirla la pantalla quedó gris y desde ahí que no puedo acceder al escritorio ni nada. sólo a la terminal donde he estado experimentando con lo que he leído para ver si “magicamente” revertía lo sucedido y… nada.
    Ya estoy un poco frustrado para no decir bastante y tirar la cpu por la ventana.
    Desde ya gracias

    Me gusta

    • Puede ser que se haya actualizado el kernel sin tu revision, y tu stack grafico no lo soporte(por eso la pantalla negra) me paso lo mismo que a ti, lo que hice fue arrancar desde mi antiguo kernel mediante el grub, haci lo solucione, suerte.

      Me gusta

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s