Hallo, ich habe das minimale Release von CENTOS 7 unter dieser url Verknüpfung heruntergeladen. ISO Centos 7.x herunterladen
Alle funktionieren korrekt ... der PING und das Netzwerk ist in Ordnung. Ich pinge zum Beispiel an einen externen Host.
Aber wenn ich zähle:
[[email protected] ~]# 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
Warum?
This is another command:
[email protected] ~]# 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
[[email protected] ~]#
Der Inhalt der Datei /etc/yum.repos.d/CentOS-Base.repo
[[email protected] ~]# 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
[[email protected] ~]#
Überprüfen Sie Ihre resolv.conf, um zu sehen, wohin Ihr Nameserver zeigt. Vergewissern Sie sich, dass es sich um ein echtes Produkt handelt, da meiner auf einen alten DNS-Server im Netzwerk verweist, der gelöscht wurde. Ich habe es mit der neuen IP-Adresse aktualisiert und voila!
Das Problem ist die Konfiguration von dhcp. Versuchen Sie zu tippen
dhclient
Kommentieren Sie baseurl
in dieser Datei: /etc/yum.repos.d/CentOS-Base.repo
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
In diesem 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
Mit unkommentieren meine ich folgendes: #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
, dazu: baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
(entferne den #
).
Dies ist der Fehler, der von der https-Verbindung in /etc/yum.repos.d/epel.repo
stammt, nachdem Sie ius-release.rpm durch installiert haben
Sudo yum install -y https://centos7.iuscommunity.org/ius-release.rpm
Sie müssen folgendes in /etc/yum.repos.d/epel.repo
erledigen.
baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch
#mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&Arch=$basearch
Kommentieren Sie baseurl
und Kommentarzeile, die mit mirrorlist=
beginnt.
Sudo sed -i 's/https/http/g' /etc/yum.repos.d/epel.repo
Zunächst konnte ich dieses Problem wie oben erwähnt mit "dhclient" beheben. Sie müssen diesen Befehl jedoch bei jedem Neustart ausführen .. Dies kann daran liegen, dass Ihr Ethernet deaktiviert ist und Sie es explizit aktivieren müssen. Klicken Sie hier, um den Grund zu sehen . Für eine dauerhafte Korrektur bearbeitete ich/etc/sysconfig/network-scripts/ifcfg- {YOURETHERNET} (in meinem Fall war dies/etc/sysconfig/network-scripts/ifcfg-eth0) und änderte ONBOOT = yes and boom !!!
Dieses Problem kann auch auftreten, wenn das betreffende Yum-Repository tatsächlich offline ist oder nicht korrekt reagiert.
Die Diagnose kann ein wenig schwierig sein, aber das Yum-Repo reagiert möglicherweise auf Ping und reagiert auf Webanfragen unter der Basis-URL, liefert jedoch keine korrekten Pakete.
Um das problematische Repo zu finden, habe ich festgestellt, dass es am besten ist, jede Repo-Datei aus /etc/yum.repos.d
in einen temporären Aufbewahrungsordner (z. B. /root/yum_bak
) zu verschieben und nach dem Entfernen jedes Repos yum update
auszuführen. Sobald Sie das problematische Repo aus /etc/yum.repos.d
verschoben haben, funktionieren yum update
(und andere Yum-Befehle wieder normal. Wenn Sie die funktionierenden Yum-Repos wieder in /etc/yum.repos.d
verschieben, sind Sie wieder im Geschäft.
Vergessen Sie nicht, das problematische Repo nach Ende des Ausfalls wieder in /etc/yum.repos.d
zu verschieben.
Ich bin hier gelandet, weil ich einen schlechten Spiegel für eine andere Abhängigkeit hinzugefügt hatte (Passagier, für eine Rails-App), und dieses Problem gelöst habe, indem ich einfach den schlechten Spiegel löschte:
rm /etc/yum.repos.d/YOUR-BAD-DEPENDENCY-NAME.repo
z.B.
rm /etc/yum.repos.d/passenger.repo