How To Fix Error Failed to download metadata for repo in CentOS 8
The CentOS 8 distribution has been on End of Life (EOL) status since December 31st, 2021. This means that servers using CentOS 8 Operating system are no longer receiving development resources from the official CentOS project.
A common error that system admins encounter when trying to install a new package or update CentOS 8 is the following:
Error: Failed to download metadata for repo 'AppStream': Cannot prepare internal mirrorlist: No URLs in mirrorlist
To resolve this error you need to change the mirrors to vault.centos.org. Follow the next steps for the list of commands you need to execute on your CentOS 8 server to fix this.
Step 1 — Go to the /etc/yum.repos.d/ directory
[root@centos8-server ~]# cd /etc/yum.repos.d/
Step 2 — Execute the ‘sed’ command. Sed is a popular linux command for finding & replacing strings in a file
[root@centos8-server ~]# sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
and then this command:
[root@centos8-server ~]# sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
Step 3 — You are all set, now try updating your system with the following command:
[root@centos8-server ~]# yum update -y
If all went well, the last command should have not returned any errors.