Tenho um desejo ardente de instalar RPMs na minha instalação do Ubuntu - isso é possível? Posso usar o Yum - ou outra ferramenta de gerenciamento de pacotes RPM?
Tenho um desejo ardente de instalar RPMs na minha instalação do Ubuntu - isso é possível? Posso usar o Yum - ou outra ferramenta de gerenciamento de pacotes RPM?
Respostas:
Posso usar o Yum
Eu não recomendaria. Você provavelmente poderia compilá-lo, mas não teria nenhum repositório de pacotes compatível com o Ubuntu para ele lidar.
Você pode converter arquivos RPM únicos em DEBs com o Alien:
sudo apt-get install alien
sudo alien my_package.rpm
sudo dpkg -i my_package.deb
Nota: pode alterar o nome do arquivo um pouco mais do que apenas a extensão.
Isso não funcionará para tudo, pois os pacotes vinculam-se a outros pacotes para cumprir dependências. Obviamente, o Red Hat / Fedora / CentOS usa nomes de pacotes diferentes para o Ubuntu, então é provável que você encontre muita carga.
As chances são de que, se não existir um DEB, será melhor você obter a fonte e compilá-la.
make install
e é muito útil. Ser capaz de remover pacotes é definitivamente uma vantagem!
checkinstall
é excelente para manter uma autoconstrução em um ambiente empacotado, mas possui algumas peculiaridades que às vezes significam que algo que será instalado através da make install
instalação não será instalado. Eu uso quando posso.
alien --install my_package.rpm
.
error while loading shared libraries: libreadline.so.7
Você precisará alien
fazer isso.
sudo apt-get install alien
Isso instalará todos os pacotes necessários. Agora você pode começar a converter seus arquivos .rpm em pacotes .deb.
Opções disponíveis para alien
:
Converta o package.rpm em package.deb
sudo alien -d package-name.rpm
Converta package.rpm
em package.deb
e instale o pacote gerado.
alien -i package-name.rpm
Se você deseja impedir que o estrangeiro altere o número da versão, use o seguinte comando
alien -k rpm-package-file.rpm
A resposta curta é: não!
Se você tem um RPM tão importante que precisa dele, provavelmente também existe um pacote Ubuntu; e, se não, provavelmente vale a pena ter o trabalho de compilá-lo da fonte para o formato de pacote Debian (que o Ubuntu também usa). Agora, existem momentos em que você não pode recompilar o software (se não for de código aberto, é impossível) e, nesse caso, você pode usar o alien
programa. Mas instalar a partir das RPMs é como colocar gasolina em um carro a diesel - pode funcionar, mas você não se beneficiará disso a longo prazo!
Para compilar um pacote a partir da fonte, há um guia no Ubuntu Wiki; também existe um programa chamado checkinstall que pode fazer alguns truques com uma árvore de origem padrão sem configurar as instruções de compilação do pacote. Se você acha que alguém pode se beneficiar dos programas que você compila, você pode configurar um repositório na barra de ativação e compartilhar a bondade do pacote!
Se você realmente precisa instalar RPMs no seu sistema, tente convertê-los usando 'alien'.
Por favor, tenha em mente que, por padrão, 'alien' irá interferir com o número da versão do pacote. Se você quiser que o número da versão permaneça o mesmo, passe a opção '-k' ao converter.
Você não deve tentar usar o Yum ou qualquer outra maneira de instalar os RPMs, como o apt-rpm, próximos aos pacotes DEB existentes. Os sistemas DEB e RPM gerenciam a lista de softwares instalados separadamente e, portanto, não sabem quais pacotes foram instalados anteriormente pelo outro sistema. Se, por exemplo, você tentar instalar um aplicativo com interface gráfica do usuário com um sistema de gerenciamento de pacotes baseado em RPM, ele tentará instalar os componentes vitais do sistema, porque acha que eles ainda não estão instalados. Isso fará com que a instalação falhe terrivelmente ou substitua os arquivos vitais do sistema.
Há um gerenciador de pacotes da GUI chamado SmartPM nos repositórios, ele pode manipular .deb AND .RPM. A Canonical contribuiu para este projeto até novembro de 2009.
A home page do projeto está aqui https://github.com/smartpm/smart
Alien é uma ferramenta que converte de um formato (.deb ou .rpm) para outro (.deb, .rpm ou tarball)
O Alien não é aconselhado a usar na conversão de .deb para .rpm, é perfeito para converter .deb em tarballs
Apesar de o Alien tentar preservar os metadados durante a conversão, ainda haverá problemas de metadados e dependência que tornam o pacote menos confiável e, portanto, haverá conflitos ao adicionar ou remover pacotes de distorção no futuro.
Na verdade, a opção mais curta é
sudo alien -i -k packagename.rpm
Não tem um alienígena? Pegue um!
sudo apt-get install alien
O Alien converterá o pacote rpm para o pacote deb, a opção -i significa instalar o pacote convertido após a conversão e a opção -k garante que a versão não seja +1 após a conversão.
Siga estas instruções:
alien -k avg71lms-r30-a0782.i386.rpm
Agora você deve ter um avg71lms-r30-a0782.i386.deb
arquivo.
Para instalar o arquivo .deb:
dpkg -i avg71lms-r30-a0782.i386.deb
Se você não usar a -k
opção, deverá ver o avg71lms_r30-1_i386.deb
arquivo, a diferença é que ela adicionará 1.
Instale o alien no Ubuntu:
sudo apt-get install alien
Você pode verificar a seção acima para opções disponíveis
Com o alien, posso simplesmente converter o arquivo .rpm em um arquivo .deb e simplesmente instalar esse.
O Alien está disponível nos repositórios Debian normais, para que possamos instalá-lo assim:
sudo apt-get install alien
Para convertê-lo em um pacote .deb, simplesmente executamos
alien *.rpm
--scripts
(ou -c
)
use alien que converte o rpm em deb e posteriormente instala o deb.
Aqui está uma GUI para o Alien (alien é um aplicativo para converter rpm em deb)