Script de conversão do RHEL 7 para o CentOS 7

Os patches do php2shell (CVE-2026-109618 e CVE-2026-109619) para o PHP em fim de vida (EOL) já estão disponíveis. Como as respostas do atendimento de vendas estão mais demoradas do que o normal devido à alta demanda, a maneira mais rápida de obter os pacotes corrigidos é adquirir o ELS para Runtimes on-line (abre em uma nova aba). Leia as perguntas frequentes sobre os patches

Vá direto para um resumo gerado por IA desta postagem do blog

  • Resuma esta postagem com o Perplexity
  • Resuma esta postagem com o Gemini

Recebemos solicitações de assistência para a conversão de sistemas que rodam o RHEL 7 para o CentOS 7. Existem várias razões pelas quais as organizações desejam fazer essa transição, que vão desde o desejo de padronizar seus parques de servidores até mudanças no licenciamento, planos de migração futuros ou outros fatores. 

O CentOS é uma versão gratuita e desenvolvida pela comunidade do RHEL, o que o torna uma excelente alternativa ao RHEL licenciado para quem não precisa de suporte oficial. Embora a troca de repositórios possa parecer uma tarefa simples, trata-se, na verdade, de um processo um tanto complexo. Por esse motivo, criamos um script para realizar a conversão automaticamente.

Este artigo oferece uma análise detalhada do script de conversão e do processo de migração do RHEL 7 para o CentOS 7. É importante observar, no entanto, que o CentOS 7 chegará ao fim de sua vida útil em junho de 2024; portanto, o suporte do fornecedor será encerrado nessa data. Como isso coincide com o fim da vida útil (EOL) do RHEL 7, as organizações precisarão adquirir suporte estendido para continuar a utilizar essa distribuição com segurança.

Agora, vamos às etapas da migração…

 

O que esse script faz?

Antes de executar este script, vale a pena entender o que ele faz. Este script foi escrito em Python e realiza as seguintes nove operações:

 

1. Verifique se a conversão já foi concluída

 

Este script foi projetado para ser idempotente, o que significa que pode ser executado várias vezes sem qualquer risco. O status de cada etapa é armazenado em um arquivo especial; assim, o script nunca executará novamente uma etapa já concluída. Se todas as etapas tiverem sido concluídas, o script exibirá a mensagem “O sistema já foi migrado para o CentOS 7” e será encerrado. 

2. Verifique se o script está sendo executado com privilégios de root

A maioria dos comandos executados pelo script requer privilégios de root; por isso, isso é verificado logo no início.

 

3. Verifique se o sistema atual é o RHEL 7

O script verifica se o sistema instalado é o RHEL 7. Como cada sistema operacional possui suas próprias características específicas, tentar executar o script em um sistema não compatível pode resultar em resultados inesperados.

4. Remova os pacotes específicos do RHEL

Esta etapa remove pacotes específicos do RHEL, como logotipos e arquivos de configuração que contêm informações sobre a versão e os repositórios. Esses são os pacotes principais responsáveis pela “identidade visual” da distribuição.

 

5. Instalar pacotes específicos do CentOS

Após a remoção dos pacotes específicos do RHEL, eles são substituídos pelos pacotes correspondentes do CentOS. Daqui em diante, os repositórios do CentOS serão utilizados para instalar e atualizar pacotes. Se você estiver configurando o firewall do CentOS 7 nesta etapa, certifique-se de verificar se as configurações adequadas do firewall foram aplicadas.

 

6. Atualizar os pacotes de distribuição

É realizada uma atualização regular de todos os pacotes do sistema para as versões mais recentes disponíveis nos repositórios do CentOS.

 

7. Sincronizar pacotes de distribuição

A etapa adicional de manter os pacotes sincronizados com as versões mais recentes disponíveis nos repositórios do CentOS é necessária nos casos em que um pacote no CentOS possui uma versão inferior à do pacote equivalente no RHEL. Embora esse cenário seja raro, ele ainda precisa ser abordado, pois pode ocorrer.

 

8. Executar algumas operações específicas do EFI e do Secure Boot

Esta etapa é fundamental para a conversão de sistemas que rodam no modo UEFI (e não no BIOS). Muitas soluções e artigos não fornecem informações sobre as etapas necessárias para lidar com esses sistemas, mas ignorar isso pode resultar em um sistema operacional que não inicializa após a conversão. O RHEL e o CentOS utilizam caminhos diferentes para os carregadores de inicialização Shim e Grub2 – /boot/efi/EFI/redhat e /boot/efi/EFI/centos, respectivamente.

Essa discrepância gera dois problemas. Primeiro, após a conversão, o carregador de inicialização Grub2 tentará localizar sua configuração no novo caminho, mesmo que ela ainda esteja no diretório /boot/efi/EFI/redhat. O segundo problema diz respeito às entradas de inicialização no firmware UEFI. Uma entrada do RHEL continuará apontando para o gerenciador de inicialização em /boot/efi/EFI/redhat, que não está mais acessível por meio desse caminho. 

A maioria dos firmwares UEFI implementa um modo de contingência, no qual o carregador de inicialização ainda pode ser detectado e iniciado. No entanto, a implementação desse modo é opcional e nem todo hardware oferece suporte a ele. Consequentemente, o sistema não conseguirá inicializar após a migração. Ambos os problemas são resolvidos automaticamente nesta etapa.

Além disso, nesta etapa, o script garante que os carregadores de inicialização Shim e Grub2, bem como o kernel, sejam instalados a partir do repositório do CentOS. Se algum desses pacotes ainda estiver presente do RHEL, o sistema não conseguirá inicializar no modo Secure Boot. Esses pacotes serão detectados e reinstalados a partir dos repositórios do CentOS.

 

9. Definir o registro padrão do GRUB

Geralmente, os sistemas RHEL têm vários kernels mais recentes instalados. Portanto, na etapa final, o script define o kernel do CentOS como o kernel padrão para a próxima inicialização. Essa etapa também é necessária para sistemas que estão sendo executados no modo Secure Boot.

 

RHEL 7 para CentOS 7: Processo passo a passo

1. Faça um backup do sistema 

Antes de iniciar o processo de migração, recomendamos que você faça um backup completo do seu sistema RHEL 7. 

 

2. Baixe o script

O script em Python para migrar do RHEL 7 para o CentOS 7 está disponível no GitHub:

https://github.com/cloudlinux/rhel2centos

Você pode executar este comando para baixar o script no seu computador.

$ curl -O https://raw.githubusercontent.com/cloudlinux/rhel2centos/main/migrate_7.py

 

3. Execute o script

Assim que o arquivo for baixado, execute o script usando o comando do Python. 

$ sudo python migrate_7.py

Resultado:

O sistema foi migrado para o CentOS 7.

 

4. Verifique a migração

Para verificar se a migração foi bem-sucedida, execute o comando a seguir para conferir o arquivo de lançamento.

$ cat /etc/redhat-release

Resultado:

CentOS Linux versão 7.9.2009 (Core)

Verifique se o sistema inicializa com o kernel do CentOS por padrão.

$ sudo grubby –info DEFAULT | grep CentOS

Resultado:

title=CentOS Linux (3.10.0-1160.31.1.el7.x86_64) 7 (Core)

Observação: os números das versões podem variar à medida que novas atualizações forem lançadas.

 

RHEL 7 x CentOS 

O RHEL 7 é uma distribuição comercial desenvolvida pela Red Hat, uma importante empresa de software empresarial, enquanto o CentOS 7 é uma distribuição desenvolvida pela comunidade a partir do código-fonte do Red Hat Enterprise Linux (RHEL). 

Enquanto o RHEL 7 foi projetado especificamente para atender às necessidades de ambientes corporativos que exigem a segurança, a estabilidade e o suporte robustos da Red Hat, o CentOS 7 é popular entre usuários individuais e organizações menores que buscam uma alternativa gratuita e de código aberto ao RHEL.

Tanto o RHEL 7 quanto o CentOS 7 são considerados sistemas com bons níveis de segurança. No entanto, com suporte de nível empresarial e acesso a ferramentas de segurança proprietárias, o RHEL 7 apresenta uma vantagem modesta sobre o CentOS. Por isso, o RHEL 7 se destaca como uma opção superior para empresas que precisam de altos níveis de segurança. Contudo, para quem conta com um ambiente seguro do CentOS 7, atualizações regulares e ajustes de configuração podem torná-lo uma opção confiável.

Por outro lado, ao comparar o CentOS com o CentOS Stream, os usuários podem perceber que o CentOS Stream oferece uma versão atualizada de forma mais contínua, o que pode ser um fator a ser considerado na hora de escolher entre os dois. Seja qual for a versão escolhida, o RHEL 7 e o CentOS 7 são sistemas operacionais extremamente seguros e confiáveis, capazes de atender às necessidades da maioria dos usuários.

Também é importante observar que o suporte de manutenção para o RHEL 7 terminará em 30 de junho de 2024 e que o CentOS 7 também chegará ao fim de sua vida útil nessa data. Como resta pouco mais de um ano, recomenda-se que usuários e administradores comecem a planejar sua migração. 

Se você estiver em dúvida sobre a migração para distribuições alternativas, você pode optar pelo suporte estendido da suporte EOL da TuxCare para o CentOS 7, que oferece suporte estendido ao ciclo de vida por quatro anos.

 

Conclusão

Resumindo, a migração do RHEL 7 para o CentOS 7 pode ser uma tarefa desafiadora. No entanto, ela pode ser realizada com facilidade e sem causar impactos negativos no sistema, desde que seja feita com planejamento e execução cuidadosos. 

Esperamos que este guia ajude você a converter seu sistema RHEL 7 para o CentOS 7!

Resumo
Script de conversão do RHEL 7 para o CentOS 7
Nome do artigo
Script de conversão do RHEL 7 para o CentOS 7
Descrição
Quer saber como migrar facilmente do RHEL 7 para o CentOS 7 usando o script de conversão? Leia esta postagem do blog
Autor
Nome da editora
TuxCare
Logotipo da editora

Junte-se a mais de 4.500 profissionais de Linux e código aberto!

2 vezes por mês. Sem spam.

Índice
Obtenha as respostas sobre segurança de código aberto de que você precisa

Junte-se a mais de 4.500 profissionais de Linux e código aberto!

2 vezes por mês. Sem spam.