¿Estrategia para hacer frente al control de calidad cada vez más pobre de Canonical?

13

Mi installed (local or obsolete)categoría se está llenando porque Canonical últimamente ha estado enviando actualizaciones y luego retirándolas. Sucedió con dos núcleos en el pasado reciente y sucedió nuevamente con cupsesta mañana. He estado usando Ubuntu durante unos tres años y no recuerdo que esto haya sucedido tan a menudo como lo ha hecho este año.

Entonces, ¿cómo lidiar racionalmente con esto?

Pensé en instalar solo actualizaciones una vez por semana, pero eso no protegería contra la mala actualización que sacaron justo antes de que revisara esa semana.

¿Es una buena estrategia instalar solo actualizaciones el fin de semana? Parece que las actualizaciones del sistema no suelen enviarse los fines de semana. Supongo que podrían impulsar una mala actualización el viernes por la tarde y sacarla el lunes por la mañana.

O, de alguna manera, no instale actualizaciones hasta que se hayan eliminado durante un cierto período de tiempo, como dos días. ¿Hay una manera automatizada de hacer eso?

Editar: Uno de los sistemas afectados ejecuta Lubuntu 16.04 con el linux-genericnúcleo, el otro ejecuta Lubuntu 16.04 con el linux-generic-hwe-16.04núcleo. Ambos se vieron afectados por una cupsactualización de la versión 2.13-4ubuntu0.2 que se retiró y luego se retiró el 27 de marzo de 2017. La linux-genericmáquina recibió una versión de actualización del kernel 4.4.0.67.12 que posteriormente se retiró. Esta actualización también snapddejó huérfana la versión 2.23.1 La linux-generic-hwe-16.04máquina recibió una versión del núcleo 4.8.0.42.14 que luego quedó huérfana.

Mármol orgánico
fuente
2
Gracias por aclarar la versión. Me preguntaba si estaba tratando con una versión LTS, mientras que las versiones intermedias (para mí) son principalmente para probar con muchos cambios que podrían entrar en el LTS. En cuanto a las versiones LTS en las que me centro, no he estado lo suficientemente atento como para notar errores sobresalientes. Actualizo regularmente. Noto problemas menores de vez en cuando que aparentemente los desarrolladores están tratando constantemente. Puede considerar centrarse en las actualizaciones de seguridad para un sistema seguro y permitir que los cambios diarios sean tratados por los más atrevidos.
LD James
1
@fkraiem sí, he visto dos versiones recientes del kernel retiradas poco después de que me notificaron que estaban disponibles. Curiosamente, decidí hacer las actualizaciones más tarde, y cuando regresé, ¡se habían ido!
heynnema
Solía ​​desactivar las actualizaciones automáticas de Windows en parte debido a sus experiencias recientes en Ubuntu. He notado que últimamente las actualizaciones parecen ser diarias. Tal vez debería cerrar el mío ya que no tengo errores ahora.
WinEunuuchs2Unix
¿Se saltan los portones esenciales de StableReleaseUpdates con más frecuencia, especialmente para los paquetes centrales? AFAIK que no se ha anunciado, y mencionar la discusión en la lista de correo ubuntu-devel sería una medida adecuada.
Gunnar Hjalmarsson el

Respuestas:

2

La alternativa drástica es cambiar a Debian Stable, en lugar de cualquier * buntu o derivado del mismo, porque Debian Stable ha pasado por su proceso de control de calidad completo, mientras que Ubuntu se deriva de Debian Testing, que tiene un largo camino por recorrer antes de que se vuelva estable.

Casi todo el conocimiento es directamente transferible, pero Debian no le brindará las últimas "campanas y silbatos" cosméticos. Sin embargo, tiene más paquetes en su repositorio ...

Me cambié a Debian, en mi caso con KDE, viniendo de Kubuntu, hace aproximadamente 5 años, después de haber tenido problemas similares. Pero todo se reduce a la elección personal.

tiger99
fuente
1
Esa es buena información. Terminé lidiando con eso configurando mi propio espejo local que esencialmente descarga todas las actualizaciones a diario. Las PC de mi LAN doméstica obtienen sus actualizaciones desde el espejo local, pero solo por comando, no automáticamente. Entonces, si algo parece aterrador, puedo sentarme allí durante unos días si lo deseo.
Mármol orgánico
Esa es una muy buena solución al problema. ¡Muchas redes empresariales están configuradas para hacer lo mismo con las actualizaciones de Windows, por razones similares!
tiger99
0

Revertir una actualización del paquete a una versión anterior

Si tiene el número de versión o la versión de destino, apt-get admite la elección de una versión o versión de destino en particular.

  1. Instalar aptitud

    sudo apt-get install aptitude
    
  2. Mostrar versiones antiguas del paquete.

    aptitude versions <package-name> | less # use less to display only the top of the list of versions
    
  3. Revierta el paquete seleccionado a una versión anterior.

    sudo apt-get -t=<target release> install <package-name>  # target release is old version
    
  4. Desinstale la actualización incorrecta del paquete seleccionado.

    sudo apt-get -t=<target release> remove <package-name> # target release is new version
    
  5. Prevenir la deshace versión del paquete que se cambie automáticamente utilizando apt-mark hold. apt-mark holdse usa para marcar un paquete como retenido, lo que evitará que el paquete se instale, actualice o elimine automáticamente.

    sudo apt-mark hold <package-name>  
    

Revertir una actualización del kernel a una versión anterior

Siga los mismos pasos que en la sección anterior, excepto que debe seguir los pasos adicionales de prueba de que todavía tiene instalada una versión del kernel que funciona antes de desinstalar el paquete del kernel roto. Lamentablemente, esto requiere reiniciar el sistema. Lamento el reinicio, porque sé que esto puede ser molesto y llevar mucho tiempo cuando se mantienen varios sistemas.


aptitude versions <package-name> no muestra todas las versiones de kernel instaladas actualmente, sin embargo, puede mostrar todas las versiones de kernel instaladas actualmente con este comando:

dpkg-query -W -f='${Package}\n' | grep -f <(ls -1 /boot/vmlinuz* | cut -d- -f2,3)  

Los resultados de este comando enumerarán los nombres de paquete de todos los paquetes de kernel que no funcionan y que deben desinstalarse.

Después de desinstalar los paquetes que pertenecen a la versión del kernel que no funciona, recibirá este mensaje:

The link /vmlinuz.old is a damaged link
Removing symbolic link vmlinuz.old 
 you may need to re-run your boot loader[grub]

Este mensaje se muestra porque vmlinuz.old está vinculado a los archivos eliminados, por lo que debe actualizar grub ejecutando este comando:

sudo update-grub
karel
fuente
1
Um, es un gran problema si tienes varios sistemas que mantener, y luego tienes que regresar y configurarlos para que arranquen desde el núcleo bueno. Y lidie con el reinicio del núcleo defectuoso, y otro reinicio para obtener el núcleo bueno.
Mármol orgánico
1
Los miembros de mi familia necesitan que sus computadoras se inicien sin que tengan que pensar qué kernel usar. Y sé cómo solucionar este problema una vez que sucede. Estoy buscando una estrategia para evitar tener el problema en primer lugar. No rechacé su respuesta, pero no responde a mi pregunta.
Mármol orgánico
2
@OrganicMarble Para sus hijos, que tal vez no sean los más expertos en informática o se preocupen por pensar en el kernel y otras cuestiones, ¿ha probado la configuración de sus computadoras solo para actualizaciones de seguridad? ? ¿Sucede el mismo problema con esa configuración? No puedo imaginar una circunstancia en la que las actualizaciones generales sean perfectas hasta que se prueben las cantidades masivas de computadoras y entornos después de su lanzamiento cuando funciona sin problemas en el laboratorio. Al menos su pregunta muestra soluciones rápidas cuando surgen los problemas.
LD James
1
@LDJames que es una buena sugerencia. Sin embargo, sospecho que estas actualizaciones del kernel eran actualizaciones de seguridad. No estoy seguro de cómo volver y comprobar eso.
Mármol orgánico
1
@OrganicMarble Puede volver y verificar examinando los unattendedarchivos de registro ( /var/log/unattended-upgrades). Creo que el unattended-upgradespaquete es para actualizaciones de seguridad.
LD James
-1

Su mejor estrategia, como cualquier sistema operativo, es buscar actualizaciones un mínimo de una vez por día.

Desde el punto de vista de la seguridad, no es realista que un solo usuario ejecute actualizaciones demoradas mientras se prueban y priorizan individualmente. Y una actualización urgente siempre es más importante que una actualización.

Por lo tanto, a menos que tenga el tiempo disponible para investigar cada actualización, la mejor estrategia es aplicar las actualizaciones a medida que se lanzan, incluso si esto da como resultado muchas actualizaciones extraídas. Estos siempre se pueden limpiar más tarde.

Como estrategia de respaldo, siempre debe ... ¡respaldar! Copia de seguridad a menudo, copia de seguridad de todo. Las malas actualizaciones son una de las razones de esto. Esto es especialmente útil si mantiene sus documentos importantes en la nube.

EDITAR: Mi respuesta se basa en el supuesto de que usted es una persona soltera con computadoras personales en el hogar.

dorio
fuente
1
Una estrategia de "sonreír y soportarlo" no es lo que estoy buscando.
Mármol orgánico
@OrganicMarble Nunca dije eso. Pero supongo que eres un solo usuario y estás hablando de un sistema personal. De lo contrario, amplíe su pregunta. Solo hay mucho que puede hacer como una sola persona cuando se trata de administrar actualizaciones. Administro sitios grandes con docenas de servidores y cientos de estaciones de trabajo en una organización que es cientos de veces más grande que mis sitios. Todos nos ocupamos de las actualizaciones de una manera muy compleja que una sola persona nunca podría hacer.
Dorian
Sí, supongo que estoy en un caso de esquina, donde somos una familia que usa Ubuntu con 5 computadoras, además ejecuto varias máquinas virtuales. Entonces aprox. 10 sistemas que tengo que gestionar. Muy pocos para obtener un sistema de gestión automatizado, pero suficiente para hacer cosas como esta súper molestas.
Mármol orgánico
@OrganicMarble Sí, eso dificulta la administración de una sola persona. Y, sinceramente, lo mejor que puede hacer es seguir actualizando con la mayor frecuencia posible. Una demostración rápida para los miembros de su familia probablemente ayudaría cuando se trata de múltiples opciones emergentes del kernel. Solo deberías mostrarlos una o dos veces. ¿Ha considerado un script simple que se ejecuta desde un crontrabajo para verificar si hay varios núcleos? ¿Son los núcleos múltiples la principal preocupación?
Dorian