Geekflare is supported by our audience. We may earn affiliate commissions from buying links on this site.
Share on:

Could not resolve host: mirrorlist.centos.org; No address associated with hostname”

wget command examples
Invicti Web Application Security Scanner – the only solution that delivers automatic verification of vulnerabilities with Proof-Based Scanning™.

Lately, I was trying to install the Apache webserver in a Linux environment and got the following error.

[root@localhost ~]# yum install httpd 
Loaded plugins: fastestmirror, langpacks Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os 
error was 14: curl#6 - "Could not resolve host: mirrorlist.centos.org; No address associated with hostname" 
One of the configured repositories failed (Unknown), 
and yum doesn't have enough cached data to continue. 
At this point the only safe thing yum can do is fail. There are a few ways to work "fix" this:
Contact the upstream for the repository and get them to fix the problem.
Reconfigure the baseurl /etc. for the repository, to point to a working
upstream. This is most often useful if you are using a newer distribution release than is supported by the repository (and the packages for the previous distribution release still work).
Disable the repository, so yum won't use it by default. Yum will then
just ignore the repository until you permanently enable it again or use --enablerepo for temporary usage: yum-config-manager --disable <repoid>
Configure the failing repository to be skipped, if it is unavailable.
Note that yum will try to contact the repo. when it runs most commands, so will have to try and fail each time (and thus. yum will be be much slower). 
If it is a very temporary problem though, this is often a nice compromise:            
yum-config-manager --save --setopt=<repoid>.skip_if_unavailable=true Cannot find a valid baseurl for repo: base/7/x86_64 
[root@localhost ~]#

This usually happens when the server can’t connect to the Internet because of can’t resolve to name server.

Solution

Take a look at /etc/resolv.conf file. I had following

; generated by /usr/sbin/dhclient-script
search localdomain
nameserver 8.8.8.8

Keep “search localdomain” at the bottom, so something like below

; generated by /usr/sbin/dhclient-script
nameserver 8.8.8.8
search localdomain

Save the file and try to perform yum. It was all good for me.

Note: nameserver may differ as shown in the example above. The point here is to keep localhost at the bottom and things should move.

Interested in learning about Linux administration?

Thanks to our Sponsors
More great readings on Linux
Power Your Business
Some of the tools and services to help your business grow.
  • Invicti uses the Proof-Based Scanning™ to automatically verify the identified vulnerabilities and generate actionable results within just hours.
    Try Invicti
  • Web scraping, residential proxy, proxy manager, web unlocker, search engine crawler, and all you need to collect web data.
    Try Brightdata
  • Semrush is an all-in-one digital marketing solution with more than 50 tools in SEO, social media, and content marketing.
    Try Semrush
  • Intruder is an online vulnerability scanner that finds cyber security weaknesses in your infrastructure, to avoid costly data breaches.
    Try Intruder