How to fix yum errors on CentOS, RHEL or Fedora

Set MySQL to safe mode for root password change
August 27, 2014
Guide to Installing Freshclam
August 6, 2016
Show all

How to fix yum errors on CentOS, RHEL or Fedora

On Red Hat based systems such as RHEL, CentOS or Fedora, yum is used as a package management tool for installing, updating and removing RPM packages. When you try to install a package with yum command, you may encounter errors for various reasons. In this post, I will describe several common error symptoms for the yum command, and explain how to fix yum errors.

1. Fix 404 Errors

Symptom: When you try to install a package with yum, yum throws an error: “The requested URL returned error: 404 Not Found”

Loaded plugins: fastestmirror base | 3.7 kB 00:00 base/primary_db | 4.4 MB 00:09 extras | 3.5 kB 00:00 http://mirror.steadfast.net/centos/6.4/extras/x86_64/repodata/e0e507c76dc5e5aa66c1f32632b9dc0a9759d97031ab5a028562a7cb7be6e294-primary.sqlite.bz2: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found" Trying other mirror. http://mirrors.seas.harvard.edu/centos/6.4/extras/x86_64/repodata/e0e507c76dc5e5aa66c1f32632b9dc0a9759d97031ab5a028562a7cb7be6e294-primary.sqlite.bz2: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found" Trying other mirror.

You can get these 404 errors when the metadata downloaded by yum has become obsolete.

To repair yum 404 errors, clean yum metadata as follows.

$ sudo yum clean metadata

Or you can clear the whole yum cache:

$ sudo yum clean all

2. Fix Connection Failure Errors

Symptom: You get “network is unreachable” or “couldn’t connect to host” errors while running yum command.

Loaded plugins: fastestmirror, presto Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os error was 14: PYCURL ERROR 7 - "Failed to connect to 2a02:2498:1:3d:5054:ff:fed3:e91a: Network is unreachable" Error: Cannot find a valid baseurl for repo: base http://mirror.nexcess.net/CentOS/6.4/os/x86_64/repodata/repomd.xml: [Errno 14] PYCURL ERROR 7 - "couldn't connect to host" Trying other mirror. http://mirrordenver.fdcservers.net/centos/6.4/os/x86_64/repodata/repomd.xml: [Errno 14] PYCURL ERROR 7 - "couldn't connect to host" Trying other mirror. http://mirrors.cmich.edu/centos/6.4/os/x86_64/repodata/repomd.xml: [Errno 14] PYCURL ERROR 7 - "couldn't connect to host" Trying other mirror.

The error means that you cannot properly connect to repository servers for some reason. If you can still ping the servers without any problem, check if your system is behind a proxy. If you are running yum behind a proxy, but have not specified the proxy in the yum configuration, you will get connection failure errors like the above.

To configure a proxy in the yum configuration:

$ sudo vi /etc/yum.conf
[main] proxy=http://proxy.com:8000

3. Fix Metadata Checksum Errors

Symptom: You get “Metadata file does not match checksum” while running yum command.

epel/pkgtags | 466 kB 00:14 http://mirror.steadfast.net/epel/6/x86_64/repodata/pkgtags.sqlite.gz: [Errno -1] Metadata file does not match checksum Trying other mirror.

You can get the metadata checksum errors when the metadata downloaded by yum has become outdated.

To repair yum checksum errors, clean yum metadata:

Comments are closed.