यम त्रुटि "रिपॉजिटरी के लिए मेटलिंक पुनर्प्राप्त नहीं कर सकता है: एपीएल। कृपया इसके पथ को सत्यापित करें और फिर से प्रयास करें ”ContextBroker को अपडेट करना


106

मैं आदेश yum संस्थापन संदर्भ का उपयोग करके Orion ContextBroker को अपडेट करने का प्रयास कर रहा हूं। Unfortunatelly मुझे निम्नलिखित त्रुटि मिलती है:

लोड किए गए प्लगइन्स: सबसे तेज़, ताज़ा-पैकेजकिट, सुरक्षा लोड हो रहा है

कैश्ड होस्टफ़ाइल से दर्पण की गति

त्रुटि: रिपॉजिटरी के लिए मेटलिंक पुनर्प्राप्त नहीं कर सकता: एपेल। कृपया इसका पथ सत्यापित करें और पुनः प्रयास करें

क्या गलत हो सकता है?


3
समस्या निवारण चरण: आपका सिस्टम curl -v https://mirrors.fedoraproject.orgक्या है ?
mwfearnley 15

चयनित उत्तर एक वर्कअराउंड है जो रूट समस्या को ठीक नहीं करता है, और वास्तव में पैकेज की स्थापना विफल हो सकती है। मेरा सुझाव है कि सबसे अच्छे उत्तर का चयन रद्द कर दें, और अधिकांश लोगों के लिए काम करने वाले वोटों के उत्तरों को क्रमबद्ध करें।
पॉल

जवाबों:


125

मैंने इस मुद्दे को दोनों /etc/yum.repos.d/epel.repoऔर /etc/yum.repos.d/epel-testing.repoफाइलों को संपादित करने के साथ हल किया , सभी प्रविष्टियों को टिप्पणी करना शुरू कर दिया mirrorlist=...और सभी प्रविष्टियों को शुरू करने के साथ असहज कर दिया baseurl=...


मेरे मामले में, इस फिक्स ने यम को एपेल रेपो के लिए मेटाडेटा को सफलतापूर्वक डाउनलोड करने की अनुमति दी थी, लेकिन संकुल को स्थापित करने की कोशिश कर रहा था [Errno 14] Peer cert cannot be verified or peer cert invalid। नीचे दिए गए उत्तर में, सीए-सर्टिफिकेट को अपडेट करने के लिए सही फिक्स था।
बैन

3
मेटलिंक से शुरू होने वाली सभी प्रविष्टियों की टिप्पणी = ... और बेसुरल से शुरू होने वाली सभी प्रविष्टियों को अनसुना करना = .... मेरे लिए RHEL7.1 पर काम किया
अनुराग सिंह

1
अपनी विधि की कोशिश की, फिर yum clean all && yum updateकाम किया। लेकिन पूरी तरह से नहीं, यह कहा epel-release-7-11.noarch: [Errno 256] No more mirrors to tryआदि तो मैंने कोशिश की के yum update curl --disablerepo=epelरूप में sbetharia का सुझाव दिया, और yum clean all && yum updateफिर से कोशिश की , यह अंत में अब काम किया।
होसी गोल्डन

मेरे लिए काम किया। बहुत बहुत धन्यवाद।
तारेकह

3
मेरे पास कोई mirrorlist=रेखा नहीं थी , लेकिन मेरे पास metalink=लाइनें थीं, और जिन पर टिप्पणी करने की आवश्यकता थी।
जेलिकैलेट

171

आपको बस सीए-सर्टिफिकेट पैकेज अपडेट करने की जरूरत है। इससे पहले कि https वाले सभी रिपॉज को निष्क्रिय कर दें जो विफल हो रहे हैं। इसीलिए कमेंट मिररलिस्ट के साथ या http के बजाय https का उपयोग करने से भी काम चल जाएगा।

उदाहरण के लिए यदि आपको केवल एपल रेपो को निष्क्रिय करने की आवश्यकता है:

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

यह wget, कर्ल और कुछ और भी मदद करेगा जो SSL प्रमाणपत्र का उपयोग करता है।


9
इसे सही उत्तर के रूप में स्वीकार किया जाना चाहिए, क्योंकि यह समस्या के वास्तविक स्रोत का निदान करता है, न कि केवल काम-काज प्रदान करने के बजाय।
होरेशियो एल्डेरन

1
मैंने इसे CentOS 6.5 bento बॉक्स पर टेस्ट किया है और यह रनिंग के दौरान चीजों को थोड़ा अधिक विश्वसनीय बनाता है yum clean all && yum makecache। हालाँकि, यह अभी भी कभी-कभी विफल रहता है। मेरी स्क्रिप्ट में पुनः प्रयास जोड़कर इसे और भी विश्वसनीय बना दिया गया। मुझे संदेह है कि कुछ दर्पण अविश्वसनीय हैं और एक रिट्री एक और दर्पण दे सकता है जो काम करता है। तो अगर पहली बार में यह सफल नहीं होता है, तो फिर से कोशिश करें!
ट्रिनिट्रॉनएक्स

1
वैसे यह अनुभव से आता है, और हाँ, संदेश गुप्त है :)
XoR

2
सुनिश्चित करें कि यदि आप कॉर्पोरेट प्रॉक्सी के पीछे हैं, तो इसे https जैसे के लिए भी सेट करेंexport https_proxy=<your proxy>
Markus

3
epel-repo RPM के पास सीए-सर्टिफिकेट होना चाहिए निर्भरता !!
स्टीफन

59

इस आदेश का उपयोग करें:

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

या वैकल्पिक रूप से कमांड का उपयोग करें

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

पंक्ति संख्या 4 पर जाएं और url को बदल दें

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

सेवा

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

धन्यवाद; यह सिर्फ अन्य प्रलेखित समाधान (मेरी त्रुटि थी Cannot retrieve metalink for repository: epel/x86_64. Please verify its path and try again) के कई प्रयास करने के बाद मेरे लिए काम किया । मेरा सवाल है, यह काम क्यों किया? क्या यह रिपॉजिटरी साइट पर कॉन्फ़िगरेशन समस्या के कारण है?
CODE-REaD

1
संभवतः HTTPS सर्वर नहीं है, लेकिन सिस्टम पर HTTPS क्लाइंट-साइड समर्थन पुराना हो सकता है, क्योंकि रूट प्रमाणपत्र प्राधिकारी अपडेट नहीं किए जाते हैं, या SSL लाइब्रेरी नए सिफर का समर्थन नहीं करते हैं।
mwfearnley

कई कोशिशों के बाद, आपकी sed कमांड से हल किया गया। बस कॉपी + पेस्ट करें, यह वही है जिसकी मुझे आवश्यकता है क्योंकि आमतौर पर मैं इस तरह की चीजों का प्रभारी नहीं हूं, केवल कुछ डेटाबेस अपडेट का परीक्षण करने के लिए केवल मेरे द्वारा उपयोग किए जाने के लिए एक परीक्षण कंप्यूटर स्थापित करना।
ईएमेज़

1
Cent OS 7.6 में, यह हैsudo sed -i "s/metalink=https/metalink=http/" /etc/yum.repos.d/epel.repo
JamesThomasMoon1979

19

मेरे मामले के लिए टिप्पणी करना mirrorlistऔर दिन में baseurlकाम न करने वाली प्रविष्टियों को अनसुना करना। मैंने देखा कि समस्या फेडोरा फाइलों के httpsइनसाइड के साथ थी .repo। मैंने इसे अलग-अलग .repo फ़ाइलों में /etc/yum.repository.dसभी httpsको प्रतिस्थापित करके और इसे हल किया http। वह काम किया!!


यह शायद /etc/yum.conf (कंपनी प्रॉक्सी) में एक प्रॉक्सी सेट के साथ करना है?
बजे क्रिस्टोफ कैटलिन

19

मुझे लगता है कि यह काम करना चाहिए। मैंने इसके साथ अपनी समस्या हल की।

$ सूदो यम सब साफ

$ sudo yum --disablerepo = "epel" अपडेट nss


3
यह सेंटोस 6.8 के लिए जागता है। धन्यवाद
नव

1
इससे मेरा मुद्दा भी हल हो गया, मैं उत्सुक हूं कि update nssइस मुद्दे को हल करने में मदद क्यों करें ! "
KLajdPaja

12

अद्यतन कर्ल हमारे लिए काम किया। किसी तरह यम अपने लेनदेन के लिए कर्ल का उपयोग करता है।

yum update curl --disablerepo=epel

आपका उत्तर स्वीकार किए गए उत्तर से बेहतर है, epel.repo या epel-testing.repo को बदलने की आवश्यकता नहीं है।
होसी गोल्डन

मैंने इसे या कुछ अन्य उत्तरों को पढ़ने से पहले इसे नीचे और अद्यतन कर्ल पर नज़र रखी। मुझे लगता है कि अद्यतन कर्ल भी अद्यतन nss ... तो मुझे आश्चर्य है कि अगर यह मुद्दा था। मेरे मामले में, मैंने मेटलिंक URL को कर्ल किया, देखा कि यह विफल हो गया, और देखा कि इसने --tlsv1 ( Bugzilla.redhat.com/show_bug.cgi?format=multiple&id=1111339 ) के साथ काम किया । मान लिया गया कि कर्ल पुराना हो चुका है और उसे अपडेट कर दिया गया है। तो अब मुझे आश्चर्य है कि अगर एनएसएस को अद्यतन किया जा सकता है w / o अद्यतन कर्ल और यह काम किया होगा या नहीं।
पॉल

9

जांचें कि क्या आप प्रॉक्सी के माध्यम से इंटरनेट एक्सेस करते हैं, और फिर yumकॉन्फ़िगरेशन में आपका इंटरनेट प्रॉक्सी पता जोड़ते हैं ।

जोड़ना

proxy=http://ip:port

सेवा /etc/yum.conf


2
सुनिश्चित करें कि https प्रॉक्सी भी निर्दिष्ट है।
मार्कस

1
यह मेरे लिए काम करता है, लेकिन केवल इसके अतिरिक्त निम्नलिखित पैरामीटर के साथ:proxy_username=your_user proxy_password=your_passwd
मैगसुक

7

वॉकथ्रू स्टेप्स

निम्नलिखित कमांड चलाने से HTTPS के बजाय HTTP का उपयोग करने के लिए रेपो अपडेट होगा:

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

फिर आपको इस कमांड के साथ अपडेट करने में सक्षम होना चाहिए:

yum -y update

एकमात्र समाधान जो मेरे लिए काम करता है! अन्य सभी ने इसे कुछ भी नहीं बदला है (मुझे एपल पैकेज की आवश्यकता है)।
कुरोनेको

Cent OS 7.6 में, यह हैsudo sed -i "s/metalink=https/metalink=http/" /etc/yum.repos.d/epel.repo
JamesThomasMoon1979

6

आप इस संदेश / त्रुटि से अवगत हो सकते हैं, एपेल-रिलीज़ को स्थापित करने के बाद। त्वरित सुधार आपके एसएसएल प्रमाणपत्रों को अद्यतन करना है:

yum -y upgrade ca-certificates

प्रमाणपत्र अद्यतन के दौरान भी उपरोक्त त्रुटि हो सकती है, यदि हां, तो बस epelरेपो को अक्षम करें अर्थात निम्नलिखित कमांड का उपयोग करें:

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

एक बार प्रमाणपत्र अपडेट हो जाने के बाद, आप सामान्य रूप से यम का उपयोग कर पाएंगे, यहां तक ​​कि एपल रेपो भी ठीक काम करेगा। यदि आप एक ही रेपो के लिए यह त्रुटि प्राप्त कर रहे हैं, तो इसे --disablerepo=<repo-name>ध्वज के नाम पर रखें ।


नोट : sudoयदि आप rootउपयोगकर्ता नहीं हैं तो उपयोग करें।


1
यह मेरे लिए सबसे अच्छा जवाब है :)
qingbo

5

मैंने इस समस्या को इस समाधान से हल किया।

आप बस इस फ़ाइल /etc/yum.repos.d/epel.repo में परिवर्तन करें

mirrorlist = इस url https को http में बदलें

basurl = इस url https को http में बदलें


4

उपरोक्त सभी ने मेरे लिए काम नहीं किया, लेकिन निम्नलिखित कमांड के साथ आरपीएम डेटाबेस के पुनर्निर्माण ने किया:

sudo rpm --rebuilddb

आप सब का सहायता के लिए धन्यवाद।


1
ऐसा करने से पहले उपयोग baseurl बजाय mirrorlist (स्वीकार किए जाते हैं जवाब) करना पड़ा
टेलमो पिमेंटेल मोटा

3

उन बॉक्सों के लिए जिनमें इंटरनेट की सुविधा नहीं है, आप epelरिपॉजिटरी को हटा सकते हैं :

yum remove epel-release --disablerepo=epel

यह मेरे साथ हुआ क्योंकि मैंने गलती से एक प्रोडक्ट बॉक्स पर epel-releaseइस्तेमाल rpmकिया था।


3

मुझे उसी समस्या का सामना करना पड़ा, भले ही सीए-सर्टिफिकेट पैकेज अप-टू-डेट हो। वर्तमान में दर्पण https://mirrors.fedoraproject.org/ पर हस्ताक्षर किए गए हैं, DigiCert High Assurance EV Root CAजो मेरे में शामिल हैca-bundle

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

मेरे मामले में https कनेक्शन विफल होने का कारण, यह था कि सिस्टम की तारीख वर्ष 2002 में निर्धारित की गई थी, जो कि DigiCert High Assurance EV Root CA(अभी तक) मान्य नहीं है।

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

सिस्टम का समय बदलने से समस्या ठीक हो गई।


इस उत्तर के लिए बहुत बहुत धन्यवाद। यू सर एक किंवदंती हैं
टोनी सीपिया

2

मैंने इसे /etc/yum.repository.d/ पर जाकर हल किया। मेरे मामले के लिए मैं बेसलिंक के साथ मिररलिस्ट और असंगत प्रविष्टियों पर टिप्पणी करता हूं। साथ ही sslverify = false जोड़ा गया।

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


इतना ही नहीं, बल्कि URLs को अभिलेखागार में बदलना भी है ।fedoraproject.org/pub/archive/fedora/linux/releases/… (fedora.repo और fedora-updates.repo के लिए)। सामने "अभिलेखागार" और पथ में "पब / संग्रह" पर ध्यान दें)
dagelf

yum install -y yum-utils --disablerepo = epel && yum-config-manager -save --setopt = epel.sslverify = false
आंद्रेई सेदोई

2

मैंने http: epel.repo फ़ाइल में http प्रविष्टियों को http में बदलकर इस समस्या को हल कर दिया है।


1

मेरे मामले में जब मैं टिप्पणी करता हूं कि दर्पणसूची में त्रुटि दूर हो गई, लेकिन रेपो भी काम नहीं कर रहा था, इसलिए मैं मैन्युअल /etc/yum.repos.d/epel.repoरूप से नीचे में सही बेसुर बिंदु इंगित करता हूं

[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



0

इस तरह तय की खान:

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

इनमें से किसी ने भी मेरे लिए काम नहीं किया (मैंने रेपो फ़ाइल को मैन्युअल रूप से संपादित करने जैसे हैक की कोशिश भी नहीं की)।

हालांकि यह एक साधारण के बाद काम किया yum update -y


0

एक अन्य संभावित कारण यह है कि आपकी वास्तुकला समर्थित नहीं है। मैं इसमें भाग गया क्योंकि मुझे एक CentOS VM प्रदान किया गया था, ईपीईएल स्थापित करना चाहता था और मेरे जीवन के लिए इसे पूरा नहीं कर सका।

वीएम बाहर था CentOS 7 i386, जो एक वास्तुकला है जो जाहिरा तौर पर EPEL द्वारा समर्थित नहीं है। मुझे लगता है कि इस मामले में एकमात्र उपाय फिर से स्थापित करना है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.