Ir al contenidoIr a la navegación de la página: página anterior [tecla de acceso p]/página siguiente [tecla de acceso n]
documentation.suse.com / Documentación de SUSE Linux Enterprise Server / Guía de distribución / Configuración inicial del sistema / Instalación de varias versiones del núcleo
Se aplica a SUSE Linux Enterprise Server 12 SP5

15 Instalación de varias versiones del núcleo

SUSE Linux Enterprise Server admite la instalación en paralelo de varias versiones del núcleo. Al instalar un segundo núcleo, se crean automáticamente una entrada de arranque y un initrd, por lo que no es necesaria realizar más configuración manual. Al rearrancar el equipo, el núcleo recién añadido estará disponible como opción de arranque adicional.

Mediante esta función, es posible probar con seguridad las actualizaciones del núcleo y volver en cualquier momento al núcleo anterior. Para ello, no utilice las herramientas de actualización (como YaST Online Update o el applet de actualización), sino que debe seguir el proceso descrito en este capítulo.

Aviso
Aviso: derecho de asistencia técnica

Tenga en cuenta que perderá todo el derecho de asistencia técnica para el equipo al instalar un núcleo autocompilado o de otros fabricantes. Solo se admiten los núcleos incluidos con SUSE Linux Enterprise Server y los núcleos proporcionados a través de los canales de actualización oficiales para SUSE Linux Enterprise Server.

Sugerencia
Sugerencia: compruebe el núcleo de configuración del cargador de arranque

Se recomienda comprobar la configuración del cargador de arranque después de instalar otro núcleo a fin de establecer la entrada de arranque por defecto deseada. Consulte Section 13.3, “Configuring the Boot Loader with YaST” para obtener más información.

15.1 Habilitación y configuración de la compatibilidad multiversión

La instalación de varias versiones de un paquete de software (compatibilidad multiversión) está habilitada por defecto desde SUSE Linux Enterprise Server 12. Para verificar este valor, realice este procedimiento:

  1. Abra /etc/zypp/zypp.conf con el editor que desee como usuario root.

  2. Busque la cadena multiversion. Si la multiversión está habilitada para todos los paquetes de núcleo compatibles con esta función, se muestra la siguiente línea sin marcas de comentario:

    multiversion = provides:multiversion(kernel)
  3. Para restringir la compatibilidad multiversión a versiones concretas del núcleo, añada los nombres de paquetes en forma de lista separada por comas a la opción multiversion de /etc/zypp/zypp.conf; por ejemplo:

    multiversion = kernel-default,kernel-default-base,kernel-source
  4. Guarde los cambios.

Aviso
Aviso: paquetes de módulo de núcleo (KMP)

Asegúrese de que los módulos de núcleo necesarios proporcionados por el proveedor (los paquetes de módulo de núcleo) también están instalados para el nuevo núcleo actualizado. El proceso de actualización del núcleo no advierte sobre si faltan módulos del núcleo, ya que el núcleo anterior que permanece en el sistema sigue cumpliendo los requisitos del paquete.

15.1.1 Supresión automática de núcleos no utilizados

Si se prueban con frecuencia nuevos núcleos con la compatibilidad multiversión habilitada, el menú de arranque no tarda en empezar a confundirse. Dado que la partición /boot suele disponer de espacio limitado, también puede haber problemas de desbordamiento de /boot. Aunque puede suprimir versiones no utilizadas del núcleo de forma manual con YaST o Zypper (tal como se describe más abajo), también es posible configurar libzypp para suprimir de forma automática núcleos que ya no se usen. Por defecto, no se suprime ningún núcleo.

  1. Abra /etc/zypp/zypp.conf con el editor que desee como usuario root.

  2. Busque la cadena multiversion.kernels y active esta opción quitando la marca de comentario de la línea. Esta opción recibe una lista separada por comas de los siguientes valores:

    4.4.126-48: conserva el núcleo con el número de versión especificado.

    latest: conserva el núcleo con el número de versión más alto.

    latest-N: conserva el núcleo con el enésimo (N) número de versión más alto.

    running: conserva el núcleo en ejecución.

    oldest: conserva el núcleo con el número de versión más bajo (el que se incluía de forma original con SUSE Linux Enterprise Server).

    oldest+N conserva el núcleo con el enésimo (N) número de versión más bajo.

    Estos son algunos ejemplos:

    multiversion.kernels = latest,running

    Conserva el núcleo más reciente y el que se está ejecutando actualmente. Es similar a no habilitar la función de multiversión, excepto en que el núcleo antiguo se elimina después del próximo rearranque y no inmediatamente después de la instalación.

    multiversion.kernels = latest,latest-1,running

    Conserva los dos núcleos más recientes y el que se está ejecutando actualmente.

    multiversion.kernels = latest,running,4.4.126-48

    Conserva el núcleo más reciente, el que se está ejecutando y la versión 4.4.126-48.

    Sugerencia
    Sugerencia: conservación del núcleo en ejecución

    A no ser que utilice una configuración especial, conserve siempre el núcleo marcado como running (en ejecución).

    Si no conserva el núcleo en ejecución, se suprimirá cuando se actualice el núcleo. Eso significa que todos los módulos del núcleo en ejecución también se suprimen y no es posible volver a cargarlos.

    Si decide no conservar el núcleo en ejecución, reinicie siempre inmediatamente después de una actualización del núcleo para evitar problemas con los módulos.

15.1.2 Caso de uso: supresión de un núcleo anterior solo después de rearrancar

Quiere asegurarse de que un núcleo antiguo solo se suprimirá después de que el sistema se haya arrancado correctamente con el núcleo nuevo.

Cambie la línea siguiente en /etc/zypp/zypp.conf:

multiversion.kernels = latest,running

Los parámetros anteriores indican al sistema que conserve el núcleo más reciente y el que se está ejecutando solo si son distintos.

15.1.3 Caso de uso: conservación de núcleos anteriores como medida de vuelta atrás

Desea conservar uno o varios núcleos para disponer de uno o varios núcleos de repuesto.

Esto puede ser útil si necesita núcleos para realizar pruebas. Si algo va mal, por ejemplo, si el equipo no arranca, podrá seguir usando una o varias versiones del núcleo que se sabe que funcionan.

Cambie la línea siguiente en /etc/zypp/zypp.conf:

multiversion.kernels = latest,latest-1,latest-2,running

Cuando se rearranque el sistema después de la instalación de un núcleo nuevo, el sistema conservará tres núcleos: el actual (configurado como latest,running) y sus dos predecesores inmediatos (configurados como latest-1 y latest-2).

15.1.4 Caso de uso: conservación de una versión específica del núcleo

Realiza actualizaciones habituales del sistema e instala nuevas versiones del núcleo. Sin embargo, también compila su propia versión del núcleo y desea asegurarse de que el sistema lo conservará.

Cambie la línea siguiente en /etc/zypp/zypp.conf:

multiversion.kernels = latest,3.12.28-4.20,running

Cuando se rearranca el sistema después de la instalación de un núcleo nuevo, el sistema conservará dos núcleos: el nuevo y el que se está ejecutando (configurados como latest,running) y el núcleo que ha compilado (configurado como 3.12.28-4.20).

15.2 Instalación y eliminación de varias versiones del núcleo con YaST

  1. Inicie YaST y abra el gestor de software con la opción Software › Gestión de software.

  2. Muestre todos los paquetes que admiten varias versiones. Para ello, seleccione Ver › Grupos de paquetes › Paquetes multiversión.

    gestor de software de YaST, vista multiversión
    Figura 15.1: gestor de software de YaST, vista multiversión
  3. Seleccione un paquete y abra su pestaña Versión en el panel de abajo a la izquierda.

  4. Para instalar un paquete, haga clic en la casilla de verificación junto a él. Una marca de verificación verde indica que está seleccionado para instalarse.

    Para eliminar un paquete ya instalado (marcado con una marca de verificación blanca), haga clic en su casilla de verificación hasta que aparezca una X roja que indica que se ha seleccionado para eliminarse.

  5. Haga clic en Aceptar para iniciar la instalación.

15.3 Instalación y eliminación de varias versiones del núcleo con Zypper

  1. Use el comando zypper se -s 'kernel*' para mostrar una lista de todos los paquetes de núcleos disponibles:

    S | Name           | Type       | Version         | Arch   | Repository
    --+----------------+------------+-----------------+--------+-------------------
    v | kernel-default | package    | 2.6.32.10-0.4.1 | x86_64 | Alternative Kernel
    i | kernel-default | package    | 2.6.32.9-0.5.1  | x86_64 | (System Packages)
      | kernel-default | srcpackage | 2.6.32.10-0.4.1 | noarch | Alternative Kernel
    i | kernel-default | package    | 2.6.32.9-0.5.1  | x86_64 | (System Packages)
    ...
  2. Especifique la versión exacta durante la instalación:

    zypper in kernel-default-2.6.32.10-0.4.1
  3. Para desinstalar un núcleo, use los comandos zypper se -si 'kernel*' para mostrar todos los núcleos instalados y zypper rm NOMBREPAQUETE-VERSIÓN para eliminar el paquete.