Como mudar de arquivos DEB existentes para Centos RPM

3

Estou movendo um produto do Ubuntu 12.04 para o Centos 6.6. Eu tenho ~ 500 arquivos deb. (por exemplo, 'dpkg -i libaio1_0.3.109-2ubuntu1_amd64.deb'). Eu preciso desses debs em Centos.

  1. Existe uma maneira viável de instalar pacotes deb no Centos?

  2. Uma maneira confiável de converter arquivos deb para um formato Centosable? (Eu tentei o pacote "alien" e não funcionou, deu erros, falha a cada vez)

  3. Além disso, o que o comando dpkg faz com os arquivos deb? Eu sei que os pacotes rpm usam um arquivo de especificação e acionam do comando rpm para usá-lo. Não foi possível encontrar um arquivo semelhante em .debs.

por Nahshon paz 08.10.2015 / 13:54

4 respostas

3

Os problemas que você teve com alienígenas provavelmente não são devidos a um bug ou limitação no alien, mas a um problema intrínseco de sua abordagem. Converter um pacote deb em um pacote rpm é fácil, e o alien o faz bem. Converter um pacote para o Ubuntu em um pacote para o CentOS é muito mais difícil. Isso significa não apenas reempacotar os arquivos em um formato diferente, mas também mover arquivos para estar nos diretórios onde o CentOS os espera, modificando os arquivos de configuração para que eles trabalhem no CentOS (por exemplo, com um sistema init diferente), declarando dependências em pacotes que tem nomes diferentes (ou pode nem estar presente na distribuição), etc.

Com 500 pacotes, você provavelmente encontrará alguns casos difíceis. Se vale a pena o esforço para criar pacotes fictícios, criar links simbólicos e scripts de wrapper, ajustar a configuração do sistema, etc., depende de você, mas eu definitivamente estaria procurando outra solução. Em particular, note que há uma boa chance de que os binários Debian sejam compilados em versões de bibliotecas diferentes das que estão presentes no CentOS.

Se você quer rodar programas criados para o Debian em uma máquina CentOS, a menor solução seria instalar o Debian em um chroot ( este guia sobre como instalar o Debian em outra versão do Debian pode ser útil, pois não há muita dependência do lado do hospedeiro).

Se você quer ter pacotes “apropriados” do CentOS, então construí-los a partir do código-fonte será muito mais fácil do que converter os pacotes Debian.

    
por 09.10.2015 / 03:28
2

alien é a ferramenta para converter deb para rpm ou inversa ... exemplo:

sudo alien -r /var/cache/apt/archives/alien_8.90_all.deb /home/ubuntu/
    
por 08.10.2015 / 15:40
1

Tenha cuidado se você está pensando que uma conversão simples irá fazê-lo: converter um deb em RPM e vice-versa, devido a grandes diferenças no layout do sistema de arquivos, é como vestir um americano em roupas francesas e esperar que ele se encaixe Diferenças no layout do sistema de arquivos, kernel, bibliotecas e ajustes são como diferenças culturais; e você não pode esperar um bom ajuste.

O FPM é ótimo se você nunca quiser empacotar algo adequadamente, só precisa de um método de entrega de carga útil e também não se importa em nunca obter um RPM de origem. Como o FPM empacota algo depois de ser pintado com spray no sistema de arquivos (make install ou métodos similares de 'instalação' anteriores a 2000), você também não está empacotando em um local limpo e isolado com todos os benefícios intrínsecos.

Por fim, você economizará um pouco de tempo e entenderá muito mais sobre o processo, os métodos e a lógica, caso você apenas o empacote. O "pequeno" período de tempo é como a diferença entre 90 dias e 91, mas o problema do "segundo dia" após o parto, onde pequenas mudanças precisam ser feitas devido a problemas imprevistos na entrega, é resolvido trivialmente.

Antes de considerar o fpm ou outros hacks, se você não puder / não aprenderá a empacotar no linux corporativo, apenas contrate alguém. O nerd certo fará isso corretamente e, embora você não saiba como ou por que algo foi feito de uma determinada maneira, pelo menos, você terá os arquivos SPEC para ajustar rapidamente.

    
por 29.05.2016 / 17:42
0

Verifique fpm para converter deb packages em rpm . Ainda não tentei converter entre deb e rpm .

link

    
por 08.10.2015 / 15:21