ไม่สามารถดึงข้อมูลเมตาของที่เก็บ EPEL


20

การติดตั้ง Nginx บน Scientific Linux ตามเอกสารนี้ล้มเหลว:

[vagrant@localhost ~]$ sudo su -c 'rpm -Uvh http://dl.fedoraproject.org/pub/epe
l/6/x86_64/epel-release-6-8.noarch.rpm'
Retrieving http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch
.rpm
warning: /var/tmp/rpm-tmp.gdSOR9: Header V3 RSA/SHA256 Signature, key ID 0608b89
5: NOKEY
Preparing...                ########################################### [100%]
   1:epel-release           ########################################### [100%]
[vagrant@localhost ~]$ sudo yum install nginx
Loaded plugins: security
Error: Cannot retrieve repository metadata (repomd.xml) for repository: epel. Pl
ease verify its path and try again
[vagrant@localhost ~]$

ข้อมูลรุ่น

[vagrant@localhost ~]$ uname -a
Linux localhost.localdomain 2.6.32-431.el6.x86_64 #1 SMP Thu Nov 21 13:35:52 CST
 2013 x86_64 x86_64 x86_64 GNU/Linux
[vagrant@localhost ~]$ cat /etc/*{release,version}
Scientific Linux release 6.5 (Carbon)
Scientific Linux release 6.5 (Carbon)
cat: /etc/*version: No such file or directory
[vagrant@localhost ~]$

หมายเหตุ: sudo yum update -yถูกใช้ก่อนที่จะเริ่มการติดตั้ง nginx

การติดตั้งแพ็กเกจอื่นถูกปิดใช้งาน

[vagrant@localhost ~]$ sudo yum install vim -y
Loaded plugins: security
Error: Cannot retrieve repository metadata (repomd.xml) for repository: epel. Pl
ease verify its path and try again
[vagrant@localhost ~]$

บันทึกดีบักเกอร์ URLGRABBER

2014-08-03 14:22:44,437 attempt 1/10: https://mirrors.fedoraproject.org/metalink
?repo=epel-6&arch=x86_64
INFO:urlgrabber:attempt 1/10: https://mirrors.fedoraproject.org/metalink?repo=ep
el-6&arch=x86_64
2014-08-03 14:22:44,438 opening local file "/var/cache/yum/x86_64/6.5/epel/metal
ink.xml.tmp" with mode wb
INFO:urlgrabber:opening local file "/var/cache/yum/x86_64/6.5/epel/metalink.xml.
tmp" with mode wb
* About to connect() to mirrors.fedoraproject.org port 443 (#0)
*   Trying IP... * connected
* Connected to mirrors.fedoraproject.org (IP) port 443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
* NSS error -8018
* Closing connection #0
* Problem with the SSL CA cert (path? access rights?)
2014-08-03 14:22:50,071 exception: [Errno 14] PYCURL ERROR 77 - "Problem with th
e SSL CA cert (path? access rights?)"
INFO:urlgrabber:exception: [Errno 14] PYCURL ERROR 77 - "Problem with the SSL CA
 cert (path? access rights?)"
2014-08-03 14:22:50,072 retrycode (14) not in list [-1, 2, 4, 5, 6, 7], re-raisi
ng
INFO:urlgrabber:retrycode (14) not in list [-1, 2, 4, 5, 6, 7], re-raising
Error: Cannot retrieve repository metadata (repomd.xml) for repository: epel. Pl
ease verify its path and try again

เอาท์พุทยำปรับปรุงก่อนและหลังความพยายามในการติดตั้ง nginx

[vagrant@localhost ~]$ sudo yum update -y
Loaded plugins: security
Error: Cannot retrieve repository metadata (repomd.xml) for repository: epel. Pl
ease verify its path and try again
[vagrant@localhost ~]$

yum --disablerepo = อัปเดต "epel"

[vagrant@localhost ~]$ sudo yum --disablerepo="epel" update
Loaded plugins: security
Setting up Update Process
No Packages marked for Update

1
ลองyum updateก่อนและดูว่าเกิดอะไรขึ้น
garethTheRed

ปัญหายังคงมีอยู่หลังจากดำเนินการคำสั่งนี้ก่อนที่จะเริ่มการติดตั้ง nginx
030

URLGRABBER_DEBUG=1 yum install nginx 2> debug.logลองใช้ติดตั้งกับ การทำเช่นนี้จะสร้างข้อมูลการดีบักจำนวนมากdebug.logแต่คุณสามารถทำงานในที่ที่มันล้มเหลวได้
garethTheRed

เพิ่มบันทึกการดีบัก URLGRABBER แล้ว
030

ฉันคิดว่า @garethTheRed ถูกต้อง หลังจากเพิ่มที่เก็บแล้วคุณต้องเริ่มต้นใหม่เพื่อให้สามารถดึงแพ็คเกจที่จัดทำโดยที่เก็บใน quesiton
Valentin Bajrami

คำตอบ:


20

หากล้มเหลวดังต่อไปนี้:

yum check-update

แต่:

yum --disablerepo="epel"  check-update

ทำงานแล้วเรียกใช้:

URLGRABBER_DEBUG=1 yum check-update 2> debug.log

และตรวจสอบdebug.log:

PYCURL ERROR 77 - "Problem with the SSL CA cert (path? access rights?)"

หากพบข้อความนี้ให้ลอง:

yum --disablerepo="epel" reinstall ca-certificates

หากไม่สามารถแก้ไขปัญหาได้คุณอาจต้องอัปเดตใบรับรอง ca ของคุณ:

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

หากไม่สามารถแก้ไขปัญหาได้ให้สำรองข้อมูลใบรับรอง CA ปัจจุบันของคุณ:

cp /etc/pki/tls/certs/ca-bundle.crt /root/

และเรียกใช้:

curl http://curl.haxx.se/ca/cacert.pem -o /etc/pki/tls/certs/ca-bundle.crt

คำอธิบาย

บันทึกแสดงข้อผิดพลาดเกี่ยวกับใบรับรอง SSL ของระบบของคุณ

บันเดิลใบรับรอง CA ในระบบของคุณอาจเสียหายอย่างใดอย่างหนึ่งและyum -disablerepo="epel" reinstall ca-certificatesคำสั่งข้างต้นเพียงเขียนทับเวอร์ชันใหม่ของคุณ นี่ไม่น่าจะเป็นคำตอบแม้ว่า repos อื่น ๆ ทั้งหมดจะทำงาน - หากมีปัญหา SSL ที่สำคัญดังนั้น repos ทั้งหมดจะล้มเหลว

curl...คำสั่งดังกล่าวแทนที่ของระบบใบรับรอง CA กำกับรุ่นที่ใหม่กว่า บันเดิลใบรับรอง CA มีใบรับรองรูท CA ทั้งหมดที่ระบบของคุณเชื่อถือ

ในอินสแตนซ์นี้ EPEL repo มีใบรับรอง SSL ใหม่ (ลงนามโดย CA ใหม่รูท) ที่ระบบของคุณไม่เชื่อถือ CentOS repos ยังคงทำงานกับใบรับรองที่เก่ากว่าเล็กน้อย


33

ปัญหาเกิดขึ้นกับแพ็คเกจ nss ที่เก่าเกินไป เวอร์ชันที่เก่ากว่านี้ไม่สามารถพูดคุยกับไซต์ Fedora ผ่านทางcurlซึ่งใช้ไลบรารี nss รุ่นเก่ากว่า

เพียงอัปเดตเวอร์ชัน nss ของคุณเป็นเวอร์ชันล่าสุดจะช่วยแก้ปัญหาด้วยการอัปเดต repo EPEL:

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

หมายเหตุ:รุ่นนี้ของnss-3.14.3-4.el6_4.x86_64 ใช้งานได้ดีกับที่เก็บ EPEL


2
อันนี้เหมาะกับฉันใน Centos 6
NorbyTheGeek

1
ขอบคุณสำหรับการโพสต์คำตอบ แต่ในกรณีของฉันปัญหาError: Cannot retrieve repository metadata (repomd.xml) for repository: epel. Please verify its path and try againยังคงอยู่
030

! น่ากลัว ทำงานให้ฉันโดยใช้ Centos 6
Guided33

4

ฉันมีข้อผิดพลาดเดียวกันเมื่อทำงานกับพร็อกซีขององค์กร การอัปเดตใบรับรองหรือการใช้ http ไม่ได้ช่วย ในการแก้ไขฉันต้องเพิ่มการตั้งค่าพร็อกซีใน repel epel แต่ละอัน:

for x in /etc/yum.repos.d/epel*; do sed -i '/^\[/ a proxy=http://YOUR.PROXY.HERE:8080' $x; done

ใส่รายละเอียดพร็อกซี่ของคุณเองแน่นอน

ไฟล์ repo ของฉันตอนนี้มีลักษณะดังนี้:

[epel]
proxy=http://YOUR.PROXY.HERE:8080
name=Extra Packages for Enterprise Linux 6 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

[epel-debuginfo]
proxy=http://YOUR.PROXY.HERE:8080
...

2

ฉันมีปัญหาเดียวกันและคงได้โดยการเปลี่ยนไปง่ายๆhttpshttp

มันไม่ใช่โซลูชันที่สมบูรณ์แบบ แต่อาจเป็นวิธีการแก้ปัญหาที่ดีขึ้นอยู่กับความต้องการด้านความปลอดภัยของคุณ


1
นี่ไม่ได้ตอบคำถามจริงๆ หากคุณมีคำถามที่แตกต่างที่คุณสามารถถามได้โดยคลิกที่ถามคำถาม นอกจากนี้คุณยังสามารถเพิ่มเงินรางวัลเพื่อดึงดูดความสนใจมากขึ้นกับคำถามนี้เมื่อคุณมีเพียงพอชื่อเสียง
จอร์แดน

1
@ jordanm ไม่ส่งผลกระทบต่อปัญหาหลัก แต่อาจเป็นการแก้ไข ไม่เป็นไรสำหรับฉัน
Hauke ​​Laging

0

ฉันมีปัญหาเดียวกันลองทุกขั้นตอนข้างต้นไม่มีใครทำงาน พบว่าฉันโง่แค่ไหนเพราะฉันพยายามติดตั้งโดยไม่ต้องลงชื่อเข้าใช้รูท แม้แต่บัญชีของฉันก็ยังเข้าถึง sudo ได้

sudo yum remove epel-release

su root

sudo yum install epel-release

แก้ไขปัญหาของฉันใน CentOS 7

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.