Utilizando o alien para a conversão de pacotes

Neste artigo estarei demonstrando como se utilizar o alien, um programa para conversão de formatos de pacotes que suporta os formatos RPM (Red Hat), DEB (Debian),
TGZ (Slackware), PKG (Solaris) e SLP (Stampede Linux).

[ Hits: 107.224 ]

Por: Eduardo Vieira Mendes em 12/05/2004


Introdução



Olá pessoal, neste artigo estarei ensinando como converter pacotes entre vários formatos utilizando o alien, uma mão na roda para usuários que não encontram alguns programas em pacotes referentes às suas distribuições.

Os formatos suportados pelo alien são: RPM (Red Hat), DEB (Debian), TGZ (Slackware), PKG (Solaris) e SLP (Stampede Linux).

Não é recomendável que você tente converter pacotes do sistema, como init, libc ou outros pacotes de tamanha importância.

Programas necessários:
Para se converter um pacote para RPM, o próprio rpm deve estar instalado, ou seja, se você usa a distro Red Hat ou outra baseada nela ou que use este formato de pacotes com certeza você o terá instalado!

Para se converter um pacote para DEB, os seguintes pacotes devem estar instalados: gcc, make, debmake, dpkg-dev e dpkg, seguindo os moldes do exemplo acima.

Para se converter um pacote para SLP, o pacote lsb deve estar instalado.

Para se converter um pacote para PKG, os pacotes Solaris pkginfo e pkgtrans devem estar instalados.

E para se converter um pacote para tgz não é necessário nenhum pacote adicional instalado!

OBS: O alien somente converte pacotes binários, ele não converte pacotes source nem SRPMS.

Então vamos para as conversões.

Para que você possa converter os pacotes é necessário estar logado como root. A sintaxe utilizada no alien é a seguinte:

alien tipo_de_pacote opções arquivo

Onde:
  • tipo_de_pacote é para qual formato vamos converter;

Os tipos de pacotes são:

-d, --to-deb
Converte para o formato deb.

-r, --to-rpm
Converte para o formato rpm.

-t, --to-tgz
Converte para o formato tgz.

--to-slp
Converte para o formato slp.

-p, --to-pkg
Converte para o formato pkg.

As opções possíveis são:

-i, --install
Automaticamente instala o pacote convertido e remove o pacote usado para a conversão.

--description=desc
Especifica a descrição do pacote. Somente tem efeito se estiver convertendo de um pacote tgz.

--version=version
Especifica a versão do pacote. Somente tem efeito se estiver convertendo de um pacote tgz.

-k, --keep-version
Por padrão, o alien modifica a versão do pacote convertido. Se esta opção for colocada ele manterá a versão do pacote.

-v, --verbose
Mostrará cada comando que o alien está executando na conversão do pacote especificado

Aqui vai uma série de exemplos usados na conversão de pacotes:

# alien --to-deb pacote.rpm

Converte o pacote.rpm para pacote.deb.

# alien --to-rpm package.deb

Converte o pacote.deb para pacote.rpm.

# alien -i pacote.rpm

Converte o pacote.rpm para pacote.deb (se nenhum tipo de pacote for especificado, o alien converte por padrão, para o formate deb) e instala o pacote convertido.

# alien --to-deb --to-tgz --to-slp kopete.deb amsn.rpm licq.tgz

Criará 9 novos pacotes. Quando o processo terminar, nós teremos os pacotes kopete, amsn e licq nos formatos deb, tgz e slp.

Para maiores informações sobre o alien, consulte o manual dele com o comando:

$ man alien

É isso ai pessoal!

Espero que a partir de agora vocês não fiquem sem aquele programa espetacular só porque não conseguiram achar um pacote compatível com sua distro!

Abraços.

   

Páginas do artigo
   1. Introdução
Outros artigos deste autor

Shorewall - Firewall passo a passo no Linux

Transforme seu Linux num Neo Geo

Trabalhando com RPM

Bluefish - um poderoso editor para web designers

Permissões e propriedades de arquivos

Leitura recomendada

Usando e abusando do Zypper

Tutorial de instalação do H3270 (sources) com SSL no RHEL5 (s390x)

NimbleX - Criando seu Linux pessoal em 5 minutos

Instalação e Configuração do Puppet

Anunciando Minitunes: Um melhor tocador de música!

  
Comentários
[1] Comentário enviado por agk em 12/05/2004 - 17:14h

Parabéns, muito interessante esse artigo.
Já precisei fazer isso mas não sabia como converter rpm para deb, agora ficou fácil.
Valeu pelo artigo, excelente.

[2] Comentário enviado por canaman em 13/05/2004 - 08:37h

faltou dizer onde encontrar o alien??? Acho que ele não vem com a maioria das distros.

[3] Comentário enviado por vodooo em 12/06/2004 - 01:15h

Obrigado pelos elogios agk!!!

Abraços

[4] Comentário enviado por __FERNANDO__ em 13/02/2005 - 16:02h

Boa pergunta hein... onde encontramos o alien ?

Em qual distribuição ele já vem ?

Fernando.

[5] Comentário enviado por RM Informática em 29/11/2005 - 16:23h

vocês podem encontrar no site do Superdownloads

o link é o seguinte:
www.superdownloads.com.br/linux


[6] Comentário enviado por linuxalexsandro em 01/03/2006 - 17:41h

Não consegui encontrar o pacote alien.tgz para instalar no slackware 10.2. Só encontrei o lastest source code (alien_8.63.tar.gz).

Como faço para conseguir instalar um pacote .rpm.bin no slackware 10.2 ?

Como converto o arquivo de extensão .rmp.bin para .tgz ?

[7] Comentário enviado por lordsun7 em 01/11/2007 - 13:17h

olá Vodooo começei a pouco tempo no linux.
vi seu artigo fiz tudo o que tinha ensinando, mas depois ñ encontro os graficos dos programas instalados que eu converti!!!
eles estão tudo em comandos??? Foi até Synaptic ver os pacotes / instalei tudo o que faltava mas nada apareceu!!!
Distribuições <<Ubuntu 7.04>>

o que posso fazer?

[8] Comentário enviado por agl77 em 26/03/2008 - 16:31h

nossa, era o q eu estava precisando, ajudou paca, vlw, parabens

[9] Comentário enviado por albfneto em 01/06/2008 - 10:28h

Olá. Eu também estou tendo problemas, Os doc oficiais dizem que há uma versão nova de alien, a partir de hj, mas cadê prá download?
No emerge, não se acha alien em nenhuma versão nos repositórios Gentoo, aí o sistema procura nos repositórios Debian e nada e eu procurei nos repositórios Ubuntu....!
Olha acho que o Alien voltou para seu planeta Natal! srrsrsrs

[10] Comentário enviado por flavioc em 04/06/2009 - 14:40h

Caro amigo to com um problema ao usar o alien. Quero converter um pacote deb para rpm. (Uso Mandriva 2009.1) Veja o erro:
alien --to-rpm gnomenu_1.9.6-6_all.deb
tar: Record size = 8 blocks
Package build failed. Here's the log of the command (cd gnomenu-1.9.6; rpmbuild -bb --target noarch gnomenu-1.9.6-7.spec):
sh: rpmbuild: command not found

Pode ajudar? Obrigado. Flávio

[11] Comentário enviado por souzarte em 28/12/2011 - 12:29h

Alguém pode me ajudar, fiz tudo o que o texto acima manda, mas no final sempre dar um erro. copiei isso aí para facilitar quem poder me ajudar.quero converter um aplicativo *.rpm para *.deb

$ sudo alien --to-deb VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm
warning: VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm: Header V4 DSA/SHA1 Signature, key ID 98ab5139: NOKEY
warning: VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm: Header V4 DSA/SHA1 Signature, key ID 98ab5139: NOKEY
warning: VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm: Header V4 DSA/SHA1 Signature, key ID 98ab5139: NOKEY
warning: VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm: Header V4 DSA/SHA1 Signature, key ID 98ab5139: NOKEY
warning: VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm: Header V4 DSA/SHA1 Signature, key ID 98ab5139: NOKEY
warning: VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm: Header V4 DSA/SHA1 Signature, key ID 98ab5139: NOKEY
warning: VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm: Header V4 DSA/SHA1 Signature, key ID 98ab5139: NOKEY
warning: VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm: Header V4 DSA/SHA1 Signature, key ID 98ab5139: NOKEY
warning: VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm: Header V4 DSA/SHA1 Signature, key ID 98ab5139: NOKEY
warning: VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm: Header V4 DSA/SHA1 Signature, key ID 98ab5139: NOKEY
warning: VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm: Header V4 DSA/SHA1 Signature, key ID 98ab5139: NOKEY
warning: VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm: Header V4 DSA/SHA1 Signature, key ID 98ab5139: NOKEY
warning: VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm: Header V4 DSA/SHA1 Signature, key ID 98ab5139: NOKEY
warning: VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm: Header V4 DSA/SHA1 Signature, key ID 98ab5139: NOKEY
aviso: VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm: Cabeçalho V4 DSA/SHA1 Signature, ID da chave 98ab5139: NOKEY
warning: VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm: Header V4 DSA/SHA1 Signature, key ID 98ab5139: NOKEY
Warning: Skipping conversion of scripts in package VirtualBox-3.2: postinst postrm preinst prerm
Warning: Use the --scripts parameter to include the scripts.
aviso: VirtualBox-3.2-3.2.8_64453_fedora13-1.i686.rpm: Cabeçalho V4 DSA/SHA1 Signature, ID da chave 98ab5139: NOKEY
Package build failed; could not run generated debian/rules file.

[12] Comentário enviado por EdvaldoSCruz em 20/11/2015 - 20:20h


Fui fazer a conversão do pacote jre-8u66-linux-i586.tar.gz para tpkg e saiu essa mensagem:

sh: pkgproto: not found
error during pkgproto:

Como resolver isso ?

[13] Comentário enviado por blx32 em 15/01/2016 - 19:42h

Olá, uso um aplicativo e adoraria criar um instalador para ele.
Para abrir-lo eu mando ./bin/phpstorm.sh e ele funciona normalzinho.

pacote/bin
pacote/help
pacote/lib
pacote/plugin
pacote/licence

Tentei seguir o tutorial, mas não deu muito certo.

O que? e como faço?
Criar um instalador a partir de um executavel, na pasta bin.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts