¿Qué pasos debo seguir antes de realizar una actualización de versión para evitar problemas?

10

Después de recibir una notificación sobre 1404_HWE_EOL , estoy considerando actualizar un sistema de producción importante a 16.04.1. Digo "sistema de producción importante" porque esta es la estación de trabajo que uso a diario en el trabajo. Quiero evitar errores u otros problemas porque no tengo demasiado tiempo para depurar y solucionar problemas (el departamento de TI no ayuda con los sistemas Linux). Tengo una copia de seguridad de todos los datos, pero no la partición actual del sistema operativo (puedo dd la unidad del sistema operativo como otra capa de respaldo). ¿Qué otros pasos debo realizar antes de actualizar? Quiero saber cómo minimizar las complicaciones al usar la actualización de lanzamiento ofrecida en Ubuntu.

He leído sobre la eliminación de PPA antes de actualizar . Tengo 27 PPA instalados, tomará algún tiempo eliminar todos estos, los programas que traen, y luego revertir eso después de la actualización. ¿Tiene esto un beneficio significativo? ¿Algo más?

Steven C. Howell
fuente
¿Es este sistema de producción una máquina virtual? Si es así, es posible que tenga una opción para tomar una instantánea y / o volver a ella antes de actualizar. He usado esto antes para evitar actualizaciones fallidas en una máquina de desarrollo local (no en un servidor de producción).
cenizas999
No es una VM. En tal caso, esta sería una gran opción.
Steven C. Howell
1
Cuando actualicé, el proceso deshabilitó automáticamente mis PPA agregados; no es necesario que los elimine. Después de actualizar, podría volver a habilitarlos. Los problemas de dentición (para mí) se debieron principalmente a un par de PPA que no se habían actualizado para admitir Xenial.
Paddy Landau
Una advertencia. Si tiene una tarjeta gráfica AMD, asegúrese de que sea compatible con los controladores disponibles en 16.04. El mío no lo es, y en beneficio de la longevidad de mi hardware, he regresado a 14.04.
Tony Martin

Respuestas:

13

importante sistema de producción

No actualizaría un sistema como ese. Instalaría 16.04 en otra máquina, copiaría los datos en vivo a esa máquina. Prueba, prueba un poco más. Y luego haga que esa máquina sea el servidor de producción.

Y puede rehacer esto con 18.04 con el servidor actual 14.04.

¿Por qué correr riesgos?

Rinzwind
fuente
En mi situación, no tengo una pila de hardware duplicada completa, por lo que esto significa usar ddpara clonar mi unidad (SSD a HDD), probar tanto el original como el clon, luego destruir y pavimentar para poner el nuevo sistema operativo. Siempre he hecho esto en el pasado, pero he tenido la esperanza de que seguir algunos pasos proporcione un método confiable para actualizar a una nueva versión. ¿Es eso demasiado optimista?
Steven C. Howell
No Totalmente posible Una cosa que debe tener en cuenta: 16.04 usa "systemd". Entonces, la puesta en marcha de todos los servicios ha cambiado.
Rinzwind
Entonces, ¿qué pasos conducen a mejores resultados cuando se usa do-release-upgradepara actualizar Ubuntu a la próxima versión de LTS?
Steven C. Howell
Si bien esta respuesta proporciona un buen consejo, que en mi experiencia es una forma segura de actualizar, no proporciona información sobre el uso de la opción de actualización de lanzamiento incorporada. Eso es lo que quiero entender mejor.
Steven C. Howell
Lo sentimos, "¿mejores resultados al usar do-release-upgrade" en comparación con qué?
Rinzwind
2

Tomaría una copia de seguridad de imagen ("dd" en un sistema Linux Live) de la estación de trabajo y la convertiría en una máquina virtual VirtualBox. (Imagen RAW a VDI). Después de eso, haz un chasquido y ejecuta esta imagen en VB. Juega todos los pasos para actualizar. Si algo no funciona, vuelva a colocar el complemento. Después de tener un sistema actualizado, puede convertir el VDI de nuevo a raw y "dd" a su sistema o reproducir el run-book.
Pero siempre haga una última copia de seguridad de la imagen "dd" antes de sobrescribir su sistema anterior.
Prefiero ejecutar mis sistemas desde una unidad de memoria USB para que la instalación del sistema se realice con "VDI -> RAW -> usb tumb-drive" y arranque desde el sistema actualizado / instalado. Listo. Está bien que "pierda" un puerto USB, pero nunca tendrá estrés y siempre puede hacer una copia de seguridad del sistema.

0x0C4
fuente
1

Aquí hay una variación de la respuesta de @ rinzwind que podría funcionar con el hardware que ya tiene.

Si tiene (o puede liberar) suficiente espacio libre en su (s) disco (s) interno (s), puede crear 2 particiones nuevas (usando algo como gparted de una distribución de CD / USB en vivo) y copiar la raíz (/) en una de ellas y / home to the other y etiquetarlos como root2 y home2 para que sean fáciles de encontrar.

Si root y home están en la misma partición, puede copiar eso, pero es mucho mejor por muchas razones si están separados.

Tendrá que apuntar la nueva raíz al nuevo / inicio editando los cambios en /etc/fstabla nueva partición raíz (actualizando los UUID de las nuevas particiones / inicio y raíz).

Los obtiene haciendo un ls -l /dev/disk/by-labelpara encontrar los dispositivos en los que se encuentran actualmente la nueva raíz y el hogar y luego ejecutándose ls -l /dev/disk/by-uuidpara pasar de los nombres de los dispositivos a los uuids.

A continuación, actualice grub (desde su sistema de producción) con algo como grub-customizer para agregar la nueva raíz a su menú de grub.

Ahora, tendrá una copia exacta de su sistema en vivo en esas particiones. Puede ejecutar la actualización en esta copia y aún tener la versión de producción intacta. Puede iniciar en el que quiera trabajar.

Una vez que haya terminado con la actualización, puede decirle a grub que la copia es en vivo (entrada predeterminada) y que el original ahora es la copia de seguridad. grub-customizer hace que hacer cosas como esta sea bastante fácil.

Si tiene demasiados datos en / home o root (haciéndolos demasiado grandes para duplicarlos), colóquelos primero en su propia partición (asegúrese de informar a los programas que acceden sobre el movimiento). No necesita ser duplicado, solo respaldado.

Esto también hace que la copia de seguridad de sus datos sea mucho más fácil porque ya no se mezclan con el sistema.

Con un segundo conjunto de particiones de "prueba", ahora puede probar todo tipo de cosas que no le gustaría arriesgar en el sistema del que depende para el trabajo diario.

Actualmente estoy ejecutando Kubuntu 12.04 como este con 16.04 en mis particiones de "desarrollo" hasta que esté configurado de la manera que lo quiero.

Con los precios de la unidad de disco tan bajos en estos días, incluso podría copiar su unidad interna existente a una nueva más grande y usarla si es necesario, si su empresa se lo permite.

Esta respuesta cubre todos los detalles principales de cómo hacer esto. No intenté cubrir cada pequeño detalle de cada paso. Pero como está trabajando con una copia de todo, no debería haber problemas serios y todo lo demás ya se ha cubierto en algún lugar aquí en stackexchange.

Joe
fuente
0

Aunque esto no se aplica a su caso específico, si el sistema Ubuntu es una VM, puede solucionar este problema tomando una instantánea antes de actualizar y revertir si no funciona.

Una vez actualicé una de mis máquinas virtuales, y aunque la actualización falló y supuestamente se revertió, no obtuve un sistema limpio / funcional.

La respuesta de @ Rinzwind también funciona con máquinas virtuales: cree una nueva máquina virtual, instale la nueva versión de Ubuntu y comience a copiar las cosas.

cenizas999
fuente