When using package managers like yum or dnf on Linux distributions such as RHEL, CentOS, AlmaLinux, Rocky Linux, Oracle Linux, or Fedora, you might encounter errors like:
Errors during downloading metadata for repository
Status code: 404
This error indicates that the package manager cannot retrieve the necessary repository metadata. In this article, we’ll explore the common causes of these errors and provide a systematic approach to resolving them.
Common Causes for ‘Errors While Downloading Metadata for Repository’
Several factors cause metadata download errors:

Repository URL Changes or Deprecation
- The repository URLs may have changed or become deprecated. For example, distributions like CentOS 8, which reached end-of-life, had their repositories moved to archive servers such as
vault.centos.org
.
Network Connectivity Issues
- Problems with your internet connection or DNS resolution can block access to repository servers, preventing your system from downloading the necessary metadata.
Repository Configuration Errors
- Incorrect or outdated configuration files in
/etc/yum.repos.d/
may cause the package manager to look for metadata in the wrong location.
Faulty Third-Party Repositories
- Sometimes, misconfigured or unsupported third-party repositories lead to errors during metadata retrieval.
Step-by-Step Troubleshooting
1. Verify Network Connectivity
Before modifying repository configurations, check if your system can access the internet:
- Check Your Internet Connection:
Confirm that your system is connected to the internet. - Test DNS Resolution:
Use commands likeping
ornslookup
to ensure that domain names resolve correctly. - Use cURL or wget to Test Repository URLs:
curl -I http://repository.url/path
2. Check Which Repositories Are Enabled
Before modifying configurations, list the currently enabled repositories:
sudo dnf repolist all
This helps identify whether a specific repository is disabled or misconfigured.
3. Clean the Package Manager Cache
Sometimes, stale or corrupted cache data causes issues. Clearing and rebuilding the cache helps:
sudo dnf clean all
sudo dnf makecache
This removes outdated cached data and forces the package manager to recreate the repository metadata cache.
4. Check and Update Repository Configurations
Inspect the repository configuration files located in /etc/yum.repos.d/
:
Open the Configuration Files:
- Use a text editor to open the relevant
.repo
files.
Review baseurl
and mirrorlist
Entries:
- If the
mirrorlist
URL causes issues, consider commenting it out and uncommenting (or adding) a workingbaseurl
. For example:
#mirrorlist=http://mirrorlist.example.com/?release=$releasever&arch=$basearch&repo=AppStream
baseurl=http://vault.centos.org/$releasever/AppStream/$basearch/os/
This directs the package manager to a specific URL rather than a potentially problematic mirror list.
5. Update or Migrate Repository URLs
For distributions that have reached their end-of-life (e.g., CentOS 8), repositories may have moved to an archive server. Adjust your repository URLs accordingly:
- Point to the Archive:
Modify your configuration to point to the appropriate archive server (such asvault.centos.org
). - Refer to Official Guides:
Many community guides and official documentation provide updated repository URLs for your specific distribution.
6. Reset Fedora Repositories (If Applicable)
Fedora repositories change frequently. If you encounter errors, try resetting the repositories:
sudo dnf --refresh upgrade
If repositories are missing, reinstall the Fedora repository package:
sudo dnf install --refresh fedora-repos
7. Fix Issues for Oracle Linux (ol8_baseos_latest
)
Oracle Linux users may need to enable the correct repositories manually:
sudo dnf config-manager --set-enabled ol8_baseos_latest
8. Disable or Remove Faulty Repositories
If you identify a problematic third-party repository, disable it:
sudo dnf config-manager --disable repository-id
Replace repository-id
with the ID of the problematic repository (e.g., unitedrpms
). Disabling it helps isolate the issue and allows your system to update from reliable sources.
9. Ensure the Correct Release Packages Are Installed
Missing or outdated release packages prevent your system from detecting and using the correct repository configurations:
- Check for the Release Package:
rpm -q almalinux-release
- Install or Update If Necessary:
sudo dnf install almalinux-release
This ensures that your system has the latest configurations for accessing the proper repositories.
10. Manually Add an Alternative Mirror
If a default mirror is down, switch to another available mirror manually:
sudo dnf config-manager --add-repo=http://mirror.centos.org/centos/8/BaseOS/x86_64/os/
FAQ: Quick Fixes
1. How do I fix ‘Errors during downloading metadata for repository appstream’?
- Clean the cache:
sudo dnf clean all && sudo dnf makecache
- Check repository configurations in
/etc/yum.repos.d/
. - Ensure network connectivity.
2. How do I resolve a 404 status code in yum/dnf?
- Update repository URLs to an archive (e.g.,
vault.centos.org
). - Verify that your distribution version is still supported.
3. Why is Fedora’s repository not working?
- Try resetting Fedora repositories:
sudo dnf clean all && sudo dnf makecache
- Reinstall Fedora repo packages:
sudo dnf install --refresh fedora-repos
Conclusion
By following these systematic troubleshooting steps, you can resolve “Failed to download metadata for repository” errors:
- Verify network connectivity.
- Check which repositories are enabled.
- Clean and rebuild your package manager cache.
- Review and update repository configurations.
- Migrate to archive servers if necessary.
- Disable problematic third-party repositories.
- Ensure that release packages are installed and up-to-date.
- Manually switch to alternative mirrors when required.
By carefully working through these steps, you can restore your system’s ability to fetch repository metadata and keep your packages up-to-date.