(new Soapbox())->shout(array_map('strtoupper', $opinions)); //Shaun's blog

Me, elsewhere

Miscellaneous public code

A PHP API client for Reddit

I don't tweet much

XMPP chat
(Pidgin, Miranda, Swift, etc.)

Perfect is the enemy of good enough.

Resolving "Not using downloaded repomd.xml because it is older than what we have" yum error

Posted July 29, 2020 by shaun

Sometimes when running yum check-update on a CentOS system, yum will complain about a particular repomd.xml file being out of date. You might see output like this:

[root@host ~]# yum check-update
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos-distro.cavecreek.net
 * epel: d2lzkl7pfhq30w.cloudfront.net
 * extras: linux.cc.lehigh.edu
 * updates: reflector.westga.edu
Not using downloaded updates/repomd.xml because it is older than what we have:
  Current   : Thu Jul 16 09:45:59 2020
  Downloaded: Thu Jun 25 14:10:47 2020

This message can appear for any active repository on your system:

Not using downloaded base/repomd.xml because it is older than what we have
Not using downloaded epel/repomd.xml because it is older than what we have
Not using downloaded extras/repomd.xml because it is older than what we have

What's going on?

Notices about old repomd.xml files usually indicate one of three problems:

  • The repository mirror has stale or outdated files. Not all mirrors get refreshed on the same schedule; sometimes yum will pick one that hasn't obtained new files since you last checked for updates. (This appears to be more prevalent with CentOS 8 mirror trees.)

  • A caching proxy sits between you and the repository mirror, and that proxy is serving you outdated files. Many CentOS mirrors operate over plain HTTP, so the files can be cached by intermediaries.

  • Your system clock is significantly incorrect.

The solution

As root, run yum clean metadata. This will remove a variety of cache files from within /var/cache/yum, including the most recent mirror list and XML definition for each repository. Fresh copies of these metadata files will be fetched the next time you run yum check-update.

[root@host ~]# yum clean metadata
Loaded plugins: fastestmirror
Cleaning repos: base epel extras updates
24 metadata files removed
16 sqlite files removed
0 metadata files removed

At this point, you should be able to run yum check-update successfully, but there's a chance that yum will choose the same problematic mirror again. If this occurs, you can either repeat the yum clean metadata process until things work, or you can tell yum to ignore the bad mirror.

Recent articles

📰 Resolving "Not using downloaded repomd.xml because it is older than what we have" yum error

📰 Caveat with Vantec SATA/IDE to USB 2.0 Adapter and Macrium software

📰 Jay Niffley, Man of Mystery

📰 Compiling Doxygen on FreeBSD without LaTeX and Ghostscript

📰 Introducing Snuze, a PHP client for the Reddit API

📰 jisusaiche: Java's installer telemetry

📰 BIND client log error "query_find: query_getdb failed"

📰 Resolving "The lang/perl5.24 port has been deleted: Has expired" portmaster error

📰 Armagaddon2 interim fix for Firefox 56 and other old versions

📰 Strange DNS queries: qname "miep", qtype ANY

📰 Resolving "x_tables: ip_tables: udp match: only valid for protocol 17" iptables error

📰 Undeliverable as addressed: A massive broken spam campaign?

📰 Using WITH_META_MODE and ccache for FreeBSD build boosts

📰 Resolving subversion error E000013: Unable to create pristine install stream

📰 Enhancements to SmokePing's AnotherDNS probe

▲ Back to top | Permalink to this page