A versão mais recente de Suporte de longo-prazo (LTS) do sistema operacional Ubuntu, o Ubuntu 20.04 (Focal Fossa), foi lançada no dia 23 de abril de 2020. Este guia explicará como atualizar um sistema Ubuntu de versão 18.04 ou superior para o Ubuntu 20.04.
Aviso: como em quase qualquer atualização entre versões principais de um sistema operacional, este processo possui um risco inerente de falha, perda de dados ou quebra de configuração de software. Backups abrangentes e testes extensivos são fortemente aconselhados.
Para evitar esses problemas, recomendamos que você migre para um servidor Ubuntu 20.04 novo ao invés de atualizar um já existente. Você ainda pode precisar revisar diferenças na configuração de alguns softwares ao atualizar, mas o sistema principal provavelmente terá uma maior estabilidade. Siga nossa série sobre como migrar para um novo servidor Linux para aprender como migrar entre servidores.
Este guia supõe que você tenha um sistema Ubuntu 18.04 ou superior configurado com um usuário não root com sudo habilitado.
Embora muitos sistemas possam ser atualizados sem nenhum incidente, geralmente é mais seguro e mais previsível migrar para uma nova versão principal instalando a distribuição do zero, configurando os serviços realizando testes cuidadosos durante o processo. Em seguida, você migra os aplicativos ou dados de usuário em um passo separado.
Nunca deve-se atualizar um sistema de produção sem antes testar primeiro todos os seus softwares e serviços implantados em um ambiente de preparo. Lembre-se de que as bibliotecas, linguagens e serviços do sistema podem ter mudado substancialmente. Antes de atualizar, consulte as Notas de atualização do Focal Fossa.
Antes de tentar realizar uma grande atualização em qualquer sistema, você deve garantir que não perderá dados caso a atualização dê errado. A melhor maneira de conseguir isso é criando um backup do seu sistema de arquivos inteiro. Se não fizer isso, certifique-se de que você tenha cópias dos diretórios home do usuário, todos os arquivos de configuração personalizados e os dados armazenados pelos serviços, como os dos bancos de dados relacionais.
Em um Droplet da DigitalOcean, uma das abordagens é desligar o sistema e fazer uma snapshot (desligar garante que o sistema de arquivos ficará mais consistente). Veja Como criar snapshots de Droplets para obter mais detalhes sobre o processo de snapshot. Após verificar que a atualização do Ubuntu foi bem-sucedida, você pode excluir o snapshot para que você não seja mais cobrado pelo armazenamento.
Para saber os métodos de backup que funcionarão na maioria dos sistemas do Ubuntu, veja Como escolher uma estratégia de backup eficaz para seu VPS.
Antes de começar a atualização de versão, é mais seguro atualizar todos os pacotes para as versões mais recentes, compatíveis com a versão atual. Comece atualizando a lista de pacotes.
- sudo apt update
A seguir, atualize os pacotes instalados para suas últimas versões disponíveis:
- sudo apt upgrade
Uma lista de atualizações será mostrada e você será solicitado a continuar. Responda y para aceitar e pressione Enter.
Este processo pode levar algum tempo. Assim que terminar, utilize o comando dist-upgrade
com o apt-get
, que executará todas as atualizações adicionais que envolvem alterações de dependências, adicionando ou removendo novos pacotes conforme necessário. Isso realizará uma série de atualizações que podem não ter sido feitas no passo anterior do apt upgrade
:
- sudo apt dist-upgrade
Novamente, responda y quando solicitado a continuar e espere que as atualizações terminem.
Agora que você tem uma instalação atualizada do Ubuntu, utilize o do-release-upgrade
para atualizar para a versão 20.04.
Tradicionalmente, as versões do Ubuntu são atualizáveis através da modificação do /etc/apt/sources.list
do Apt – que especifica os repositórios de pacotes – e usando o apt-get dist-upgrade
para realizar a atualização em si. Embora esse processo ainda possa funcionar, o Ubuntu fornece uma ferramenta chamada do-release-upgrade
para facilitar a atualização e torná-la segura.
O do-release-upgrade
faz a verificação por uma nova versão, atualizando o sources.list
, além de diversas outras tarefas. Além disso, é o caminho de atualização oficialmente recomendado para atualizações de servidor que precisam ser executadas através de uma conexão remota.
Comece executando o do-release-upgrade
sem nenhuma opção:
- sudo do-release-upgrade
Se a nova versão do Ubuntu ainda não foi lançada oficialmente, você pode obter o seguinte resultado:
OutputChecking for a new Ubuntu release
No new release found
Observe que no servidor Ubuntu, a nova versão LTS não é disponibilizada para o do-release-upgrade
até a primeira versão de ponto, neste caso, a 20.04.1
. Normalmente, ela chega alguns meses após a data inicial de lançamento.
Se você não ver uma versão disponível, adicione a opção -d
para atualizar para a versão de desenvolvimento:
- sudo do-release-upgrade -d
Se você estiver conectado ao seu sistema através do SSH, você será questionado se deseja continuar. Para máquinas virtuais ou servidores gerenciados, você deve lembrar que a perda de conectividade SSH é um risco, especialmente se você não tiver outro meio de se conectar remotamente ao console do sistema (como, por exemplo, um recurso de console baseado em Web).
Para outros sistemas sob seu controle, lembre-se de que é mais seguro realizar atualizações de sistema operacional importantes apenas quando você tiver acesso físico direto à máquina.
No prompt, digite y e pressione Enter para continuar:
OutputReading cache
Checking package manager
Continue running under SSH?
This session appears to be running under ssh. It is not recommended
to perform a upgrade over ssh currently because in case of failure it
is harder to recover.
If you continue, an additional ssh daemon will be started at port
'1022'.
Do you want to continue?
Continue [yN]
A seguir, você será informado de que o do-release-upgrade
está inciando uma nova instância do sshd
na porta 1022:
OutputStarting additional sshd
To make recovery in case of failure easier, an additional sshd will
be started on port '1022'. If anything goes wrong with the running
ssh you can still connect to the additional one.
If you run a firewall, you may need to temporarily open this port. As
this is potentially dangerous it's not done automatically. You can
open the port with e.g.:
'iptables -I INPUT -p tcp --dport 1022 -j ACCEPT'
To continue please press [ENTER]
Pressione Enter
. Em seguida, você pode ser avisado de que uma entrada espelho não foi encontrada. Em sistemas da DigitalOcean, é seguro ignorar este aviso e continuar com a atualização, pois um espelho local para 20.04 está na verdade disponível. Digite y:
OutputUpdating repository information
No valid mirror found
While scanning your repository information no mirror entry for the
upgrade was found. This can happen if you run an internal mirror or
if the mirror information is out of date.
Do you want to rewrite your 'sources.list' file anyway? If you choose
'Yes' here it will update all 'bionic' to 'focal' entries.
If you select 'No' the upgrade will cancel.
Continue [yN]
Assim que as novas listas de pacotes forem baixadas e as alterações calculadas, você será questionado se deseja iniciar a atualização. Novamente, digite y
para continuar:
OutputDo you want to start the upgrade?
18 installed packages are no longer supported by Canonical. You can
still get support from the community.
3 packages are going to be removed. 142 new packages are going to be
installed. 452 packages are going to be upgraded.
You have to download a total of 338 M. This download will take about
42 minutes with a 1Mbit DSL connection and about 13 hours with a 56k
modem.
Fetching and installing the upgrade can take several hours. Once the
download has finished, the process cannot be canceled.
Continue [yN] Details [d]
Agora, novos pacotes serão recuperados, descompactados e instalados. Mesmo se seu sistema estiver em uma conexão rápida, isso levará algum tempo.
Durante a instalação, pode ser que diálogos interativos para várias perguntas sejam apresentados a você. Por exemplo, você pode ser questionado se deseja reiniciar automaticamente os serviços quando necessário:
Neste caso, é seguro responder Yes. Em outros casos, você pode ser questionado se deseja substituir um arquivo de configuração que você modificou. Muitas vezes, esta é uma decisão que precisa ser analisada e é provável que seja necessário conhecimento sobre softwares específicos. Isso foge do âmbito deste tutorial.
Assim que os novos pacotes terminarem de ser instalados, você será questionado se está tudo pronto para remover pacotes obsoletos. Em um sistema de estoque sem nenhuma configuração personalizada, deve ser seguro digitar y aqui. Em um sistema em que realizou grandes modificações, você pode querer digitar d e inspecionar a lista de pacotes a ser removido, caso ela inclua qualquer coisa que precise reinstalar mais tarde.
OutputRemove obsolete packages?
53 packages are going to be removed.
Continue [yN] Details [d]
Por fim, supondo que tudo tenha corrido bem, você será informado de que a atualização foi concluída e que uma reinicialização é necessária. Digite y para continuar:
OutputSystem upgrade is complete.
Restart required
To finish the upgrade, a restart is required.
If you select 'y' the system will be restarted.
Continue [yN]
Em uma sessão SSH, você provavelmente verá algo parecido com o seguinte:
OutputConnection to 203.0.113.241 closed by remote host.
Connection to 203.0.113.241 closed.
Você pode precisar pressionar uma tecla aqui para ir para o seu prompt local, pois sua sessão SSH terá side finalizada no servidor.
Espere um pouco para que seu servidor seja reinicializado, então, reconecte-se. Na tela de login, você deve ser saudado por uma mensagem confirmando que está agora no Focal Fossa:
OutputWelcome to Ubuntu 20.04 LTS (GNU/Linux 5.4.0-29-generic x86_64)
Você deve ter agora uma instalação funcional do Ubuntu 20.04. A partir daqui, você provavelmente precisará investigar as alterações de configuração necessárias para os serviços e aplicativos implantados.
Você pode encontrar mais tutoriais sobre a versão 20.04 e perguntas em nossa página com o rótulo Tutoriais Ubuntu 20.04.
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
Sign up for Infrastructure as a Newsletter.
Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.