5 Actualización con conexión #
SUSE ofrece una herramienta gráfica intuitiva y una de línea de comandos sencilla para actualizar un sistema en ejecución a un nuevo paquete de servicio. Proporcionan asistencia para la “revertir” la actualización de los paquetes de servicios y otros elementos. En este capítulo se explica cómo realizar paso a paso una actualización del paquete de servicio con estas herramientas.
5.1 Descripción conceptual #
SUSE publica nuevos paquetes de servicio para la familia de SUSE Linux Enterprise a intervalos regulares. Para facilitar a los clientes la migración a un nuevo paquete de servicio y reducir el tiempo de inactividad, SUSE admite la migración en línea mientras se esté ejecutando el sistema.
A partir de SLE 12, YaST Wagon se ha sustituido por la migración de YaST (GUI) y la migración de Zypper (línea de comandos). Se admiten las siguientes funciones:
El sistema siempre está en un estado definido hasta que se actualiza el primer RPM.
Es posible cancelar hasta que se actualiza el primer RPM.
La recuperación es fácil si se produce un error.
La “reversión” se realiza mediante herramientas del sistema; no es necesario realizar una copia de seguridad y restaurar.
Se usan todos los repositorios activos.
Es posible omitir un paquete de servicio.
La migración en línea solo es compatible con la migración entre paquetes de servicio. La migración en línea no es compatible con la actualización a nuevas versiones principales. Para obtener información, consulte: Capítulo 1, Vías y métodos de actualización.
Utilice la migración sin conexión para realizar la actualización a una nueva versión principal. Para obtener información, consulte: Capítulo 4, Actualización sin conexión.
5.2 Flujo de trabajo de migración del paquete de servicio #
Es posible ejecutar una migración del paquete de servicio mediante YaST, zypper
o AutoYaST.
Antes de que pueda iniciar una migración de paquete de servicio, el sistema debe estar registrado en el Centro de servicio al cliente de SUSE o en un servidor RMT local. También puede utilizarse SUSE Manager.
Independientemente del método utilizado, la migración de un paquete de servicio consta de los pasos siguientes:
Buscar posibles destinos de migración en los sistemas registrados.
Seleccionar un destino de migración.
Pedir y habilitar nuevos repositorios.
Ejecutar la migración.
La lista de destinos de migración depende de los productos que haya instalado y registrado. Si tiene una extensión instalada para la que aún no haya disponible un paquete de servicio nuevo, puede que no se le ofrezca ningún destino de migración.
La lista de destinos de migración disponibles para el host siempre se recupera desde el Centro de servicios al cliente de SUSE y depende de los productos o extensiones instalados.
5.3 Cancelación de la migración del paquete de servicio #
La migración del paquete de servicio solo se puede cancelar en etapas concretas durante el proceso de migración:
Hasta que se inicia la actualización del paquete, solo hay cambios mínimos en el sistema, como en los servicios y repositorios. Restaure
/etc/zypp/repos.d/*
para revertir el sistema al estado anterior.Cuando se inicia la actualización del paquete, puede volver al estado anterior mediante una instantánea de Snapper (consulte Chapter 7, System Recovery and Snapshot Management with Snapper).
Después de seleccionar el destino de migración, el Centro de servicios al cliente de SUSE cambia los datos del repositorio. Para revertir este estado manualmente, utilice
SUSEConnect
--rollback
.
5.4 Actualización con la herramienta de migración en línea (YaST) #
Para realizar la migración de un paquete de servicio con YaST, use la herramienta
. Por defecto, YaST no instala ningún paquete desde repositorios de otros fabricantes. Si se ha instalado un paquete desde un repositorio de otro fabricante, YaST impide que los paquetes se sustituyan por los mismos paquetes provenientes de SUSE.Al realizar la migración del paquete de servicio, YaST instala todos los paquetes recomendados. Especialmente en el caso de las instalaciones mínimas personalizadas, esto puede aumentar el tamaño de instalación del sistema considerablemente.
Para cambiar este comportamiento por defecto y permitir solo los paquetes necesarios, ajuste la opción solver.onlyRequires
en /etc/zypp/zypp.conf
.
solver.onlyRequires = true
Además, edite el archivo /etc/zypp/zypper.conf
y cambie la opción installRecommends
.
installRecommends=false
Esto cambia el comportamiento de todas las operaciones del paquete, como la instalación de parches o nuevos paquetes.
Para iniciar la migración del paquete de servicio, haga lo siguiente:
Desactive todas las extensiones sin usar del servidor de registro para evitar futuros conflictos de dependencias. Si olvida una extensión, YaST detectará posteriormente los repositorios de extensiones no utilizados y los desactivará.
Si ha entrado en una sesión de GNOME que se esté ejecutando en el equipo que va a actualizar, cambie a una consola de texto. No se recomienda ejecutar la actualización desde una sesión de GNOME. Tenga en cuenta que esto no se aplica cuando se entra desde un equipo remoto (a menos que esté ejecutando una sesión de VNC con GNOME).
Si está suscrito a LTSS, asegúrese de que el repositorio de la extensión LTSS está activado.
Ejecute la actualización en línea de YaST para obtener las actualizaciones más recientes del paquete para su sistema.
Instale el paquete yast2-migration y sus dependencias (en YaST en › ).
Reinicie YaST, o el módulo recién instalado no se mostrará en el Centro de control.
En YaST, seleccione SUSE Linux Enterprise Server desde la que vaya a actualizar, este módulo se categoriza como o ). YaST muestra los destinos de migración posibles y un resumen. Si hay disponible más de un destino de migración para el sistema, seleccione uno en la lista.
(según la versión deSeleccione un destino de migración de la lista y haga clic en
.En caso de que la herramienta de migración ofrezca repositorios de actualización, se recomienda continuar haciendo clic en
.Si la herramienta Migración en línea encuentra repositorios obsoletos provenientes del DVD o de un servidor local, se recomienda encarecidamente inhabilitarlos. Los repositorios obsoletos proceden de un paquete de servicio anterior. Los repositorios antiguos del Centro de servicios al cliente de SUSE o de RMT se eliminan automáticamente.
Revise el resumen y haga clic en
para continuar con la migración. Para confirmar, haga clic en .Cuando se complete correctamente la migración, reinicie el sistema.
5.5 Actualización con Zypper #
Para realizar la migración de un paquete de servicio con Zypper, use la herramienta de línea de comandos zypper
migration
del paquete
zypper-migration-plugin.
Al realizar la migración del paquete de servicio, YaST instala todos los paquetes recomendados. Especialmente en el caso de las instalaciones mínimas personalizadas, esto puede aumentar el tamaño de instalación del sistema considerablemente.
Para cambiar este comportamiento por defecto y permitir solo los paquetes necesarios, ajuste la opción solver.onlyRequires
en /etc/zypp/zypp.conf
.
solver.onlyRequires = true
Además, edite el archivo /etc/zypp/zypper.conf
y cambie la opción installRecommends
.
installRecommends=false
Esto cambia el comportamiento de todas las operaciones del paquete, como la instalación de parches o nuevos paquetes. Para cambiar el comportamiento de Zypper para una sola llamada, añada el parámetro --no-recommends
en la línea de comandos.
Para iniciar la migración del paquete de servicio, haga lo siguiente:
Si ha entrado en una sesión de GNOME que se esté ejecutando en el equipo que va a actualizar, cambie a una consola de texto. No se recomienda ejecutar la actualización desde una sesión de GNOME. Tenga en cuenta que esto no se aplica cuando se entra desde un equipo remoto (a menos que esté ejecutando una sesión de VNC con GNOME).
Si aún no lo ha hecho, registre el equipo en SUSE Linux Enterprise:
tux >
sudo
SUSEConnect
--regcode YOUR_REGISTRATION_CODESi está suscrito a LTSS, asegúrese de que el repositorio de la extensión LTSS está activado.
Ejecute
zypper
migration
:tux >
sudo
zypper
migration Executing 'zypper patch-check' Refreshing service 'SUSE_Linux_Enterprise_Server_12_x86_64'. Loading repository data... Reading installed packages... 0 patches needed (0 security patches) Available migrations: 1 | SUSE Linux Enterprise Server 12 SP1 x86_64 2 | SUSE Linux Enterprise Server 12 SP2 x86_64Notas sobre el proceso de migración:
Si hay disponible más de un destino de migración para el sistema, Zypper permite seleccionar uno en la lista. Esto es lo mismo que omitir uno o varios paquetes de servicio. Tenga en cuenta que la migración en línea de productos base (SLES y SLED) sigue estando disponible solo entre los paquetes de servicio de una versión principal.
Por defecto, Zypper usa la opción
--no-allow-vendor-change
, que se pasa azypper
dup
. Si se ha instalado un paquete desde un repositorio de otro fabricante, esta opción impide que los paquetes se sustituyan por los mismos paquetes provenientes de SUSE.Si Zypper encuentra repositorios obsoletos provenientes del DVD o de un servidor local, se recomienda encarecidamente inhabilitarlos. Los repositorios antiguos del Centro de servicios al cliente de SUSE o de RMT se eliminan automáticamente.
Revise todos los cambios, sobre todo los paquetes que se van a eliminar. Para continuar, escriba
y
(el número exacto de paquetes para actualizar puede variar en su sistema):266 packages to upgrade, 54 to downgrade, 17 new, 8 to reinstall, 5 to remove, 1 to change arch. Overall download size: 285.1 MiB. Already cached: 0 B After the operation, additional 139.8 MiB will be used. Continue? [y/n/? shows all options] (y):
Use las teclas Mayús–Página ↑ o Mayús–Página ↓ para desplazarse por la shell.
Cuando se complete correctamente la migración, reinicie el sistema.
5.6 Actualización con Zypper simple #
Si no puede utilizar la migración con YaST o la migración con Zypper, aún puede migrar con Zypper normal y alguna interacción manual. Para iniciar una migración del paquete de servicio, haga lo siguiente:
Si ha entrado en una sesión de GNOME que se esté ejecutando en el equipo que va a actualizar, cambie a una consola de texto. No se recomienda ejecutar la actualización desde una sesión de GNOME. Tenga en cuenta que esto no se aplica cuando se entra desde un equipo remoto (a menos que esté ejecutando una sesión de VNC con GNOME).
Actualice las herramientas de gestión del paquete con los repositorios de SUSE Linux Enterprise anteriores:
tux >
sudo
zypper
patch --updatestack-onlySi el sistema está registrado, debe anular el registro:
tux >
sudo
SUSEConnect
--de-registerElimine los orígenes de instalación y los repositorios antiguos y ajuste los repositorios de otros fabricantes.
Añada los nuevos orígenes de instalación, ya sean locales o remotos (para obtener información sobre el espacio reservado REPOSITORY, consulte la Sección 2.3, “Dependencias de módulos y ciclos de vida”):
sudo
zypper
addrepo REPOSITORYTambién puede usar el Centro de servicios al cliente de SUSE o la Herramienta de duplicación de repositorios. El comando para SUSE Linux Enterprise 12 SP1 en AMD64/Intel 64 es:
tux >
sudo
SUSEConnect
-p SLES/12.2/x86_64 OPTIONSTenga en cuenta, no se admiten actualizaciones de arquitecturas cruzadas.
Zypper mostrará un conflicto entre el núcleo antiguo y el nuevo. Elija la solución 1 para continuar.
Problem: product:SLES-12.2-0.x86_64 conflicts with kernel < 4.4 provided by kernel-default-VERSION Solution 1: Following actions will be done: replacement of kernel-default-VERSION with kernel-default-VERSION deinstallation of kernel-default-VERSION Solution 2: do not install product:SLES-12.2-0.x86_64
Finalice la migración:
tux >
sudo
zypper
ref -f -stux >
sudo
zypper
dup --no-allow-vendor-change --no-recommendsEl primer comando actualiza todos los servicios y repositorios. El segundo comando lleva a cabo una actualización de la distribución. En este caso, las dos últimas opciones son importantes:
-no-allow-vendor-change
garantiza que los RPM de otros fabricantes no sobrescribirán los RPM del sistema base. La opción--no-recommends
garantiza que el paquete deseleccionado durante la instalación inicial no se añadirá de nuevo.
5.7 Reversión de un paquete de servicio #
Si un paquete de servicio no funciona, SUSE Linux Enterprise permite revertir el sistema a su estado anterior antes de iniciar la migración. Uno de los requisitos previos es una partición de raíz Btrfs con las instantáneas habilitadas (se trata del ajuste por defecto al instalar SLES 12). Para obtener más información, consulte: Chapter 7, System Recovery and Snapshot Management with Snapper.
Obtenga una lista de todas las instantáneas de Snapper:
tux >
sudo
snapper listRevise el resultado para localizar la instantánea que se creó inmediatamente antes de la migración del paquete de servicios. La columna
contiene la instrucción correspondiente y la instantánea está marcada comoimportante
en la columna Memorice el número de la instantánea de la columna y la fecha de la columna .Rearranque el sistema. En el menú de arranque, seleccione
y, a continuación, la instantánea con la fecha y el número que memorizó en el paso anterior. Se carga un segundo menú de arranque (el de la instantánea). Seleccione la entrada que empieza porSLES 12
y arránquela.El sistema arranca en el estado anterior con la partición de sistema montada como de solo lectura. Entre como usuario
root
y compruebe si ha elegido la instantánea correcta. Asegúrese también de que todo funciona como se espera. Tenga en cuenta que, ya que el sistema de archivos raíz se monta como de solo lectura, pueden aplicarse restricciones a la funcionalidad.En caso de problemas o si ha arrancado la instantánea equivocada, vuelva a arrancar y elija otra instantánea de arranque: hasta este momento no se han realizado cambios permanentes. Si la instantánea es correcta y funciona como se espera, haga permanente el cambio ejecutando el comando siguiente:
tux >
sudo
snapper rollbackA continuación, vuelva a arrancar. En la pantalla de arranque, seleccione la entrada de arranque por defecto para arrancar en el sistema restablecido.
Compruebe si la configuración del repositorio se ha restablecido correctamente. Compruebe también que todos los productos estén correctamente registrados. Si alguno de los elementos anteriores no se cumple, podría darse el caso de que no funcione la actualización del sistema a un momento posterior o que el sistema se actualice con los repositorios de paquetes erróneos.
Asegúrese de que el sistema tiene acceso a Internet antes de iniciar este procedimiento.
Para actualizar los servicios y los repositorios, ejecute:
tux >
sudo
zypper ref -fsPara obtener una lista de los repositorios activos, ejecute:
tux >
sudo
zypper lrCompruebe con atención el resultado de este comando. No debería aparecer ningún servicio ni repositorio que se haya añadido para la actualización. Por ejemplo, si realiza una reversión de SLES 12 SP1 a SLES 12 SP2, la lista debe contener los repositorios de
SP1
y no los repositoriosSLES12-SP2-Pool
ySLES12-SP2-Updates
.Si se muestran repositorios incorrectos, suprímalos y, si fuera necesario, sustitúyalos por las versiones que coinciden con su versión de producto o de paquete de servicios. Para obtener una lista de los repositorios para las vías de migración admitidas, consulte la Sección 2.3, “Dependencias de módulos y ciclos de vida”.
Por último, para comprobar el estado de registro de todos los productos instalados, ejecute:
tux >
sudo
SUSEConnect --statusTodos los productos deben mostrarse como
registrados
. Si no fuera el caso, para reparar el registro ejecute:tux >
sudo
SUSEConnect --rollback
Ya ha revertido correctamente el sistema al estado que se capturó inmediatamente antes de que se iniciara la migración del paquete de servicios.
5.8 Actualización con SUSE Manager #
SUSE Manager es una solución de servidor para proporcionar actualizaciones, parches y soluciones de seguridad para los clientes de SUSE Linux Enterprise. Incorpora un conjunto de herramientas y una interfaz de usuario Web para tareas de gestión. Consulte https://www.suse.com/products/suse-manager/ para obtener más información sobre SUSE Manager.
Con este método, puede migrar desde un paquete de servicios (SP) a otro dentro de una versión principal (por ejemplo, de SLES 12 SP1 a SLES 12 SP2). Para obtener más información, consulte SUSE Manager Best Practices (Prácticas recomendadas de SUSE Manager), capítulo “Client Migration” (Migración del cliente), sección “Migrating SUSE Linux Enterprise Server 12 or later to version 12 SP2” (Migración de SUSE Linux Enterprise Server 12 o posterior a la versión 12 SP2):
https://www.suse.com/documentation/suse-manager/, versión 3.1.
5.9 Migración de openSUSE Leap a SUSE Linux Enterprise Server #
Puede realizar la migración de una instalación de openSUSE en línea a SUSE Linux Enterprise Server. El procedimiento es similar al descrito en la Sección 5.5, “Actualización con Zypper”, pero se requieren algunos pasos adicionales. Recomendamos ejecutar este procedimiento en un sistema de prueba que replique la configuración de producción antes de ejecutarlo en el sistema de producción.
Para ver qué versiones de openSUSE Leap admiten la migración, lea la Sección 1.1, “Vías de actualización a SLE 15 SP1 admitidas”.
Los repositorios de openSUSE proporcionan más paquetes que los disponibles en los repositorios de SUSE Linux Enterprise Server. Si tiene alguno de estos paquetes instalado, dejará de recibir actualizaciones después de la migración. Estos paquetes se eliminarán si lleva a cabo el procedimiento descrito a continuación.
Asegúrese de que todos los paquetes que necesita para que funcione el sistema están disponibles en el repositorio SUSE Linux Enterprise Server. También puede comprobar si los paquetes están disponibles en el repositorio SUSE Package Hub. Para obtener información, consulte: Sección 18.3, “SUSE Package Hub”.
Para migrar desde openSUSE Leap, ejecute el siguiente procedimiento:
Cambie a un TTY, por ejemplo, pulsando Ctrl–Alt–F1. Luego inicie sesión como usuario
root
.Instalación SUSEConnect.
root #
zypper in SUSEConnect
Elimine los paquetes que producen conflictos de archivo durante la migración.
root #
rpm -e --nodeps yast2-branding-openSUSE
root #
rpm -e --nodeps yast2-branding-openSUSE-Oxygen
Regístrese en SCC para obtener los repositorios de SUSE Linux Enterprise Server.
root #
SUSEConnect -r REGISTRATION_CODE -p SLES/15.0/x86_64
Muestre e inhabilite todos los repositorios de openSUSE del sistema.
root #
zypper lr
root #
zypper mr -d REPO_IDS
Sustituya REPO_IDS por una lista separada por espacios de todos los repositorios de openSUSE habilitados.
Ahora añada los módulos que necesite para la instalación.
root #
SUSEConnect --list-extensions
[...]root #
SUSEConnect -p sle-module-basesystem/15.0/x86_64
Para disponer de sustitutos para la mayoría de los paquetes de Leap, se recomienda habilitar los módulos Basesystem, Desktop Applications, Server Applications y Legacy. Además, se recomienda habilitar SUSE Package Hub.
Migre los paquetes instalados a los repositorios de SUSE Linux Enterprise Server.
root #
zypper dup --force-resolution
Elimine los paquetes huérfanos.
root #
zypper rm $(zypper --no-refresh packages --orphaned | gawk '{print $5}' | tail -n +5)
Por último, reinicie el sistema.