domingo, 27 de junho de 2021

Como migrar de CentOS 8 para o Rocky Linux 8

Aconteceram várias coisas nesta semana. Dentre elas o anuncio de uma nova versão do Windows pela MicrosoftCPI pegando fogo no Senado (Que sexta foi essa??) e mais algumas outras. Mas nós vamos focar em um lançamento no mundo Linux: O lançamento do Rocky Linux 8.4.



Como foi explicado em https://www.adilson.net.br/2020/12/o-centos-como-conhecemos-chegara-ao-fim.html, o Rocky Linux pretende ser uma distribuição 100% compatível com o Red Hat Enterprise Linux (RHEL), o que o tornará o que o CentOS deixará de ser no final do ano. Um clone gratuito do RHEL no qual não será necessário pagar para baixar as atualizações.

"Ain, mas a Red Hat já disponibilizou o RHEL gratuito para pequena escala."

Eu sei, a pressão dos usuários leva a isso. Mas aí já é tarde demais. E se precisar de ir além de 16 máquinas, alguma alternativa? É aí que comentei no post anterior sobre o assunto. Se um projeto não está mais agradando a comunidade, vamos partir para um fork?

É neste ponto que o Gregory Kurtzer, um dos criadores originais do CentOS, resolveu agir e, com ajuda de usuários e empresas, como a Amazon Web Services, Google, e Microsoft, chegamos na disponibilização de uma versão estável do Rocky Linux.

E como o Rocky Linux é um clone do RHEL, é possível passar do CentOS 8 para o Rocky Linux 8. Uma publicação em https://ostechnix.com/how-to-migrate-to-rocky-linux-8-from-centos-8-linux/ explica como isso é feito e vou reproduzir logo abaixo.

OBS: Este blog não se responsabiliza por estragos causados por quem seguir as dicas a seguir. Se não quer ter problemas no seu sistema ou no sistema dos outros, FAÇA UM BACKUP PRIMEIRO. Seja gerando uma imagem em disco do sistema On Premise, gerando um snapshot da sua máquina virtual ou do seu provedor em nuvem, ou tendo uma máquina reserva com o sistema antigo. Depois não venha chorando dizendo que fez besteira.

E a explicação será sem o sudo, diferente da publicação original estarei usando os comandos como usuário root. Mas quem tem usuário no arquivo sudoers pode rodar com o sudo por mais segurança.

1) Atualize os pacotes para a sua última versão:

dnf --refresh upgrade

2) Se houver atualizações, principalmente de kernel, rode o comando 'reboot'

3) Veja se está rodando o CentOS 8 no seu sistema (A migração não funciona com CentOS 7)

cat /etc/redhat-release

A saída tem que ser algo parecido com isso:

CentOS Linux release 8.4.2105

Ainda pode rodar outro comando para confirmar

cat /etc/os-release

A saída tem que ser algo parecido com isso:

NAME="CentOS Linux"

 VERSION="8"

 ID="centos"

 ID_LIKE="rhel fedora"

 VERSION_ID="8"

 PLATFORM_ID="platform:el8"

 PRETTY_NAME="CentOS Linux 8"

 ANSI_COLOR="0;31"

 CPE_NAME="cpe:/o:centos:centos:8"

 HOME_URL="https://centos.org/"

 BUG_REPORT_URL="https://bugs.centos.org/"

 CENTOS_MANTISBT_PROJECT="CentOS-8"

 CENTOS_MANTISBT_PROJECT_VERSION="8"

4) Vamos baixar o script de migração. O migrate2rocky.sh

curl -O https://raw.githubusercontent.com/rocky-linux/rocky-tools/main/migrate2rocky/migrate2rocky.sh

O curl tem algumas pegadinhas, verifique se baixou o script correto com um editor (vi, nano, less) ou rodando um 'head migrate2rocky.sh'.

5) Dê permissão de execução ao script.

chmod +x migrate2rocky.sh

6) Rode o script para iniciar a migração

./migrate2rocky.sh -r

A partir deste ponto terá início a atualização dos pacotes. Nos testes que fiz ele só reclamou de um problema nos locales. Isso porque o script foi desenvolvido para usar a localização en_US ao invés de setarem no C padrão. E como a máquina usada usa pt_BR isso gerou alguns erros. Se virem essas mensagens, simplesmente ignore.

Na atualização deve aparecer estas mensagens:

Preparing to migrate CentOS Linux 8 to Rocky Linux 8.


Determining repository names for CentOS Linux 8.....


Found the following repositories which map from CentOS Linux 8 to Rocky Linux 8:

CentOS Linux 8  Rocky Linux 8

appstream       appstream

baseos          baseos

extras          extras


Getting system package names for CentOS Linux 8.......


Found the following system packages which map from CentOS Linux 8 to Rocky Linux 8:

CentOS Linux 8        Rocky Linux 8

centos-backgrounds    rocky-backgrounds

centos-gpg-keys       rocky-gpg-keys

centos-logos          rocky-logos

centos-indexhtml      rocky-indexhtml

centos-linux-release  rocky-release

centos-linux-repos    rocky-repos

[...]


Aí vai baixar um monte de pacotes, mudar tudo de CentOS para Rocky Linux até chegar em:

[...] 

 Complete!

 Done, please reboot your system.

 A log of this installation can be found at /var/log/migrate2rocky.log


7) Veja se ainda em alguma atualização.

dnf distro-sync -y 

8) Estando tudo ok, rode o comando 'reboot'.

9) (Opcional) Se quiser mudar o hostname pode rodar o comando:

hostnamectl set-hostname rocky8

Desloga e reloga do sistema ou,  se algum serviço estiver incomodado com a mudança de nome, dê um novo reboot.

E assim teremos um Rocky Linux a partir de um CentOS 8.

Os testes foram feitos em uma máquina virtual no Virtualbox e deixo uma demonstração da migração no vídeo logo abaixo:


Nele mostra praticamente todos os comandos usados para a migração. O tempo pode variar de instalação em instalação do CentOS 8. Tanto que, no vídeo, cortei o processo de baixar e instalar os pacotes senão ele teria a duração de quase 3,5 Pirulas (Quem assiste o canal do Pirula entende a referência). Então ele só tem um pouquinho mais de meio Pirula.


Espero que tenham gostado. Se tiverem algo relacionado ao vídeo, comentem falem. Podem criticar a vontade já que é o primeiro vídeo com a minha voz narrando.  Também aceito sugestões e podem ter certeza que será tudo considerado (quase tudo já que os trolls e haters serão ignorados) para produção de futuros vídeos de melhor qualidade.

Para baixar o Rocky Linux: https://rockylinux.org/

Tenham uma boa semana.

Nenhum comentário:

Postar um comentário