yum güncellemesi başarısız olur: Hata: Havuz için depo meta verileri (repomd.xml) alınamıyor…


34

CentOS 6.3 kullanıyorum. Sistemimi yum ile güncellemeye çalıştığımda şu mesajı aldım:

yum update

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.ircam.fr
 * centosplus: miroir.univ-paris13.fr
 * extras: mirrors.ircam.fr
 * update: centos.quelquesmots.fr
http://mirror.centos.org/centos/6/addons/x86_64/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404"
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: addons. Please verify its path and try again

yum clean all

Loaded plugins: fastestmirror
Cleaning repos: CactiEZ addons base centosplus extras pgdg93 update
Cleaning up Everything
Cleaning up list of fastest mirrors

yum check

Loaded plugins: fastestmirror
check all

yum erase apf

Loaded plugins: fastestmirror
Setting up Remove Process
No Match for argument: apf
Determining fastest mirrors
 * base: centos.mirror.fr.planethoster.net
 * centosplus: centos.mirror.fr.planethoster.net
 * extras: mirrors.ircam.fr
 * update: centos.quelquesmots.fr
CactiEZ                                                | 2.9 kB     00:00
CactiEZ/primary_db                                     |  13 kB     00:00
http://mirror.centos.org/centos/6/addons/x86_64/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404"
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: addons. Please verify its path and try again

yum upgrade

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.mirror.fr.planethoster.net
 * centosplus: centos.mirror.fr.planethoster.net
 * extras: mirrors.ircam.fr
 * update: centos.quelquesmots.fr
http://mirror.centos.org/centos/6/addons/x86_64/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404"
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: addons. Please verify its path and try again

Benim yum.conf

[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=16&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release

1
Dünden beri yum internet bağlantısı ve yol sorunları ile bug hakkında çok soru sordunuz, sadece sisteminizi yeniden yüklemeyi düşündünüz mü? Oldukça f $$$ görünüyor görünüyor
Kiwy

Önce internet bağlantısını düzeltmeniz gerekir. Yeniden yükleme bir seçenek olabilir. Veya canlı bir CD sistemini önyüklemeyi deneyin.
peterph

"Yum.repos.d" klasörünü silerek sorunu çözdüm ve example.repo dosyasını yeniden oluşturdum. buradan repo ayrıntıları ekleyin: linuxquestions.org/questions/linux-newbie-8/…
Yang

Yanıtlar:


33

Ca-bundles.crt dosyanız çok eski. CentOS’un yeni bir sürümüne geçene kadar bir çözüm, epel.repo’yu https’den http

sudo sed -i 's/https/http/g' /etc/yum.repos.d/epel.repo

2
+1 Nokta açık. Ancak en son sertifika paketini almak için CentOS’u yükseltmeniz gerekmez (CentOS’un uzun vadeli desteği nedeniyle). yum update ca-certificateshile yapmalı (epel için https'yi devre dışı bıraktıktan veya doğrudan rpm'yi tutup rpm'yi kullanarak güncelledikten sonra).
Kev

@kev Teoride, yorumunuzun çalışması gerekir, ancak ne yazık ki yum to update ca-certificatesbenim için "Güncelleme için işaretlenmiş paket yok" derken soruyorum . Aslında bunu yum list | grep ca-certificatesyaptığımda, bu ca -ertificates.noarch 2010.63-3.el6_1.5'i CentOS 6.4 kutumdaki en son sürüm olarak alıyorum. CentOS 6.5 kutumda ca -ertificates.noarch 2014.1.98-65.1.el6 'ı alıyorum, bu yüzden en azından CentOS’tan en son CA-Ceritifcates’i almak için CentOS 6.5’i güncellemeniz ya da rpm’yi el ile kurup yüklemeniz gerekiyor. .
RobertDeRose

@Kev Rob çiviledi. Birçok kurumsal işletme hala çok eski dağıtımda. Şu anda bir müşteri için CentOS4.5 üzerinde çalışıyorum ve normalde yapılması gerekmeyen birçok şey yapmak zorundayım.
SgtPooki

@RobD OP http kullanıyor gibi görünüyor ve aynı konuya girdiğimde ben de http değil https kullanıyordum. Öyleyse merak ediyorum, ssl ca kök sertifikalarının modası geçmiş olmasının kök neden olduğunu nasıl anlarsınız?
Dwight Spencer

@DwightSpencer üzgünüm, ben sorunuzu anlamıyorum, OP nedir? Eski CentOS 6.2 kutumda güncelleme yapamadığımdan ancak 6.6 kutumda yapabildiğim için ssl ca kök sertifikalarımın sorun olduğunu düşündüm. Sadece https'den http'ye geçmek sorunu çözdü. Ben az çok az önce bunu daralttım.
RobertDeRose

16

Bunu dene (root olmalı)

yum clean all
yum check
yum erase apf
yum update ca-certificates
yum upgrade


Yuppi! İşe yaradı :)
facundofarias 4:15

1
Mükemmel çalıştı ve bu konudaki diğer cevaplardan çok daha temiz.
Dwight Spencer,

Oraya bir yum update --disableplugin fastestmirrorgiriş eklemek zorunda kaldım, çünkü bu adımlardan biri (muhtemelen yum clean) aynalarla bağlantı kurmak için gerekli bilgiyi kaldırmıştı. Yükseltme yapmayı teklif ettiğinde "hayır" demiştim, daha sonra bir ova yaptım yum updateve bu sefer başarılı oldu. İlk geçişin, ikinci geçişin başarılı olmasına izin veren ana CentOS sitesinden yeni bir ayna listesi indirmesini sağladığını düşünüyorum.
Warren Young


3

Benim için sorun, repoların https kullanması ve bunun işe yaramamasıydı.

cd /etc/yum.repos.d/
grep -RFi "https" *

Bu, hangi repo dosyalarının https kullanıldığını gösterir. Bunları bir düzenleyicide açın ve http yapın. Benim için sorunu düzeltti.


3

Önceki cevapların hepsi benim için işe yaramadı, ancak aşağıdaki komutları çalıştı:

$ sudo yum remove centos-release-SCL
$ sudo yum update # Update to CentOS 6.8
$ sudo yum install centos-release-scl
$ sudo yum update

Bu blog yazısından aldım .




1

Herhangi bir parametre olmadan "yum update" veya "yum upgrade" komutunu çalıştırırsanız, yum dahil olmak üzere sisteminizdeki tüm paketler yükseltilir, böylece Fedora veya CentOS sürümlerini yükseltmediğiniz sürece gerçekten kendi başınıza yum yükseltmeye gerek kalmaz.


Aslında ftp kurmam gerekiyor. Ancak yum install ftp kullandığımda da aynı sorunu yaşıyorum.
az93

1

CentOS'u Vagrant üzerinden yükledim ve /etc/yum.repos.d/dizine önceden yazılmış gibi geldi puppet.repo. Lo ve seyretmek puppet.repove dahil diğer repolar geçerli kaynaklara işaret etmedi.

Bu yüzden onları kaldırdım ve şimdi yum çalışıyor.


1

Gerçekten istisnai olan benim durumumda repo bilgisini içeren XML dosyasının konumu değiştirildi.

  • İnternet bağlantım var ( ping 8.8.8.8çalışıyor)
  • Çalıştığımda yum upgrade, çok fazla 404hata yaptıktan sonra , indirmem gereken paketlerin adlarını bulabilirim ancak bunları indiremiyorum.

Ve ilk 404 repo URL'sine göz attığımda, ki:

http://mirror.airenetworks.es/CentOS/7.4.1708/os/x86_64/repodata/repomd.xml

ve olmadığını gördüm. Üst klasörüne giderken şunu http://mirror.airenetworks.es/CentOS/7.4.1708/readmealıyorum:

Bu dizin (ve CentOS sürümü) kullanımdan kaldırılmıştır. Normal kullanıcılar için / 7 / 'yi /7.4.1708/ kullanmamalısınız. Lütfen CentOS sürüm şemasıyla ilgili şu SSS'ye bakın:

https://wiki.centos.org/FAQ/General

Ne yaptığınızı biliyorsanız ve kesinlikle 7.4.1708 seviyesinde kalmak istiyorsanız, paketler için http://vault.centos.org/ adresine gidin .

Lütfen 7.4.1708’in artık herhangi bir güncelleme veya güvenlik düzeltmesi almadığını unutmayın.

Bu yüzden /etc/yum.repo.ddosyaları düzenlemek için geri dönmeliyim .

Sahibim:

[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#released updates
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

Ben şüpheli $releaseverben bunu değiştirerek test edebilirsiniz böylece, artık kullanımda olan 7(kaçmayı unutmayın: &ile \)

curl http://mirrorlist.centos.org/?release=7\&arch=x86_64\&repo=os\&infra=arch

dosyaların listesini alabiliriz:

ftp://ftp.cesca.cat/centos/7.5.1804/os/x86_64/
http://ftp.rediris.es/mirror/CentOS/7.5.1804/os/x86_64/
http://ftp.cica.es/CentOS/7.5.1804/os/x86_64/
http://centos.mirror.minorisa.net/7.5.1804/os/x86_64/
http://repo.nixval.com/CentOS/7.5.1804/os/x86_64/
http://centos.uvigo.es/7.5.1804/os/x86_64/
http://ftp.uma.es/mirror/CentOS/7.5.1804/os/x86_64/
http://ftp.cixug.es/CentOS/7.5.1804/os/x86_64/
http://mirror.airenetworks.es/CentOS/7.5.1804/os/x86_64/
http://mirror.gadix.com/centos/7.5.1804/os/x86_64/

Böylece değişkeni şöyle ayarlayabiliriz:

  1. /etc/yum.repo.d/CentOS-Base.repo
  2. Gelen [base]bölümü tanımlayan: releasever=7.
  3. yum upgradeVeya yeniden çalıştırın yum install xxx.
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.