Mantener un kernel de Linux actualizado es crucial para la seguridad, la compatibilidad de hardware y la optimización del rendimiento. Esta guía describe métodos confiables para actualizar el kernel en sistemas Ubuntu, atendiendo a diferentes casos de uso y niveles de experiencia.
¿Por qué actualizar el kernel?
Parches de seguridad: Mitigar vulnerabilidades.
Soporte de hardware: Habilitar dispositivos/características más nuevos.
Ganancias de rendimiento: Beneficiarse de las mejoras del programador/E/S.
Correcciones de estabilidad: Resolver errores a nivel de kernel.
⚠️ Precaución:
Pruebe las actualizaciones primero en entornos que no sean de producción.
Asegúrese de que los controladores críticos (por ejemplo, NVIDIA, ZFS) sean compatibles con el kernel de destino.
Siempre tenga un plan de respaldo/retroceso.
Método 1: Uso de repositorios oficiales de Ubuntu (Recomendado)
Mejor para: Kernels estables y probados con soporte a largo plazo (LTS).
Pasos:
Actualizar listas de paquetes:
bash
sudo apt update && sudo apt full-upgrade -y
Instalar el kernel HWE (Sistemas LTS):Para Ubuntu 22.04 LTS:
bash
sudo apt install --install-recommends linux-generic-hwe-22.04
Reiniciar y verificar:
bash
sudo reboot
uname -r # Comprobar la versión del kernel (por ejemplo, 6.5.x)
Método 2: Uso de Mainline Kernel PPA (Kernels más recientes)
Mejor para: Entusiastas que necesitan funciones de vanguardia.Riesgo: Menos probado; posibles problemas de compatibilidad.
Agregar Mainline PPA:
bash
sudo add-apt-repository ppa:cappelikan/ppa -y
sudo apt update
Instalar la herramienta GUI Mainline (Opcional):
bash
sudo apt install mainline
Iniciar a través de mainline para seleccionar/instalar kernels gráficamente.
O instalar a través de CLI:
bash
sudo apt install linux-image-unsigned--generic linux-headers--generic
(Reemplace con el kernel de destino, por ejemplo, 6.8.4)
Método 3: Compilación manual del kernel
Mejor para: Personalización o necesidades específicas de depuración.
Procedimiento:
Instalar dependencias:
bash
sudo apt install build-essential libncurses-dev bison flex libssl-dev libelf-dev
Descargar el código fuente del kernel:Visite kernel.org, descargue la fuente deseada (por ejemplo, linux-6.8.tar.xz).
Extraer y configurar:
bash
tar -xvf linux-6.8.tar.xz
cd linux-6.8
make menuconfig # Usar la configuración actual: /boot/config-$(uname -r)
Compilar e instalar:
bash
make -j$(nproc) # Compilar usando todos los núcleos
sudo make modules_install # Instalar módulos
sudo make install # Instalar el kernel
sudo update-initramfs -c -k 6.8.0 # Actualizar initramfs
sudo update-grub # Actualizar GRUB
sudo reboot
Plan de retroceso
Arrancar en el kernel anterior:
Mantenga Shift durante el arranque para acceder a GRUB → Seleccione el kernel anterior.
Eliminar el kernel problemático:
bash
sudo apt purge linux-image--generic
Verificación y mejores prácticas
Comprobar el kernel cargado: