Quais etapas devo executar antes de executar uma atualização de versão para evitar problemas?

10

Depois de ser notificado sobre o 1404_HWE_EOL , estou pensando em atualizar um importante sistema de produção para 16.04.1. Eu digo "importante sistema de produção" porque esta é a estação de trabalho que uso diariamente no trabalho. Quero evitar bugs ou outros problemas porque não tenho tempo demais para gastar depurando e resolvendo problemas (o departamento de TI não ajuda nos sistemas Linux). Eu tenho todos os dados armazenados em backup, mas não a partição do sistema operacional atual (posso incluir a unidade do sistema operacional como outra camada de fallback). Quais outras etapas devo executar antes de atualizar? Quero saber como minimizar as complicações ao usar a atualização de lançamento oferecida no Ubuntu.

Eu li sobre a remoção de PPAs antes da atualização . Eu tenho 27 PPAs instalados, levará algum tempo para remover todos eles, os programas que eles trazem, e depois reverter isso após a atualização. Isso tem um benefício significativo? Algo mais?

Steven C. Howell
fonte
Este sistema de produção é uma VM? Nesse caso, você pode ter uma opção para tirar uma captura instantânea e / ou reverter para ela antes da atualização. Eu usei isso antes para evitar atualizações com falha em uma máquina de desenvolvimento local (não em um servidor de produção).
ashes999
Não é uma VM. Nesse caso, isso seria uma ótima opção.
Steven C. Howell
11
Quando atualizei, o processo desativou automaticamente meus PPAs adicionados - você não precisa removê-los. Após a atualização, eu poderia reativá-los. Os problemas de dentição (para mim) eram principalmente sobre alguns PPAs que não foram atualizados para dar suporte ao Xenial.
Paddy Landau
Uma cautela. Se você possui uma placa de vídeo AMD, verifique se ela é compatível com os drivers disponíveis no 16.04. A minha não é e, para o benefício da longevidade do meu hardware, retornei à 14.04.
Tony Martin

Respostas:

13

sistema de produção importante

Eu não atualizaria um sistema como esse. Eu instalaria o 16.04 em outra máquina, copiaria os dados ativos para essa máquina. Teste, teste um pouco mais. E então faça dessa máquina o servidor de produção.

E você pode refazer isso com o 18.04 com o servidor 14.04 atual.

Por que correr riscos?

Rinzwind
fonte
Na minha situação, eu não tenho uma pilha de hardware duplicada completa, portanto, isso significa usar ddpara clonar minha unidade (SSD para HDD), testar o original e o clone, em seguida, nuke e pavimentar para ativar o novo sistema operacional. Eu sempre fiz isso no passado, mas tenho esperanças de que seguir um conjunto de etapas forneça um método confiável para atualizar para uma nova versão. Isso é otimista demais?
22316 Steven C. Howell
Não. Totalmente possível. Uma coisa que você precisa levar em consideração: 16.04 usa "systemd". Portanto, a inicialização de todos os serviços mudou.
Rinzwind
Então, quais etapas levam a melhores resultados ao usar o do-release-upgradeupgrade para o Ubuntu para a próxima versão LTS?
Steven C. Howell
Embora esta resposta forneça conselhos sólidos, que, na minha experiência, são uma maneira segura de atualizar, ela não fornece informações sobre o uso da opção de atualização de versão interna. É isso que eu quero entender melhor.
Steven C. Howell
Desculpe, "resultados aprimorados ao usar o do-release-upgrade" em comparação com o que?
Rinzwind
2

Eu pegava um backup de imagem ("dd" em um sistema Linux Live) da estação de trabalho e o convertia em uma VM do VirtualBox. (Imagem RAW para VDI). Depois disso, faça um snap e execute esta imagem no VB. Execute todas as etapas para atualizar. Se algo não estiver funcionando, coloque o snap de volta. Depois de ter um sistema atualizado, você pode converter o VDI novamente em bruto e "dd" no seu sistema ou reproduzir o livro de execução.
Mas sempre faça um último backup de imagem "dd" antes de substituir o sistema antigo.
Prefiro executar meus sistemas a partir de uma unidade USB, para que a instalação do sistema seja feita com "VDI -> RAW -> unidade USB tumb" e inicialize a partir do sistema atualizado / instalado. pronto. Ok, você "perde" uma porta USB, mas nunca se estressa e pode sempre fazer um backup do sistema com facilidade.

0x0C4
fonte
1

Aqui está uma variação da resposta de @ rinzwind que pode funcionar com o hardware que você já possui.

Se você tem (ou pode liberar) espaço livre suficiente em suas unidades de disco internas, é possível criar 2 novas partições (usando algo como gparted de uma distribuição de CD / USB ao vivo) e copiar a raiz (/) para uma delas e / home para o outro e identifique-os como root2 e home2 para facilitar a localização.

Se root e home estiverem na mesma partição, você pode copiar isso, mas é muito melhor por vários motivos, se eles estiverem separados.

Você precisará apontar a nova raiz para o novo / home editando as alterações /etc/fstabna nova partição raiz (atualizando os UUIDs das novas partições / home e raiz).

Você os obtém fazendo um ls -l /dev/disk/by-labelpara encontrar os dispositivos em que a nova raiz e a casa estão atualmente ls -l /dev/disk/by-uuidativados e depois executando para passar dos nomes dos dispositivos aos uuids.

Em seguida, atualize o grub (do seu sistema de produção) com algo como o grub-customizer para adicionar a nova raiz ao seu menu do grub.

Agora, você terá uma cópia exata do seu sistema ativo nessas partições. Você pode executar a atualização nesta cópia e ainda manter a versão de produção intacta. Você pode inicializar o que você quiser trabalhar.

Depois de concluir a atualização, você pode apenas dizer ao grub que a cópia é a ativa (entrada padrão) e que o original agora é o backup. O grub-customizer torna fácil fazer coisas assim.

Se você tiver muitos dados em / home ou root (tornando-os grandes demais para duplicar), coloque-os em sua própria partição primeiro (certifique-se de informar aos programas que acessam sobre a movimentação). Não precisa ser duplicado - apenas o backup.

Isso também facilita o backup de seus dados, porque eles não estão mais misturados com as coisas do sistema.

Com um segundo conjunto de partições de "teste", agora você pode tentar todos os tipos de coisas que não gostaria de arriscar no sistema em que depende para o dia-a-dia.

Atualmente, estou executando o Kubuntu 12.04 como este com o 16.04 nas partições "development" até que esteja configurado da maneira que eu quero.

Com os preços das unidades de disco tão baixos hoje em dia, você pode até copiar sua unidade interna existente para uma nova maior e usá-la se necessário - se sua empresa permitir.

Esta resposta cobre todos os principais detalhes de como fazer isso. Não tentei cobrir todos os pequenos detalhes de cada etapa. Mas como você está trabalhando com uma cópia de tudo, não deve haver problemas sérios e tudo o mais já foi abordado em algum lugar aqui no stackexchange.

Joe
fonte
0

Embora isso não se aplique ao seu caso específico, se o sistema Ubuntu for uma VM, você pode solucionar esse problema tirando um instantâneo antes de atualizar e reverter, se não funcionar.

Certa vez, atualizei uma das minhas VMs e, embora a atualização tenha falhado e supostamente revertida, não recebi um sistema limpo / funcional.

A resposta de @ Rinzwind também funciona com VMs: crie uma nova VM, instale a nova versão do Ubuntu nela e comece a copiar as coisas.

ashes999
fonte