Rpmlib'den şikayet eden bir rpm'yi nasıl kurarım (FileDigests) <= 4.6.0-1?


27

CentOS 5'e bir rpm dosyası yüklemeye çalışıyorum ve bu sorunların nasıl çözüleceğinden emin değilim:

$ rpm --install epel-release-6-5.noarch.rpm
warning: epel-release-6-5.noarch.rpm: Header V3 RSA/SHA256 signature: NOKEY, key ID 0608b895
error: Failed dependencies:
    rpmlib(FileDigests) <= 4.6.0-1 is needed by epel-release-6-5.noarch
    rpmlib(PayloadIsXz) <= 5.2-1 is needed by epel-release-6-5.noarch

Rpmlib (FileDigests) <= 4.6.0-1 satırları ne anlama geliyor? rpmlib güncel değil mi veya FileDigests güncel değil mi? Parantezden sonra gelen bir şeyin sözdizimi nedir?

Bağımlılıkları otomatik olarak çözebilecek şekilde yum kullanmaya çalıştım ancak yapamadı:

$ sudo yum --nogpgcheck install epel-release-6-5.noarch.rpm
...
Running rpm_check_debug
ERROR with rpm_check_debug vs depsolve:
rpmlib(FileDigests) is needed by epel-release-6-5.noarch
rpmlib(PayloadIsXz) is needed by epel-release-6-5.noarch
Complete!
(1, [u'Please report this error in https://bugzilla.redhat.com/enter_bug.cgi?product=Red%20Hat%20Enterprise%20Linux%205&component=yum'])

Bu sayfada https://bugzilla.redhat.com/show_bug.cgi?id=665073 , rpm’imin güncel olmadığını ve sonra rpm sürümümle çalışan bir rpm dosyası istediğimde (4.4. 2.3) ama bunu yapmak istemiyorum. Sistemimi bu rpm dosyasıyla nasıl uyumlu hale getiririm?

Genel anahtar hatasını nasıl düzeltebileceğimi söylersen, bonus puan.


Bu tam olarak olmasa da yükleme bir paket, bir en azından bir paket ayıklamak ve yüklemeden w / o daha sonra içerikleri: rpm2cpio some-package.rpm | cpio -tviçeriğini listelemek için ile cpio -ivdayıklamak için.
ckujau

Yanıtlar:


30

Parantezden sonra gelen bir şeyin sözdizimi nedir?

Gönderen http://jfearn.fedorapeople.org/en-US/RPM/0.1/html/RPM_Guide/ch-advanced-packaging.html :

Perl ve Tcl gibi betik dilleri eklenti modüllerine izin verir. Paketiniz bu eklenti modüllerinden bazılarını gerektirebilir. RPM, script modülü bağımlılıklarını belirtmek için parantezli özel bir sözdizimi kullanır. Örneğin: Gerektirir: perl (Carp)> = 3.2 Bu, Perl için Carp eklenti modülü için 3.2'ye eşit veya daha büyük olan bir gereksinimi belirtir.

Bu durumda, rpm kütüphanesinin belirli özelliklerine atıfta bulunmaktadır.

hata: Başarısız bağımlılıklar: rpmlib (FileDigests) <= 4.6.0-1 epel-release-6-5.noarch için gerekli rpmlib (PayloadIsXz) <= 5.2-1 epel-release-6-5.noarch için gerekli

Bu, epel-releaserpm'yi tasarlanmadığı bir sisteme yüklemeye çalıştığınızı gösterir . Aslında, sorunuza, bunu CentOS 5'e kurduğunuzu belirtirken, yüklemeye çalıştığınız paket CentOS 6 (veya RHEL 6) için tasarlanmıştır. CentOS 5 için, epel-release-5-4.noarch.rpm'yi istiyorsunuz . Devam etmeden önce EPEL belgelerini okumak isteyebilirsiniz , ki bu soruya sahip olabileceğinizlerin yanı sıra bu soruyu da cevaplayacaktır.

Bağımlılıkları otomatik olarak çözebilecek şekilde yum kullanmaya çalıştım ancak yapamadı:

Doğru, çünkü bu özellikler CentOS 5'te mevcut değil. Sizden, yumsihirli tek boynuzlu atlar istediiniz perspektifinden . Bulamıyor.

Genel anahtar hatasını nasıl düzeltebileceğimi söylersen, bonus puan.

EPEL imzalama anahtarını takın. EPEL belgelerini okuduysanız - orada bulacağınız şeyler şaşırtıcı - Fedps projesi tarafından kullanılan genel anahtarların yüklenmesine ilişkin talimatları içeren https://fedoraproject.org/keys bağlantısına sahip olacaksınız .


15
Bu iyi bir cevaptır, her şeyi açıklığa kavuşturan birçok cevap vardır. Biraz keskin olan ton konusunda çok kötü. Belki de toprağın yerleşim yeri sizin için açıktır, ama benim için hepsi hala savaş sisiyle kaplı ...
Pieter Breed


4

CentOS 5.5'te benim için çalışan mevcut rmp bağlantısı:

# rpm -ivh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm

Bağımlılıkları otomatik olarak işler.

Ayrıca , en uygun / doğru adresi bulmak için , örneğin: http://dl.fedoraproject.org/pub/epel/5/i386/ (/ 6 / i386 / etc) adresinde repostu incelemek faydalı olabilir .


0

En iyi komut olacak $ yum install epel-releaseve yum doğru rpm'yi alacaktır.

Genel anahtar hatasını düzeltmek için aşağıdaki komutları daha da çalıştırabilirsiniz.

$ yum clean all
$ yum makecache
$ yum update

-1

Benim sorunum bu konuda açıklanmıştır: http://comments.gmane.org/gmane.linux.redhat.fedora.general/410408

Dokümantasyonda yayınlanan linkler (bir şekilde?) İndirme işleminde problemlere yol açan yönlendirmelerdir. Konunun söylediklerini yaptım ve sonra EPEL belgelerinin geri kalanı işe yaradı.


1
Bu bağlantı soruyu cevaplayabilse de, cevabın temel kısımlarını buraya eklemek ve referans için bağlantıyı sağlamak daha iyidir. Bağlantılı sayfa değişirse, yalnızca bağlantı yanıtları geçersiz olabilir.
Michael Hampton
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.