21 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.
21.1 Descripción conceptual #
Antes de actualizar el sistema, lea la Sección 19.3, “Preparación del sistema”.
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.
Si el sistema que va a actualizar es un cliente de SUSE Manager, no se puede actualizar mediante la migración en línea de YaST ni mediante la migración de zypper.
Utilice en su lugar el procedimiento de migración de cliente. Se describe en la Guía de actualización de SUSE Manager, disponible en https://documentation.suse.com/suma/.
21.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 del paquete de servicio, el sistema debe estar registrado en el Centro de servicio al cliente de SUSE o en un servidor SMT 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.
21.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
.
21.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 es suscriptor de LTSS, debe desactivar el repositorio LTSS. Esto no se puede hacer con YaST. En su lugar, ejecute estos comandos con el número de versión del repositorio instalado:
tux >
sudo
SUSEConnect -d -p SLES-LTSS/12.2/x86_64tux >
sudo
zypper ref -sConsulte este boletín de soporte técnico, La migración de zypper con el repositorio LTSS produce el mensaje "No hay ninguna migración disponible", para obtener más información, https://www.suse.com/support/kb/doc/?id=7022381.
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 de SCC o SMT 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.
21.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:
sudo
SUSEConnect
--regcode YOUR_REGISTRATION_CODESi es suscriptor de LTSS, debe desactivar el repositorio LTSS. Ejecute estos comandos con el número de versión del repositorio instalado:
tux >
sudo
SUSEConnect -d -p SLES-LTSS/12.2/x86_64tux >
sudo
zypper ref -sConsulte este boletín de soporte técnico, La migración de zypper con el repositorio LTSS produce el mensaje "No hay ninguna migración disponible", para obtener más información, https://www.suse.com/support/kb/doc/?id=7022381.
Instale las actualizaciones más recientes:
sudo
zypper
patchInstale el paquete zypper-migration-plugin y sus dependencias:
sudo
zypper
in zypper-migration-pluginEjecute
zypper
migration
:tux >
sudozypper
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 del SCC o de la SMT antiguos 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.
21.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:
sudo
zypper
patch --updatestack-onlySi el sistema está registrado, debe anular el registro:
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 18.6, “Modelo de repositorio”):
sudo
zypper
addrepo REPOSITORYTambién puede usar el Centro de servicios al cliente de SUSE o la Herramienta de gestión de suscripciones. El comando para SUSE Linux Enterprise 12 SP1 en x86-64 es:
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:
sudo
zypper
ref -f -s sudozypper
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.
21.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:
sudo snapper list
Revise 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:
snapper rollback
A 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:
sudo zypper ref -fs
Para obtener una lista de los repositorios activos, ejecute:
sudo zypper lr
Compruebe 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. Si, por ejemplo, está deshaciendo una migración de un paquete de servicios de SLES 12 SP1 a SLES 12 SP2, la lista no debe contener los repositorios
SLES12-SP2-Pool
niSLES12-SP2-Updates
, sino las versionesSP1
.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 18.6, “Modelo de repositorio”.
Por último, para comprobar el estado de registro de todos los productos instalados, ejecute:
SUSEConnect --status
Todos los productos deben mostrarse como
registrados
. Si no fuera el caso, para reparar el registro ejecute: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.