Scientific LinuxによるNginxのインストールこの文書失敗する:
[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 インストールの前後に yum update 出力
[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
問題は、nssパッケージが古すぎるということです。この以前のバージョンは、curl
以前のバージョンのnssライブラリを使用しているFedoraサイトと通信できません。
nssバージョンを最新バージョンに更新すると、EPELリポジトリの更新の問題が解決されます。
$ sudo yum clean all
$ sudo yum --disablerepo="epel" update nss
メモ:このバージョンnss-3.14.3-4.el6_4.x86_64EPELリポジトリとうまく機能します。
答え2
以下が失敗した場合:
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証明書バンドルには、システムが信頼するすべてのルートCA証明書が含まれています。
この場合、EPELリポジトリには、システムが信頼しない新しいSSL証明書(新しいルートCAが署名)があります。 CentOSリポジトリは少し古い証明書を使用し続けます。
答え3
会社のプロキシの背後で作業中に同じエラーが発生しました。証明書を更新したり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
...
答え4
私は同じ問題があり、上記のすべての手順を試してみましたが、役に立ちませんでした。 rootとしてログインせずにインストールを試みたので、私がどれほど愚かなのかを知りました。私のアカウントへのsudoアクセス権を持っていても同じです。
sudo yum remove epel-release
su root
sudo yum install epel-release
CentOS 7で問題が修正されました。