In order to migrate some data off my old CentOS 6 box, I needed to install some additional packages. A final update to the last ever packages might not be a bad idea either. Sadly though I’ve missed the deadline by a few weeks, and running yum update or yum install now only brings up a scary error messages along the lines of this:
Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again
This is happening because the CentOS project have switched off servers to their repos literally seconds after the EOL deadline. “To hell with you puny users”, they may have thought, “you should have migrated months ago”. Yeah well, some of us haven’t and are in the process of doing this (at a considerable expense of our time by the way).
So how then do we whip yum back into shape and make it behave like a shadow of its former self in CentOS 6? The answer: GetPageSpeed.com
Adding GetPageSpeed Repo
The following will add a new URL to the yum configuration that will no longer throw an error when using yum for installing or updating. It’ll access the last available packages that have been released from a single location. It’s essentially a single mirror that’s still available at the time of writing (I’m not sure for how long, so act fast):
curl https://www.getpagespeed.com/files/centos6-eol.repo --output /etc/yum.repos.d/CentOS-Base.repo
That’s one part of the puzzle solved. However, other error messages may still creep in as Base is not the only repo you may be using. I had Atomic installed, and that is also dead as a dodo.
Disabling other repositories
Thankfully there’s a way to simply disable such repos like so:
yum-config-manager --disable yourrepo
Replace “yourrepo” with the repo you’d like to exclude from future update processes. It worked for me, I hope it’ll work for you too.