¿Cómo uso apt-get para actualizar al último kernel?

21

Mi kernel actual es 3.2.0-26 (mi computadora principal), mientras que en otra de mis computadoras Ubuntu, con la que no violé las actualizaciones no oficiales, es 3.2.0-30. Sin embargo, el Administrador de actualizaciones en mi computadora principal no muestra las actualizaciones disponibles del núcleo. Sin embargo, muestra otras actualizaciones.

Sospecho que se debe al hecho de que en el pasado instalé varias versiones principales del núcleo (versiones no recomendadas), hasta 3.5 * series.

Lo que busco: o bien: arreglar las actualizaciones automáticas del kernel. O bien: conozca una forma de verificar la última versión oficial del núcleo de ubuntu y obtenerla manualmente (sé cómo instalar los núcleos desde debs)

Lo que ya he intentado: núcleos no utilizados desinstalados, incluido "el genérico sin número" según /ubuntu//a/103875/29347 y luego también https://ubuntugenius.wordpress.com/2011/01/ 08 / ubuntu-cleanup-how-to-remove-all-unused-linux-kernel-headers-images-and-modules /

Bucic
fuente

Respuestas:

14

Su problema con las actualizaciones automáticas puede deberse a los núcleos de la línea principal o porque eliminó el paquete "genérico".

Puede actualizar al kernel más reciente de la apt-getsiguiente manera:

sudo apt-get update
sudo apt-get install linux-image-`uname -r`

Si también necesita los encabezados (para compilar módulos del núcleo, como los controladores inalámbricos):

sudo apt-get install linux-headers-`uname -r`
ish
fuente
77
El retorno que obtengo es 'linux-image-3.2.0-26-generic ya es la versión más nueva'. mientras que de hecho no lo es (vea la pregunta original). ¿Estás seguro de que me diste los comandos de terminal correctos? No soy un experto en el tema, pero para mí los comandos se traducen como "actualizar el kernel a la misma versión que ya instaló y usa".
Bucic
77
¿Podría explicar qué se supone que debe hacer esto? linux-image-`uname -r`solo intenta reinstalar el kernel que ya tiene, entonces, ¿cómo es eso útil de alguna manera?
Asad Saeeduddin
3

En caso de que solo desee actualizar el kernel predeterminado, debería poder solucionarlo con:

sudo apt-get install linux-image-generic

Como linux-image-genericsiempre depende del núcleo predeterminado más nuevo de su distribución, el núcleo se actualiza con el resto de los paquetes cuando se ejecuta apt-get upgrade.

Cuando desee actualizar un núcleo no predeterminado, puede hacerlo ejecutando este script:

#!/usr/bin/env bash

sudo apt-get update
kernel_release="$(uname -r | cut --complement -d'.' -f3)"
kernel_release_versions="$(apt-cache search linux-image-${kernel_release})"
kernel_release_versions_generic="$(grep linux-image-"${kernel_release_version}".*-generic <<< "$kernel_release_versions")"
newest_kernel_of_release="$(echo "$kernel_release_versions_generic" | tail -n1 | cut -d' ' -f1 )"

sudo apt-get install $newest_kernel_of_release

sudo apt-get dist-upgrade

Si también necesita los archivos de encabezado, ejecute adicionalmente lo siguiente:

newest_kernel_of_release_headers=${newest_kernel_of_release/image/headers}

sudo apt-get install $newest_kernel_of_release_headers
usuario6105651
fuente
1
Creo que OP está buscando la última línea principal / kernel estable
WinEunuuchs2Unix