Instale o pacote Fedora Source no RHEL / CentOS

2

Estou tentando atualizar o curl em máquinas RHEL / CentOS. Eu encontrei o que parece ser o pacote de fontes apropriado em um número de repos. (ou seja, link )

Ao tentar fazer um rpm a partir do pacote fonte usando rpmbuild , recebo a seguinte saída;

# rpmbuild --rebuild curl-7.19.7-16.el6.src.rpm
Installing curl-7.19.7-16.el6.src.rpm
warning: InstallSourcePackage: Header V3 RSA/SHA256 signature: NOKEY, key ID c105b9de
warning: user mockbuild does not exist - using root
warning: group mockbuild does not exist - using root
error: unpacking of archive failed on file /usr/src/redhat/SOURCES/curl-7.15.3-multilib.patch;4e984633: cpio: MD5 sum mismatch
error: curl-7.19.7-16.el6.src.rpm cannot be installed

O problema parece ser que a fonte é destinada ao Fedora, que usa o SHA-256. Há um bug arquivado aqui que tem comentários indicando que há um meio de burlar a soma de verificação md5. No entanto, não é muito detalhado.

Existe uma maneira de instalar este pacote?

    
por Chris Henry 14.10.2011 / 17:14

4 respostas

1

Eu suponho que você queira atualizar o CentOS5 para uma versão do CentOS6. Eu acho que o problema não é com a assinatura SHA256, mas com a compressão XZ / LZMA que não é suportada pelo CentOS5.

Você precisaria:

  • execute o CentOS6 em um computador de reserva ou em uma máquina virtual - o LiveCD é suficiente
  • no CentOS6: yum install rpm-build yum-utils
  • no CentOS6: yumdownloader --source curl
  • no CentOS6: rpm -i curl-*.src.rpm
  • no CentOS6: scp -pr ~/rpmbuild your_username@your_centos_ip:
  • no CentOS5: rpmbuild -ba ~/rpmbuild/SPECS/curl.spec
por 31.12.2011 / 12:46
1

Se você não tiver uma caixa do CentOS 6 disponível como @Tometzky sugere, isso funcionará:

cd ~/rpmbuild/SOURCES
rpm2cpio ~/path/to/your/curl-*.src.rpm | cpio -idmv
mv *.spec ~/rpmbuild/SPECS/
rpmbuild -ba ~/rpmbuild/SPECS/curl.spec

Infelizmente, a reconstrução do curl a partir do CentOS 6 no CentOS 5 envolve muito mais complexidade além desse primeiro obstáculo, incluindo:

  • Rebuliding libssh2 do CentOS 6 no CentOS 5
  • Instalando o lzma
  • Outras coisas que ainda não descobri
por 13.01.2012 / 02:16
0

Tente:

rpmbuild --rebuild --define "_source_filedigest_algorithm md5" --define "_binary_filedigest_algorithm md5" curl-7.19.7-16.el6.src.rpm

Se isso não funcionar, você pode precisar extrair o RPM e reconstruí-lo:

rpm -i --nomd5 curl-7.19.7-16.el6.src.rpm
rpmbuild -ba --define "_source_filedigest_algorithm md5" --define "_binary_filedigest_algorithm md5" /usr/src/redhat/SPECS/curl.spec

Eu posso ter o nome do arquivo de especificação errado no último comando.

    
por 15.10.2011 / 00:25
0

Acho que você está falando sobre esse bug: link

FYI: The SRPMs that contain rpm with back-ported strong hashes + xz payload support are available from the Fedora Infrastructure repositories:

http://infrastructure.fedoraproject.org/builder-rpms/SRPMS/

I've been using those for a very long time on my builders and they work nicely. It would be great if they were officially accepted into RHEL5.

você quer o rpm-4.6.0-4.0.notting.1.el5

src.rpm ou binários estão em:

link

link

link

    
por 19.05.2014 / 00:42