Como converter do RPM para o pacote Deb e Deb para RPM usando Alien

Como converter do RPM para o pacote Deb e Deb para RPM usando Alien

Como tenho certeza que você já sabe, existem muitas maneiras de instalar o software no Linux: usando o sistema de gerenciamento de pacotes fornecido por sua distribuição (aptidão, yum ou zypper, para citar alguns exemplos), compilando da fonte (embora um pouco Rara hoje em dia, era o único método disponível durante os primeiros dias do Linux), ou utilizando uma ferramenta de baixo nível, como dpkg ou RPM com .Deb e .RPM pacotes independentes, respectivamente, respectivamente.

Converta RPM em pacote Deb e Deb em RPM usando Alien

Neste artigo, apresentaremos você estrangeiro, uma ferramenta que converte entre diferentes formatos de pacote Linux, com .RPM para .Deb (e vice -versa) sendo o uso mais comum.

Essa ferramenta, mesmo quando seu autor não a mantém mais e afirma em seu site que o Alien sempre permanecerá em status experimental, pode ser útil se você precisar de um certo tipo de pacote, mas só pode encontrar esse programa em outro formato de pacote.

Por exemplo, estrangeiro salvou meu dia uma vez quando eu estava procurando por um .Deb motorista para um jato de tinta impressora e não conseguiu encontrar nenhum - o fabricante forneceu apenas um .RPM pacote. Instalei Alien, converti o pacote e, em pouco tempo, pude usar minha impressora sem problemas.

Dito isto, devemos esclarecer que esse utilitário não deve ser usado para substituir importantes arquivos e bibliotecas do sistema, pois eles são configurados de maneira diferente nas distribuições. Use apenas o Alien como último recurso se os métodos de instalação sugeridos no início deste artigo estiverem fora de questão para o programa necessário.

Por último, mas não menos importante, devemos observar que, embora vamos usar CENTOS e Debian Neste artigo, Alien também é conhecido por trabalhar em Slackware e mesmo em Solaris, além das duas primeiras distribuições e suas respectivas famílias.

Etapa 1: Instalando o Alien e as dependências

Para instalar estrangeiro em CENTOS/RHEL 7, você precisará ativar o EPEL e a Nux detop (Sim, é detop - não para desktop) Repositórios, nessa ordem:

# yum installel-lançamento # rpm --import http: // li.Nux.ro/download/nux/rpm-gpg-key-nux.ro 

A versão mais recente do pacote que permite este repositório é atualmente 0.5 (publicado em AUG. 10, 2015). Você deve verificar http: // li.Nux.ro/download/nux/detop/el7/x86_64/para ver se há uma versão mais recente antes de prosseguir:

# rpm -uvh http: // li.Nux.ro/download/nux/detop/el7/x86_64/nux-dextop-lase-0-5.EL7.Nux.Noarch.RPM 

então faça,

# yum update && yum install alien 

Em Fedora, você só precisará executar o último comando.

Em Debian e Derivativos, simplesmente faça:

# Aptitude Install Alien 

Etapa 2: convertendo de .deb para .pacote de rpm

Para este teste, escolhemos DateUtils, que fornece um conjunto de data e tempo Utilitários para lidar com grandes quantidades de dados financeiros. Vamos baixar o .Deb pacote para o nosso CENTOS 7 caixa, converta -a para .RPM e instale:

Verifique a versão do CentOS
# cat/etc/centos-lançamento # wget http: // ftp.nós.Debian.org/debian/pool/main/d/dateutils/dateutils_0.3.1-1.1_amd64.Deb # Alien-para RPM-Scripts dateUtils_0.3.1-1.1_amd64.Deb 
Converter .deb para .Pacote RPM no Linux

Importante: (Observe como, por padrão, Alien aumenta o número menor da versão do pacote de destino. Se você quiser substituir esse comportamento, adicione o -Keep-Version bandeira).

Se tentarmos instalar o pacote imediatamente, encontraremos um pequeno problema:

# rpm -uvh dateUtils -0.3.1-2.1.x86_64.RPM 
Instale o pacote RPM

Para resolver esta questão, permitiremos o Repositório de teste de Epel e instale o rpmrebuild utilidade para editar as configurações do pacote a ser reconstruído:

# yum --enableRepo = instalação de teste de epel RPMrebuild 

Então corra,

# rpmrebuild -pe dateUtils -0.3.1-2.1.x86_64.RPM 

Que abrirá seu editor de texto padrão. Vou ao %arquivos Seção e exclua as linhas que se referem aos diretórios mencionados na mensagem de erro e salve o arquivo e saia:

Converter .Deb to Alien Version

Quando você saída O arquivo que você será solicitado a continuar com a reconstrução. Se você escolher Y, O arquivo será reconstruído no diretório especificado (diferente do diretório de trabalho atual):

# rpmrebuild -pe dateUtils -0.3.1-2.1.x86_64.RPM 
Construa o pacote RPM

Agora você pode prosseguir para instalar o pacote e verificar como de costume:

# rpm -uvh/root/rpmbuild/rpms/x86_64/dateUtils -0.3.1-2.1.x86_64.rpm # rpm -qa | Grep DateUtils 
Instale o pacote de compilação RPM

Finalmente, você pode listar as ferramentas individuais que foram incluídas com DateUtils e, alternativamente, verifique suas respectivas páginas de homem:

# ls -l /usr /bin | Grep DateUtils 
Verifique o pacote RPM instalado

Etapa 3: convertendo de .rpm para .Pacote Deb

Nesta seção, ilustraremos como converter de .RPM para .Deb. Em um 32 bits Debian Wheezy caixa, vamos baixar o .RPM pacote para o Zsh concha do CENTOS 6 OS repositório. Observe que este shell não está disponível por padrão em Debian e Derivativos.

# gato /etc /shells # lsb_release -a | Tail -N 4 
Verifique a versão do Shell e Debian OS
# wget http: // espelho.CENTOS.org/CentOS/6/OS/i386/pacotes/zsh-4.3.11-4.EL6.CENTOS.I686.RPM # Alien-para DEB-Scripts ZSH-4.3.11-4.EL6.CENTOS.I686.RPM 

Você pode desconsiderar com segurança as mensagens sobre uma assinatura ausente:

Converter .rpm para .Pacote Deb

Depois de alguns momentos, o .Deb O arquivo deve ter sido gerado e estar pronto para instalar:

# dpkg -i zsh_4.3.11-5_I386.Deb 
Instale o pacote de Deb convertido RPM

Após a instalação, você pode verificar isso Zsh é adicionado à lista de shells válidos:

# gato /etc /conchas 
Confirme o pacote ZSH instalado

Resumo

Neste artigo, explicamos como converter de .rpm para .Deb e vice -versa para instalar pacotes como último recurso quando esses programas não estão disponíveis nos repositórios ou como código -fonte distribuível. Você vai querer marcar este artigo, porque todos nós precisaremos de alienígena uma vez ou outro.

Sinta -se à vontade para compartilhar seus pensamentos sobre este artigo usando o formulário abaixo.