Saudações,
Atualizar um sistema Linux local é algo relativamente simples. E neste caso, quando falo de atualização, eu estuou me referindo a mudança de versão!
Falo que é simples, pois na pior das possibilidades, por exemplo, o sistema não iniciou depois da atualização, você pode iniciar a maquina física usando um disco ou USB de recuperação.
Mas... e remotamente? 😨
Atualizando um Debian na Linode: do 9 (Stretch) ao 11 (Bullseye)
Teoricamente, mesmo em um sistema remoto, atualizar um Debian para uma nova versão também é simples. Vou contar como foi a minha experiencia recente.
O sistema atualizado foi um VPS rodando um Debian 9 alocado na Akamai Linode...
Conforme for relatando, eu deixo os links que segui para esta tarefa.
Passo 1
Cópia de segurança! Um backup funcional é o seu bote salva-vidas. Não discuta este item.
Passo 2
Sempre leia a documentação do seu provedor de serviço! Eles, melhor que ninguém sabem como a plataforma funciona.
Pesquisando na documentação eu encontrei o tópico Upgrade Debian to the Newest Release:
linode.com/docs/guides/upgrade-debian-to-the-newest-release
Esta documentação refere-se à atualização do Debian 8 para o 9. Contudo a logica é a mesma para outras versões. Aproveita e dá uma linda no guia DebianUpgrade em wiki.debian.org/DebianUpgrade.
Neste servidor com Debian 9, o source.list foi alterado para...
deb http://mirrors.linode.com/debian bullseye main contrib non-free deb-src http://mirrors.linode.com/debian bullseye main contrib non-free deb http://mirrors.linode.com/debian-security bullseye-security main contrib non-free deb-src http://mirrors.linode.com/debian-security bullseye-security main contrib non-free deb http://mirrors.linode.com/debian bullseye-backports main contrib non-free deb-src http://mirrors.linode.com/debian bullseye-backports main contrib non-free deb http://mirrors.linode.com/debian bullseye-updates main contrib non-free deb-src http://mirrors.linode.com/debian bullseye-updates main contrib non-free
Também mudei a fonte do Sury PHP que encontrei em /etc/apt/sources.list.d/sury-php.list...
deb https://packages.sury.org/php/ bullseye main
Caso você tenha outras fontes, altere!
Passo 3
Leia a documentação dos serviços críticos. Por exemplo, algumas diretivas do Apache 2.2 e 2.4 não são compatíveis (não é o caso aqui pois o Apache atual e o novo estão dentro da série 2.4.x); seria necessário reconfigurar os Vhosts depois da atualização.
Aqui, a minha unica preocupação ficou por conta do MariaDB. Este servidor no Debian 9 estava na versão 10.1, e depois da atualização passaria para a versão 10.5.
Pesquisando na documentação do MariaDB eu achei o Upgrading Between Major MariaDB Versions:
mariadb.com/kb/en/upgrading-between-major-mariadb-versions
O primeiro paragrafo já me deixou tranquilo:
MariaDB is designed to allow easy upgrades. You should be able to trivially upgrade from ANY earlier MariaDB version to the latest one (for example MariaDB 10.3.x to MariaDB 10.11.x), usually in a few seconds.
Basicamente o que precisa ser feito é parar o servidor MariaDB e iniciar o processo de atualização. Sim, nunca atualize um SQL Server para outra versão com ele rodando; isto pode causar perda de dados.
Também parei para ler sobre a questão do boot depois da instalação de um novo Kernel Linux em linode.com/docs/products/compute/compute-instances/guides/manage-the-kernel. Tudo certo, o VPS do cliente está programado para iniciar via GRUB2...
A atualização
Concluídos os passos acima, chegou a hora de atualizar.
Executei um apt update para atualizar as fontes dos pacotes; tudo certo.
Depois executei um apt upgrade para fazer a primeira camada de atualização, e uma mensagem mostra zero pacotes a serem removidos; tudo certo.
Atualizando... e... ops, um pacote quebrou a atualização. Vejamos... foi o python3-reportbug. Bem, o VPS do cliente não precisa deste pacote. Se for o caso depois eu reinstalo. Então, um apt remove python3-reportbug reportbug resolve o caso.
Agora um dpkg --configure -a para corrigir as coisa, e depois novamente um apt upgrade para continuarmos; tudo certo.
E o grans finale, um apt dist-upgrade para que aconteça a mudança do Debian stretch para o Debian bullseye.
Processando... aqui a mensagem indica 22 pacotes que serão removidos, e isto inclui o MariaDB... eheheh... normal! O sistema precisa remover o servidor SQL antigo para instalar a nova versão; "taca-le pau Marcos". 🤣
Atualizando... e... sistema atualizado. 🎉
Hora de reiniciar. Por uma questão de costume, eu efetuei o reboot pelo painel da Linode...
E acompanhei o boot pelo Lish (linode.com/docs/products/compute/compute-instances/guides/lish); tudo certo.
Bem-vindo Debian 11
Depois do boot efetuado com sucesso, é hora de conferir alguns itens...
O MariaDB, Apache e PHP-FPM estão 100% funcionais! Sites online. 😊
Ops... espere... o IMAP TLS não está respondendo! Vejamos os logs do Dovecot: ... Error: Failed to initialize SSL server context: Can't load DH parameters (ssl_dh setting): error:1408518A:SSL routines:ssl3_ctx_ctrl:dh key too small: ...
Huummm... lendo no forum forum.howtoforge.com notamos que o erro é referente ao dh.pem localizado no diretório /etc/dovecot. Tranquilo... parando o Dovecot... removendo dh.pem, criando outro dh.pem com 4096 bits, iniciando o Dovecot... e... sucesso; IMAP com TLS online.
Bem, aparentemente só falta "forçar" a reconfiguração do ISPConfig; o painel de controle de hospedagem do cliente.
Segundo o tópico Run a force update of ISPConfig localizado em howtoforge.com/update-the-ispconfig-perfect-server-from-debian-10-to-debian-11, é só executar ispconfig_update.sh --force e teclar enter quando solicitada a reconfiguração dos serviços...
Go through the update steps. When asked whether you want to reconfigure services or not, hit enter. If you skip this step by answering "no", ISPConfig won't configure your services for Debian 11 and some services might be broken.
Atualizando... e... sucesso! ISPConfig 100% funcional...
Agora o cliente pode desfrutar de um sistema atualizado.
Paz a todos!
Próxima LTS do Debian
Você deve está se perguntando o motivo que me levou a escolher o Debian 11 e não o 10.
O motivo é simples: Não quero que o cliente tenha "dor de cabeça" com descontinuação da versão por pelo menos dois anos; bem, este é o meu desejo!
Olhando em wiki.debian.org/pt_BR/LTS temos o seguinte...
Sim, ainda será definido o tempo de suporte, mas ainda assim, tendo em mente a data de lançamento e o tempo de suporte das versões anteriores, eu creio que foi uma boa escolha a versão 11!
0 comentários:
Postar um comentário