No universo dos formatos de pacotes binários, o Debian se destaca como referência. Entre a vasta gama de softwares disponíveis, o formato de arquivo DEB recebe uma atenção especial dos desenvolvedores. Consequentemente, sistemas operacionais Linux baseados no Debian frequentemente recebem as últimas novidades antes de qualquer outro. Exemplos disso incluem Steam, Spotify, Google Chrome, Skype, e muitos outros. Sistemas operacionais Linux baseados no Redhat também desfrutam de uma certa prioridade por parte dos desenvolvedores, mas não na mesma medida que os sistemas Debian. É por isso que muitos buscam meios de descompilar e realizar engenharia reversa em programas Debian. Embora existam várias abordagens para tal, a conversão de programas Debian para Redhat no Linux utilizando o conversor de pacotes Alien se mostra a mais eficaz.
Requisitos Prévios
O Alien é um programa desenvolvido em linguagem de programação Perl. Para executar esta aplicação de terminal no seu computador, é necessário instalar previamente alguns pacotes Perl. Em algumas distribuições Linux, o Perl pode já estar instalado. Este guia abordará a conversão de pacotes Debian para o formato de pacote Redhat, focando na instalação do Perl no Fedora e OpenSUSE.
Para verificar se você já possui as ferramentas necessárias para executar o Alien, abra um terminal e digite o seguinte comando:
perl --help
Ao executar este comando em um sistema Linux que já tenha as ferramentas Perl instaladas e prontas para uso, será exibido um prompt de ajuda. Este prompt detalha informações sobre a linguagem, seu uso, entre outros aspectos. Caso nada aconteça ao executar este comando, as ferramentas Perl não estão instaladas.
Instalando Perl no Fedora
sudo dnf install perl-core
Instalando Perl no OpenSUSE
O Perl está disponível no OBS. Clique aqui e selecione o botão “Instalação direta” para proceder com a instalação.
Construindo o Alien
A construção deste programa é simples e envolve apenas três etapas. Inicialmente, obtenha o código-fonte na página oficial do Source Forge. Após isso, abra uma janela de terminal e siga as instruções abaixo.
Primeiramente, navegue até o diretório onde o código-fonte do Alien foi baixado.
cd ~/Downloads
Em seguida, extraia o conteúdo do arquivo usando o comando tar.
tar xvfJ alien_8.95.tar.xz
Após a extração, entre no diretório do código com o comando cd.
cd alien_8.95
Utilize o Perl para criar um MakeFile. Este passo é crucial, pois sem ele, seu computador não saberá como construir o software.
perl Makefile.PL
Agora, use o arquivo make recém-criado para “construir” o software.
make
O Alien foi construído e está pronto para uso. Resta apenas mover o software do diretório de código-fonte para o local apropriado em seu computador. Isso é feito através do comando “make install”. Diferente dos comandos anteriores, “make install” DEVE ser executado com privilégios sudo, pois ele move o software para diretórios importantes do sistema.
sudo make install
Após a execução do comando “make install”, inicie o Alien pelo terminal digitando: alien
Convertendo Pacotes Debian para Redhat
Para converter um pacote do formato Debian para Redhat, primeiramente baixe um pacote. Devido à popularidade do formato DEB no Linux, não deve ser difícil encontrá-los. Em caso de dúvidas, confira um guia sobre como encontrar softwares no Ubuntu.
Após ter um arquivo de pacote Debian, abra um terminal. Em seguida, navegue até a pasta de downloads.
cd ~/Downloads
Converta o programa de DEB para RPM com a opção -r.
sudo alien -r *.deb
A execução deste comando provavelmente resultará na geração de um pacote RPM pelo Alien. É importante notar que este processo nem sempre funciona. Alguns pacotes Debian podem conter arquivos especializados que impedem a conversão.
Outras Capacidades do Alien
O conversor de pacotes Alien oferece mais do que a conversão de Debian para RPM. Veja algumas de suas funcionalidades:
RPM para DEB
Através da opção -d, é possível converter um RPM para um arquivo Debian.
sudo alien -d file.rpm
Conversão para Pacote Slackware
Utilizando a opção -t, é possível converter qualquer pacote para um pacote Slackware Linux.
sudo alien -t file
Conversão para Pacote Solaris
Converta facilmente qualquer formato de pacote para o formato Solaris com o Alien, através da opção -p.
sudo alien -p file
Correção de Permissões
Às vezes, a conversão de um formato de pacote binário para outro pode gerar problemas com permissões. Por isso, o Alien possui um recurso que corrige diferentes problemas de permissão. Utilize o sinalizador –fixperms para corrigir erros.
sudo alien file --fixperms
Testes de Pacotes Gerados
É possível testar novos pacotes gerados com Alien. Para testar um pacote, use o sinalizador –test.
sudo alien file --test