Неможливо витягнути метадані сховища 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

Вивести yum оновлення до та після спроби встановити 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 має рацію. Після додавання сховища потрібно ініціалізувати його, щоб мати змогу витягувати пакети, надані репозиторієм у питанні.
Валентин Байрамі

Відповіді:


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команда, що вводиться вище, просто замінює вашу нову версію. Це навряд чи буде відповіддю, хоча як і всі інші репортажі працюють - якби були основні проблеми з SSL, то всі репости не зможуть.

curl...Вище команда замінює сертифікати CA вашої системи згорток з більш новою версією. Пакет сертифікатів CA містить усі кореневі сертифікати ЦС, яким довіряє ваша система.

У цьому випадку EPEL repo має нові сертифікати SSL (підписані новим root CA), яким ваша система не довіряє. Репости CentOS продовжують працювати зі своїми трохи старшими сертифікатами.


33

Проблема полягає в тому, що пакет nss занадто старий. Ця старша версія не може спілкуватися з веб-сайтом Fedora, за допомогою curlякого використовується старіша версія бібліотеки nss.

Просто оновіть свою версію nss до останньої, це вирішить проблему з оновленням EPEL repo:

$ 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 не допомогло. Щоб виправити це, мені довелося додати налаштування проксі-сервісу до кожного з репостів epel:

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

Введіть свої відомості про проксі, звичайно.

Тепер мої файли репо виглядають так:

[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

У мене була така ж проблема і виправлено її, змінивши httpsна просту http.

Це не ідеальне рішення, але може бути гідним рішенням залежно від ваших потреб у безпеці.


1
Це насправді не відповідає на питання. Якщо у вас інше питання, ви можете задати його, натиснувши Задати питання . Ви також можете додати щедрості, щоб привернути більше уваги до цього питання, як тільки у вас буде достатня репутація .
Йорданм

1
@jordanm Не впливає на головну проблему, але може бути вирішенням проблеми. Це добре для мене.
Hauke ​​Laging

0

У мене було те саме питання, спробував усі вищезазначені кроки, жоден не спрацював. З'ясував, наскільки я дурний, бо намагався встановити, не ввійшовши в root. Навіть ти, мій рахунок, мав доступ до судо.

sudo yum remove epel-release

su root

sudo yum install epel-release

Виправлені мої проблеми на CentOS 7

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.