Estratégia para lidar com o QA cada vez mais pobre da Canonical?

13

Minha installed (local or obsolete)categoria está se enchendo porque a Canonical ultimamente vem lançando atualizações e as puxando para trás. Isso aconteceu com dois núcleos no passado recente e aconteceu novamente cupsnesta manhã. Estou usando o Ubuntu há cerca de três anos e não me lembro disso acontecendo com a mesma frequência deste ano.

Então, como lidar racionalmente com isso?

Pensei em instalar atualizações apenas uma vez por semana, mas isso não protegeria contra a atualização ruim que eles lançaram antes de eu verificar essa semana.

É uma boa estratégia instalar apenas atualizações no fim de semana? Parece que as atualizações do sistema geralmente não são enviadas nos finais de semana. Suponho que eles poderiam fazer uma atualização ruim na sexta-feira à tarde e fazer na segunda-feira de manhã.

Ou, de alguma forma, não instale atualizações até que elas tenham sido enviadas por um determinado período de tempo - como dois dias? Existe uma maneira automatizada de fazer isso?

Edit: Um dos sistemas afetados executa o Lubuntu 16.04 com o linux-generickernel, o outro executa o Lubuntu 16.04 com o linux-generic-hwe-16.04kernel. Ambos foram afetados por uma cupsatualização da versão 2.13-4ubuntu0.2 que foi enviada e retirada em 27 de março de 2017. A linux-genericmáquina recebeu uma versão de atualização do kernel 4.4.0.67.12 que foi posteriormente retirada. Esta atualização também ficou órfã snapdversão 2.23.1 A linux-generic-hwe-16.04máquina recebeu uma versão do kernel 4.8.0.42.14 que ficou órfã.

Mármore orgânico
fonte
2
Obrigado por esclarecer a versão. Fiquei me perguntando se você estava lidando com uma versão LTS, enquanto as versões intermediárias (para mim) são principalmente para testes com muitas alterações que podem fazer parte do LTS. Quanto às versões LTS nas quais eu me concentro, não tenho observado o suficiente para perceber erros pendentes. Eu atualizo regularmente. Percebo pequenos problemas de tempos em tempos, com os quais aparentemente os desenvolvedores estão constantemente lidando. Você pode considerar o foco nas atualizações de segurança para um sistema seguro e permitir que as alterações diárias sejam tratadas pelos mais ousados.
LD James
1
@fkraiem sim, eu vi dois lançamentos recentes do kernel sendo retirados logo depois que fui notificado de que eles estavam disponíveis. Engraçado, decidi fazer as atualizações mais tarde e, quando voltei, elas se foram!
heynnema
Eu costumava desativar as atualizações automáticas do Windows em parte por causa de suas experiências recentes no Ubuntu. Tenho notado ultimamente que as atualizações parecem diárias. Talvez eu deva desligar o meu, pois não tenho bugs agora.
WinEunuuchs2Unix 27/03
Eles estão pulando portons essenciais do StableReleaseUpdates com mais frequência, especialmente para os pacotes principais? AFAIK que não foi anunciado, e trazer a discussão à lista de discussão ubuntu-devel seria uma medida adequada a ser tomada.
Gunnar Hjalmarsson 27/03

Respostas:

2

A alternativa drástica é mudar para o Debian Stable, em vez de qualquer * buntu ou derivado do mesmo, porque o Debian Stable passou por todo o processo de QA, enquanto o Ubuntu é derivado do Debian Testing, que ainda tem algum caminho a percorrer antes de se tornar estável.

Quase todo o conhecimento é diretamente transferível, mas o Debian não fornecerá todos os mais recentes "sinais e sons" cosméticos. No entanto, possui mais pacotes em seu repositório ...

Mudei para o Debian, no meu caso com o KDE, vindo do Kubuntu, cerca de 5 anos atrás, tendo tido problemas semelhantes. Mas tudo se resume à escolha pessoal.

tiger99
fonte
1
Essa é uma boa informação. Acabei lidando com isso configurando meu próprio espelho local, que basicamente baixa todas as atualizações diariamente. Os computadores da minha LAN local recebem as atualizações do espelho local, mas apenas sob comando, não automaticamente. Portanto, se algo parecer assustador, posso ficar sentado por alguns dias, se quiser.
Organic Marble
Essa é uma solução muito boa para o problema. Muitas redes comerciais são configuradas para fazer o mesmo com as atualizações do Windows, por motivos semelhantes!
tiger99
0

Reverter uma atualização de pacote para uma versão mais antiga

Se você possui o número da versão ou o release de destino, o apt-get suporta a escolha de uma versão ou release de destino específico.

  1. Instale o aptitude

    sudo apt-get install aptitude
    
  2. Mostrar versões antigas do pacote.

    aptitude versions <package-name> | less # use less to display only the top of the list of versions
    
  3. Reverta o pacote selecionado para uma versão mais antiga.

    sudo apt-get -t=<target release> install <package-name>  # target release is old version
    
  4. Desinstale a atualização incorreta do pacote selecionado.

    sudo apt-get -t=<target release> remove <package-name> # target release is new version
    
  5. Impedir que a versão do pacote revertido seja atualizada automaticamente usando apt-mark hold. apt-mark holdé usado para marcar um pacote como retido, o que impedirá que o pacote seja instalado, atualizado ou removido automaticamente.

    sudo apt-mark hold <package-name>  
    

Reverter uma atualização do kernel para uma versão mais antiga

Siga as mesmas etapas da seção anterior, exceto que você deve seguir as etapas adicionais de teste que ainda possuem uma versão do kernel instalada que funcione antes de desinstalar o pacote do kernel quebrado. Infelizmente, isso requer a reinicialização do sistema. Sinto muito pela reinicialização, porque sei que isso pode ser incômodo e demorado quando você mantém vários sistemas.


aptitude versions <package-name> não mostra todas as versões do kernel atualmente instaladas, no entanto, você pode mostrar todas as versões do kernel atualmente instaladas com este comando:

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

Os resultados deste comando listarão os nomes dos pacotes de todos os pacotes do kernel que não funcionam, que devem ser desinstalados.

Depois de desinstalar os pacotes que pertencem à versão não funcional do kernel, você receberá esta mensagem:

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

Esta mensagem é mostrada porque o vmlinuz.old está vinculado aos arquivos removidos, portanto, você precisa atualizar o grub executando este comando:

sudo update-grub
karel
fonte
1
Hum, é uma grande dor se você tiver vários sistemas para manter, e depois precisar voltar e configurá-los para inicializar a partir do bom kernel. E lide com a reinicialização do kernel ruim e outra reinicialização para obter o bom kernel.
Organic Marble
1
Os membros da minha família precisam inicializar seus computadores sem que eles precisem pensar em qual kernel usar. E sei como corrigir esse problema quando ele acontecer. Estou procurando uma estratégia para evitar o problema em primeiro lugar. Não diminuí a votação da sua resposta, mas ela não responde à minha pergunta.
Organic Marble
2
@OrganicMarble Para seus filhos, que podem não ser os mais conhecedores de computadores ou se preocupam em se preocupar com o kernel e os assuntos, você já testou a configuração dos computadores deles apenas para atualizações de segurança ? O mesmo problema ocorre com essa configuração? Não consigo imaginar uma circunstância em que as atualizações gerais sejam perfeitas até que as quantidades em massa de computadores e ambientes sejam testadas após o lançamento, quando funcionar sem problemas no laboratório. Pelo menos sua pergunta está mostrando correções rápidas quando os problemas surgirem.
LD James
1
@LDJames, que é uma boa sugestão. Suspeito, no entanto, que essas atualizações do kernel sejam atualizações de segurança. Não sei como voltar e verificar isso.
Organic Marble
1
@OrganicMarble Você pode voltar e verificar examinando os unattendedarquivos de log ( /var/log/unattended-upgrades). Acredito que o unattended-upgradespacote seja para atualizações de segurança.
LD James
-1

Sua melhor estratégia, como qualquer sistema operacional, é verificar atualizações no mínimo uma vez por dia.

Do ponto de vista da segurança, não é realista que um único usuário execute atualizações atrasadas enquanto elas são testadas e priorizadas individualmente. E uma atualização urgente é sempre mais importante do que uma atualização.

Portanto, a menos que você tenha tempo disponível para investigar todas as atualizações, a melhor estratégia é aplicar as atualizações quando elas forem lançadas, mesmo que isso resulte em muitas atualizações extraídas. Estes sempre podem ser limpos mais tarde.

Como estratégia de backup, você deve sempre ... fazer backup! Faça backup frequentemente, faça backup de tudo. As atualizações incorretas são uma das razões para isso. Isso é especialmente útil se você mantiver seus documentos importantes na nuvem.

EDIT: Minha resposta é baseada na suposição de que você é uma pessoa solteira com computadores pessoais em casa.

Dorian
fonte
1
Uma estratégia de "sorrir e aguentar" não é o que estou procurando.
Organic Marble
@OrganicMarble Eu nunca disse isso. Mas suponho que você é um usuário único e está falando de um sistema pessoal. Caso contrário, expanda sua pergunta. Há muito o que você pode fazer como uma única pessoa quando se trata de gerenciar atualizações. Eu gerencio sites grandes com dezenas de servidores e centenas de estações de trabalho em uma organização centenas de vezes maior que os meus sites. Todos nós lidamos com atualizações de uma maneira muito complexa que uma única pessoa nunca poderia fazer.
Dorian
Sim, acho que estou em uma esquina, onde somos uma família que usa Ubuntu com 5 computadores, além de executar várias máquinas virtuais. Tão aprox. 10 sistemas que tenho que gerenciar. Muito pouco para obter um sistema de gerenciamento automatizado, mas o suficiente para tornar coisas como essas super irritantes.
Organic Marble
@OrganicMarble Sim, isso dificulta o gerenciamento de uma única pessoa. E honestamente, a melhor coisa que você pode fazer é continuar atualizando o mais rápido possível. Uma demonstração rápida para os membros da sua família provavelmente ajudaria quando se trata de várias opções de kernel aparecendo. Você só precisa mostrá-los uma ou duas vezes. Você considerou um script simples que é executado a partir de um crontrabalho para verificar vários kernels? Múltiplos núcleos são a principal preocupação?
Dorian