¿Debo actualizar a los núcleos "mainline"?

61

Las versiones más recientes de la "línea principal" del núcleo están disponibles en el equipo del núcleo de Ubuntu , por ejemplo, 3.4 y 3.5, mientras que Ubuntu 12.04 está en 3.2.

  • ¿Cuáles son los núcleos principales?
  • ¿Son mejores que mi kernel existente?
  • ¿Cuáles son los pros y los contras de actualizar a un núcleo principal?
  • ¿Podré volver fácilmente?
ish
fuente

Respuestas:

66

Actualizar a un núcleo de línea principal generalmente no es una buena idea

La mayor parte de la información básica en esta respuesta proviene del wiki de Mainline Builds

1. Se proporcionan solo para pruebas y no son compatibles

  • Los núcleos de la línea principal se construyen a partir de las últimas fuentes de núcleo de Linux "principales" no modificadas.
  • El equipo del kernel de Ubuntu proporciona estos solo con fines de prueba y depuración, para ver si los problemas se han solucionado "en sentido ascendente", es decir, por los desarrolladores del kernel de Linux .
  • Por lo tanto, no son compatibles y deben usarse bajo su propio riesgo; puede informar posibles errores a kernel.org a través de kernel-oops , o si desea una solución más rápida, intente publicar en la lista de correo del kernel de Linux

2. A menudo rompen los controladores, especialmente Nvidia / AMD e inalámbrico (Broadcom)

  • Los núcleos de la línea principal no incluyen ningún controlador o parche proporcionado por Ubuntu
  • Esto significa que no se proporcionan controladores binarios para gráficos, inalámbricos, etc.
  • Si intenta instalar controladores binarios descargados directamente de los fabricantes, existe una gran posibilidad de que no funcionen porque los encabezados de la línea principal pueden ser incompatibles.
    • Esto será especialmente cierto para las versiones que no sean LTS después de 12.04 (12.10, 13.04, ...), porque los núcleos principales se crean utilizando la última cadena de herramientas LTS (compiladores, etc.), que generalmente es más antigua que la cadena de herramientas en la última versión. Lanzamiento no LTS.

3. Solo debe instalarlos si cree que pueden solucionar un problema crítico que tiene con el núcleo actual

  • Los núcleos más nuevos a veces contienen soluciones para un problema de hardware o sistema de archivos que pueda tener. Por ejemplo, los gráficos internos HD4000 en las últimas CPU Intel Ivy Bridge ocasionalmente se congelaron, un error que se corrigió en los núcleos 3.3.6 y posteriores.
  • Puede intentar instalar un núcleo de línea principal en estas circunstancias y ver si le ayuda con su problema.
  • Si lo hace, debería considerar actualizar al último kernel de Ubuntu + 1, que tiene controladores binarios disponibles.

4. Si instala una línea principal u otro núcleo más nuevo, aún puede elegir usar su núcleo antiguo (estable) seleccionándolo en el momento del arranque:

  • Mantenga Shiftpresionado después de encender su computadora.
  • Verá el menú Grub como se muestra a continuación. Utilice la flecha hacia abajo para ir a "Versiones anteriores de Linux" y presioneEnter

    ingrese la descripción de la imagen aquí

  • Seleccione la opción que tenga una versión de xxx-generic , NO una que tenga xxx- aaaaa - genérica y presione Enter. Esta suele ser la primera opción a menos que haya instalado varios núcleos principales / personalizados.

    ingrese la descripción de la imagen aquí

ish
fuente
1
Si bien esto es muy cierto, el kernel 3.4 ofrece soporte de hardware mejorado si está ejecutando CPU y GPU recientes como se indica en kernelnewbies.org/Linux_3.4 . Algunas personas tuvieron problemas con el kernel predeterminado en Ubuntu 12.04 y la actualización resolvió muchos problemas: consulte youtube.com/watch?v=traegZveTKo . (El título del video menciona el kernel 3.5, pero es aproximadamente 3.4.) Estoy de acuerdo, sin embargo, no es necesario hacer una actualización del kernel desde la línea principal a menos que tenga una razón real apremiante.
2
Este es un hilo antiguo, pero ¿qué quisiste decir cuando dijiste que el OP debería considerar usar un kernel Ubuntu + 1? ¿Donde puedo encontrarlos? Estoy en una situación similar en este momento. Tengo un hardware muy nuevo que parece ser mejor soportado por el núcleo de la línea principal 3.12.
rimez
11

En lugar de la línea principal, debe considerar la pila de habilitación LTS

https://wiki.ubuntu.com/Kernel/LTSEnablementStack

Donde, una nueva pila de kernel / graphics es oficialmente respaldada, solo para lanzamientos de LTS Ubuntu.

En este caso, Precise 12.04.5 tiene el núcleo de Trusty (3.13)

kevinf
fuente
Esta ruta parece más lógica. ¿Es el núcleo HWE Xenial mejor que el núcleo Trusty? ¿Cuáles son los pros y los contras de actualizar mi kernel de esta manera?
Buscar la verdad el
@SeekTruth depende de por qué está actualizando su núcleo en primer lugar. No es que el kernel Xenial sea mejor que el kernel Trusty, son solo las versiones que sacaron de kernel.org
kevinf
2

Si conoce una solución o mejora específica en la forma en que el kernel más nuevo maneja su hardware, le digo que lo haga.

No me hubiera actualizado a un kernel de línea principal debido a la falta de soporte, excepto que estaba teniendo algunos problemas con la emulación del juego N64 que se ejecuta muy lentamente con muchos errores. Después de probar todas las configuraciones que pude encontrar para el emulador, así como para xorg, leí He aquí por qué los gráficos Radeon son más rápidos en Linux 3.12 . Esto fue suficiente para motivarme a probarlo y los resultados en apariencia y rendimiento fueron sorprendentes sin que surjan nuevos problemas hasta el momento.

Una cosa a tener en cuenta es si tiene instalados módulos externos (también conocidos como fuera del árbol) (vea Identificar módulos fuera del árbol para tener una idea de dónde están). Si necesita estos módulos, considere si se construirán con la nueva versión del kernel. Investigue un poco y pruébelos usted mismo en la nueva versión del kernel. En el peor de los casos, puede iniciar en la versión anterior del núcleo y desinstalar la nueva.

Se recomienda eliminar los módulos externos o propietarios antes de intentar actualizar al núcleo de la línea principal. Tuve que eliminar virtualbox para evitar el "¡Error! Mal estado de retorno para la compilación del módulo" durante la instalación del kernel.

iyrin
fuente