yum error “Metalink für Repository: epel kann nicht abgerufen werden. Bitte überprüfen Sie den Pfad und versuchen Sie es erneut. “Aktualisieren Sie ContextBroker


106

Ich versuche, Orion ContextBroker mit dem Befehl yum install contextBroker zu aktualisieren. Leider erhalte ich folgenden Fehler:

Geladene Plugins: schnellster Spiegel, Refresh-Packagekit, Sicherheit Laden

Spiegelgeschwindigkeiten von zwischengespeicherten Hostdateien

Fehler: Metalink für Repository: epel kann nicht abgerufen werden. Bitte überprüfen Sie den Pfad und versuchen Sie es erneut

Was könnte schief gehen?


3
Vorgeschlagener Schritt zur Fehlerbehebung: Kann Ihr System curl -v https://mirrors.fedoraproject.org?
mwfearnley

Die ausgewählte Antwort ist eine Problemumgehung, die das Root-Problem nicht behebt. Tatsächlich kann die Paketinstallation weiterhin fehlschlagen. Ich schlage vor, die beste Antwort abzuwählen und die Stimmenzahl die Antworten nach der Antwort sortieren zu lassen, die für die meisten Menschen funktioniert hat.
Paul

Antworten:


125

Ich habe dieses Problem gelöst , indem ich sowohl Dateien /etc/yum.repos.d/epel.repoals auch /etc/yum.repos.d/epel-testing.repoDateien bearbeitet , alle Einträge beginnend mit kommentiert und alle Einträge, die mit beginnen, mirrorlist=...auskommentiert habe baseurl=....


In meinem Fall ermöglichte dieses Update yum das erfolgreiche Herunterladen von Metadaten für das Epel-Repo, aber der Versuch, Pakete zu installieren, schlug dann fehl [Errno 14] Peer cert cannot be verified or peer cert invalid. Die richtige Lösung bestand darin, ca-Zertifikate wie in der folgenden Antwort zu aktualisieren.
Bain

3
Das Kommentieren aller Einträge, die mit metalink = ... beginnen, und das Kommentieren aller Einträge, die mit baseurl = .... beginnen, hat bei RHEL7.1
Anurag Singh

1
Versuchte Ihre Methode, dann yum clean all && yum updatearbeitete. Aber nicht vollständig, hieß es epel-release-7-11.noarch: [Errno 256] No more mirrors to tryusw. Also versuchte ich es, yum update curl --disablerepo=epelwie es Sbetharia vorschlug, und versuchte es yum clean all && yum updateerneut, es funktionierte jetzt endlich.
Hosi Golden

Hat für mich gearbeitet. Vielen Dank.
Tarekahf

3
Ich hatte keine mirrorlist=Zeilen, aber ich hatte metalink=Zeilen, und diese mussten kommentiert werden.
JellicleCat

169

Sie mussten nur das ca-certificates-Paket aktualisieren. Deaktivieren Sie vorher einfach alle Repos mit https, die fehlschlagen. Aus diesem Grund würde auch eine Lösung mit dem Kommentieren der Spiegelliste oder der Verwendung von http anstelle von https funktionieren.

Wenn Sie beispielsweise nur epel repo deaktivieren müssen:

yum --disablerepo=epel -y update  ca-certificates

Dies hilft auch beim Wget, Curl und allem anderen, das SSL-Zertifikate verwendet.


9
Dies sollte als die richtige Antwort akzeptiert werden, da es die eigentliche Ursache des Problems diagnostiziert und nicht nur eine Problemumgehung darstellt.
Horatio Alderaan

1
Ich habe dies auf der CentOS 6.5 Bento Box getestet und es macht die Dinge beim Laufen etwas zuverlässiger yum clean all && yum makecache. Manchmal schlägt es jedoch immer noch fehl. Durch Hinzufügen eines Wiederholungsversuchs zu meinem Skript wurde es noch zuverlässiger. Ich vermute, dass einige Spiegel unzuverlässig sind und ein erneuter Versuch einen anderen Spiegel ergeben kann, der funktioniert. Wenn es zunächst nicht gelingt, versuchen Sie es erneut!
TrinitronX

1
Nun, das kommt aus Erfahrung, und ja, Nachricht ist kryptisch :)
XoR

2
Stellen Sie sicher, dass Sie sich hinter einem Unternehmens-Proxy befinden, um ihn auch für https festzulegen, z. B.export https_proxy=<your proxy>
Markus

3
epel-repo RPM sollte ca-Zertifikate haben, hat Abhängigkeit !!
Stéphane

59

Verwenden Sie diesen Befehl:

sudo sed -i "s/mirrorlist=https/mirrorlist=http/" /etc/yum.repos.d/epel.repo

oder alternativ Befehl verwenden

vi /etc/yum.repos.d/epel.repo

Gehen Sie zu Zeile 4 und ändern Sie die URL von

mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch

zu

mirrorlist=http://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch

Vielen Dank; Dies funktionierte nur für mich, nachdem ich viele der anderen dokumentierten Lösungen ausprobiert hatte (mein Fehler war, Cannot retrieve metalink for repository: epel/x86_64. Please verify its path and try again). Meine Frage ist, warum hat das funktioniert? Liegt dies an einem Konfigurationsproblem am Repository-Standort?
CODE-REaD

1
Wahrscheinlich nicht der HTTPS-Server, aber die clientseitige HTTPS-Unterstützung auf Systemen kann veraltet sein, da die Berechtigungen für Stammzertifikate nicht aktualisiert werden oder die SSL-Bibliotheken keine neuen Chiffren unterstützen.
mwfearnley

Nach vielen Versuchen mit Ihrem sed-Befehl gelöst. Nur Kopieren + Einfügen, das war es, was ich brauchte, weil ich normalerweise nicht für diese Art von Dingen verantwortlich bin. Ich installiere nur einen Testcomputer, der nur von mir zum Testen einiger Datenbankaktualisierungen verwendet wird.
EAmez

1
In Cent OS 7.6 ist diessudo sed -i "s/metalink=https/metalink=http/" /etc/yum.repos.d/epel.repo
JamesThomasMoon1979

19

Für meinen Fall mirrorlistfunktioniert das baseurlAuskommentieren und Entmomentieren von Einträgen nicht. Ich bemerkte, dass das Problem bei httpsden .repoFedora-Dateien lag. Ich habe es gelöst, indem ich /etc/yum.repository.dalle httpsdurch httpverschiedene .repo-Dateien ersetzt habe. Das hat funktioniert!!


Dies hat wahrscheinlich mit einem in /etc/yum.conf (Firmenproxy) festgelegten Proxy zu tun?
Christof Kälin

19

Ich denke das sollte funktionieren. Damit habe ich mein Problem gelöst.

$ sudo yum alles sauber machen

$ sudo yum --disablerepo = "epel" update nss


3
Dies woks für Centos 6.8. Danke
neo

1
Dies löste auch mein Problem, ich bin gespannt, warum das update nsshilft, dieses Problem zu lösen ?!
KLajdPaja

12

Das Aktualisieren von Curl hat bei uns funktioniert. Irgendwie verwendet yum Curl für seine Transaktionen.

yum update curl --disablerepo=epel

Ihre Antwort ist besser als die akzeptierte Antwort. Sie müssen epel.repo oder epel-testing.repo nicht ändern.
Hosi Golden

Ich habe dies aufgespürt und Curl aktualisiert, bevor ich diese oder einige der anderen Antworten gelesen habe. Ich sehe, dass das Aktualisieren von Curl auch nss aktualisiert hat ... also frage ich mich, ob das das Problem war. In meinem Fall habe ich die Metalink-URL gewellt, festgestellt, dass sie fehlgeschlagen ist, und festgestellt, dass sie mit --tlsv1 ( bugzilla.redhat.com/show_bug.cgi?format=multiple&id=1170339 ) funktioniert . Angenommen, Curl war veraltet und wurde aktualisiert. Jetzt frage ich mich also, ob NSS ohne Aktualisierung von Curl hätte aktualisiert werden können und ob es funktioniert hätte oder nicht.
Paul

9

Überprüfen Sie, ob Sie über einen Proxy auf das Internet zugreifen, und fügen Sie dann der yumKonfiguration eine Internet-Proxy-Adresse hinzu .

hinzufügen

proxy=http://ip:port

zu /etc/yum.conf


2
Stellen Sie sicher, dass auch der https-Proxy angegeben ist.
Markus

1
Dies funktionierte für mich, aber nur mit zusätzlich folgenden Parametern:proxy_username=your_user proxy_password=your_passwd
MaggusK

7

Exemplarische Vorgehensweise

Wenn Sie den folgenden Befehl ausführen, wird das Repo so aktualisiert, dass HTTP anstelle von HTTPS verwendet wird:

sudo sed -i "s/mirrorlist=https/mirrorlist=http/" /etc/yum.repos.d/epel.repo

Sie sollten dann mit diesem Befehl aktualisieren können:

yum -y update

Die einzige Lösung, die für mich funktioniert! Alle anderen haben nichts daran geändert (ich brauche Epel-Pakete).
KuroNeko

In Cent OS 7.6 ist diessudo sed -i "s/metalink=https/metalink=http/" /etc/yum.repos.d/epel.repo
JamesThomasMoon1979

6

Diese Meldung / dieser Fehler kann nach der Installation von epel-release auftreten. Die schnelle Lösung besteht darin, Ihre SSL-Zertifikate zu aktualisieren:

yum -y upgrade ca-certificates

Möglicherweise tritt der oben genannte Fehler auch während der Aktualisierung des Zertifikats auf. Deaktivieren Sie in diesem epelFall einfach das Repo, indem Sie den folgenden Befehl verwenden:

yum -y upgrade ca-certificates --disablerepo=epel 

Sobald die Zertifikate aktualisiert wurden, können Sie yum normal verwenden, auch das Epel-Repo funktioniert einwandfrei. Wenn Sie denselben Fehler für ein anderes Repo erhalten, setzen Sie einfach den Namen gegen die --disablerepo=<repo-name>Flagge.


Hinweis : Verwenden sudoSie diese Option, wenn Sie nicht der rootBenutzer sind.


1
Das ist die beste Antwort für mich :)
Qingbo

5

Ich habe dieses Problem durch diese Lösung gelöst.

Sie ändern nur in dieser Datei /etc/yum.repos.d/epel.repo

mirrorlist = ändere diese URL https in http

baseurl = ändere diese URL https in http


4

All das hat bei mir nicht funktioniert, aber eine Neuerstellung der RPM-Datenbank mit dem folgenden Befehl hat funktioniert:

sudo rpm --rebuilddb

Vielen Dank für die Hilfe.


1
Musste Baseurl anstelle von Mirrorlist (akzeptierte Antwort) verwenden, bevor ich dies tat
Telmo Pimentel Mota

3

Für Boxen ohne Internetzugang können Sie das epelRepository entfernen :

yum remove epel-release --disablerepo=epel

Das ist mir passiert , als ich versehentlich installiert epel-releasemit rpmauf einem prod Feld.


3

Ich bin auf dasselbe Problem gestoßen, obwohl das Paket mit den ca-Zertifikaten auf dem neuesten Stand ist. Der Spiegel https://mirrors.fedoraproject.org/ ist derzeit signiert DigiCert High Assurance EV Root CAund ist in meinem enthaltenca-bundle

$ grep -A 3 "DigiCert High" /etc/ssl/certs/ca-bundle.crt 
# DigiCert High Assurance EV Root CA
-----BEGIN CERTIFICATE-----
MIIDxTCCAq2gAwIBAgIQAqxcJmoLQJuPC3nyrkYldzANBgkqhkiG9w0BAQUFADBs
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3

Der Grund, warum https-Verbindungen in meinem Fall fehlgeschlagen sind, war, dass das Systemdatum auf das Jahr 2002 festgelegt wurde, in dem das DigiCert High Assurance EV Root CA(noch) nicht gültig ist.

$ date
Di 1. Jan 11:10:35 CET 2002

Durch Ändern der Systemzeit wurde das Problem behoben.


Vielen Dank für diese Antwort. Sie Sir sind eine Legende
Tony Sepia

2

Ich habe es gelöst, indem ich in /etc/yum.repository.d/ gegangen bin. Für meinen Fall kommentiere ich die Spiegelliste aus und entferne Einträge mit baseurl. sowie hinzugefügt sslverify = false.

/server/637549/epel-repo-for-centos-6-causing-error


Nicht nur das, sondern auch das Ändern der URLs in archives.fedoraproject.org/pub/archive/fedora/linux/releases/… (für fedora.repo und fedora-updates.repo). Beachten Sie die "Archive" vor und die "Kneipe / Archiv" im Pfad)
dagelf

yum install -y yum-utils --disablerepo = epel && yum-config-manager --save --setopt = epel.sslverify = false
Andrei Sedoi

2

Ich habe dieses Problem umgangen, indem ich die https-Einträge in der Datei epel.repo in http geändert habe.


0

Das Ändern der Mirrorlist-URL von https in http hat das Problem für mich behoben.


0

Meins wurde so behoben:

yum install elfutils-default-yama-scope-0.168-8.el7.noarch --disablerepo=epel
yum install nss-pem -disablerepo=epel
yum reinstall ca-certificates --disablerepo=epel
yum clean all
rm -rf /var/cache/yum
yum update`

0

Keines davon hat bei mir funktioniert (ich habe nicht einmal versucht, die Repo-Datei manuell zu bearbeiten).

Es funktionierte jedoch nach einem einfachen yum update -y


0

Eine weitere mögliche Ursache ist, dass Ihre Architektur nicht unterstützt wird. Ich bin darauf gestoßen, weil ich mit einer CentOS-VM ausgestattet war, EPEL installieren wollte und es für mein ganzes Leben nicht schaffen konnte.

Es stellte sich heraus, dass es sich bei der VM um CentOS 7 i386 handelte, eine Architektur, die von EPEL anscheinend nicht mehr unterstützt wird. Ich denke, das einzige Mittel in diesem Fall ist die Neuinstallation.


0

In meinem Fall, wenn ich die Spiegelliste auskommentiere, ist der Fehler behoben, aber das Repo hat auch nicht funktioniert, sodass ich die rechte Basis manuell /etc/yum.repos.d/epel.repowie unten gezeigt zeige

[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
baseurl=http://iad.mirror.rackspace.com/epel/7Server/x86_64/
#metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch&infra=$infra&content=$contentdir
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7

[epel-debuginfo]
name=Extra Packages for Enterprise Linux 7 - $basearch - Debug
baseurl=http://iad.mirror.rackspace.com/epel/7Server/x86_64/debug/
#metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-7&arch=$basearch&infra=$infra&content=$contentdir
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
gpgcheck=1

[epel-source]
name=Extra Packages for Enterprise Linux 7 - $basearch - Source
baseurl=http://iad.mirror.rackspace.com/epel/7Server/SRPMS/
#metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-source-7&arch=$basearch&infra=$infra&content=$contentdir
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
gpgcheck=1

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.