centos 7.1 - error repository

不羁岁月 提交于 2020-04-07 12:32:23

问题


Hello I have download the minimal release of CENTOS 7 at this url link download ISO centos 7.x

All work correctly...the PING and the network is OK. I ping to external HOST for example.

But when I digit :

[root@localhost ~]# yum update
Loaded plugins: fastestmirror


 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:

     1. Contact the upstream for the repository and get them to fix the problem.

     2. 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).

     3. 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>

     4. 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

Why?

This is another command:


root@localhost ~]# yum repolist all
Loaded plugins: fastestmirror
repo id                           repo name                           status
C7.0.1406-base/x86_64             CentOS-7.0.1406 - Base              disabled
C7.0.1406-centosplus/x86_64       CentOS-7.0.1406 - CentOSPlus        disabled
C7.0.1406-extras/x86_64           CentOS-7.0.1406 - Extras            disabled
C7.0.1406-fasttrack/x86_64        CentOS-7.0.1406 - CentOSPlus        disabled
C7.0.1406-updates/x86_64          CentOS-7.0.1406 - Updates           disabled
base/7/x86_64                     CentOS-7 - Base                     enabled: 0
base-debuginfo/x86_64             CentOS-7 - Debuginfo                disabled
base-source/7                     CentOS-7 - Base Sources             disabled
centosplus/7/x86_64               CentOS-7 - Plus                     disabled
centosplus-source/7               CentOS-7 - Plus Sources             disabled
cr/7/x86_64                       CentOS-7 - cr                       disabled
extras/7/x86_64                   CentOS-7 - Extras                   enabled: 0
extras-source/7                   CentOS-7 - Extras Sources           disabled
fasttrack/7/x86_64                CentOS-7 - fasttrack                disabled
updates/7/x86_64                  CentOS-7 - Updates                  enabled: 0
updates-source/7                  CentOS-7 - Updates Sources          disabled
repolist: 0
[root@localhost ~]#

The content of the file /etc/yum.repos.d/CentOS-Base.repo

[root@localhost ~]# cat /etc/yum.repos.d/CentOS-Base.repo
# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client.  You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#

[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#released updates
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

[root@localhost ~]#

回答1:


Check your resolv.conf to see where your name server is pointing. Make sure it's something legit as mine was pointing to an old DNS server on the network that was wiped out. I updated it with the new IP address et voila!




回答2:


The problem is config of dhcp, try typing

dhclient



回答3:


Uncomment baseurl in this file: /etc/yum.repos.d/CentOS-Base.repo

#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/

In this block:

[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

By uncomment, I mean change this: #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/, to this: baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/ (remove the #).




回答4:


First of all, I was able to fix this issue as mentioned above by using "dhclient". But you will have to run this command every time you reboot. This could be because your Ethernet is disabled and you have to enable it explicitly. Click here to see the reason. For a permanent fix I edited /etc/sysconfig/network-scripts/ifcfg-{YOURETHERNET} (In my case it was /etc/sysconfig/network-scripts/ifcfg-eth0) and changed ONBOOT=yes and boom!!!




回答5:


It is the error coming from the https connection in /etc/yum.repos.d/epel.repo after you installed ius-release.rpm through

sudo yum install -y https://centos7.iuscommunity.org/ius-release.rpm

You need to do following stuff in /etc/yum.repos.d/epel.repo.

baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch
#mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch

Uncomment baseurl and comment line beginning with mirrorlist=.




回答6:


sudo sed -i 's/https/http/g' /etc/yum.repos.d/epel.repo




回答7:


I landed here because I had added a bad mirror for a different dependency (passenger, for a Rails app), and solved this problem by just deleting the bad mirror:

rm /etc/yum.repos.d/YOUR-BAD-DEPENDENCY-NAME.repo

e.g.

rm /etc/yum.repos.d/passenger.repo




回答8:


This issue can also happen if the yum repository in question is actually offline or not responding correctly.

This can be a little tricky to diagnose, but the yum repo might respond to ping and respond to web requests on the base URL, but does not serve up packages correctly.

To find the problematic repo, I've found what works best is to move each repo file out of /etc/yum.repos.d and into a temporary holding folder (e.g., /root/yum_bak) and run yum update after removing each repo. Once you've moved the problematic repo out of /etc/yum.repos.d then yum update (and other yum commands will start working normally again. Move the working yum repos back into /etc/yum.repos.d and you're back in business.

Just don't forget to move the problematic repo back into /etc/yum.repos.d after the outage has ended.




回答9:


I had this problem in a company environment with MITM proxy after adding the EPEL repo with

yum install epel-release

This doesn't happen before (e.g. on yum update). I checked all answers and none of them fixed my problem. Figured out that the other repos use http by default, where epel use https:

# grep mirror /etc/yum.repos.d/epel.repo
metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch&infra=$infra&content=$contentdir
metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-7&arch=$basearch&infra=$infra&content=$contentdir
metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-source-7&arch=$basearch&infra=$infra&content=$contentdir

So I copied our company root CA in the CentOS trust store and update it:

cp /home/user/my-ca.crt /etc/pki/ca-trust/source/anchors/
update-ca-trust

After adding the cert, updating and installing packages from the EPEL repo works fine!



来源:https://stackoverflow.com/questions/32524675/centos-7-1-error-repository

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!