Ich führe es aus yum check-update
und es friert nach 2 Ausgabezeilen ein:
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Ich bin mir nicht sicher, was passiert. Das Letzte, was ich mit Yum gemacht habe, war yum update
, dass ich mir eines der CentOS-Yum-Repos angesehen habe, aber ich habe keine Änderungen vorgenommen.
Irgendwelche Vorschläge zur Reparatur von Yum?
Antwort1
Möglicherweise liegt ein DNS-Problem vor. Versuchen Sie sicherzustellen, dass Sie DNS-Einträge lokal auflösen können:
nslookup google.com
Wenn Sie von diesem Befehl eine IP-Adresse zurückerhalten, sollte DNS kein Problem sein. Versuchen Sie dann, den Fastestmirror-Cache zu entfernen und Ihren Yum-Befehl erneut auszuführen:
rm -f /var/cache/yum/timedhosts.txt
Antwort2
Das alles hat bei mir nicht funktioniert.
Verwendung von CentOS und yum. yum bleibt ohne Fehlermeldung hängen, zumindest scheint es so. Das Drücken von Ctrl+ Cfunktioniert nicht (das wiederholte Drücken funktioniert).
Es müssen mehrere Dinge überprüft werden: – Sind die Repositories in Ordnung? – Ist die Vernetzung in Ordnung? – Sind die Yum- und RPM-Datenbanken in Ordnung?
Beginnen wir also zunächst mit den einfachen Dingen – bereinigen Sie die Datenbanken:
rm -f /var/lib/rpm/__*
rpm --rebuilddb -v -v
yum clean all
Wenn das nicht funktioniert, können Sie eine Debug-Ebene, eine Fehlerebene und ein Timeout für Yum in folgendem Pfad festlegen /etc/yum.conf
:
debuglevel=1
errorlevel=1
timeout=1
Das Timeout beträgt standardmäßig 30 Sekunden. Wenn ein Repository also nicht antwortet, dauert es 30 Sekunden, bis der Fehler auftritt. Versuchen Sie auch, Yum ohne die Plugins (wie Fastest Mirror und Priorities) mit der Option zu verwenden --noplugins
. Wenn Sie Yum jetzt erneut starten, sollten Sie schneller mehr Informationen erhalten. Testen Sie mit:
yum --verbose --noplugins info
Sie erhalten möglicherweise Folgendes:
Config time: 0.105
Yum Version: 3.2.22
Setting up Package Sacks
Loading mirror speeds from cached hostfile
* base: mirror.nl.leaseweb.net
* extras: mirror.nl.leaseweb.net
* ius: mirrors.ircam.fr
* rpmforge: mirror.nl.leaseweb.net
* updates: mirror.nl.leaseweb.net link-to-server-repository/repomd.xml: [Errno 4] IOError: urlopen error (97, 'Address family not supported by protocol')
Trying other mirror.
Dies zeigt an, dass keine Informationen vom Server empfangen werden können. Versuchen Sie die URL, die von yum angezeigt wird (oben mit „Link zum Server-Repository“ angegeben), in Ihrem Webbrowser. Kopieren Sie sie aus Ihrer yum-Antwort und fügen Sie sie ein, nicht aus diesem Beitrag! Wenn Sie eine Liste erhalten, wissen Sie, dass das Repository online ist.
Wenn in Ihrem Browser eine Fehlermeldung angezeigt wird, versuchen Sie, dieses Repository aus zu entfernen /etc/yum.repos.d
. Versuchen Sie, die Liste mit wget auf Ihrem Server abzurufen und fügen Sie die URL ein:
wget link-to-server-repository/repomd.xml
Wenn dies zu einem Timeout führt, liegt ein Problem mit Ihren Firewall- oder Proxy-Einstellungen vor. Versuchen Sie, Ihre Firewall zu deaktivieren.
csf
Wenn Sie (ConfigServer Security und Firewall) ausführen , lfd
können Sie csf wie folgt deaktivieren:
csf -x
Versuchen Sie Yum erneut. Wenn es funktioniert, müssen Sie Ihr neu konfigurieren csf
. Aktivieren Sie csf
es erneut mit:
csf -e
Und überprüfen Sie auch Ihre Proxy-Einstellungen. Sie können auch versuchen, in den .repo-Dateien unter https in http zu ändern /etc/yum.repos.d/
.
Antwort3
In meinem Fall war es eine verbleibende RPM-Datenbank-Sperrdatei /var/lib/rpm/.dbenv.lock
, die Yum-Befehle zum Hängen brachte. Nach dem Entfernen dieser Datei konnte Yum wieder verwendet werden.
Antwort4
Hatte ein ähnliches Problem und der Grund war das Vorhandensein einer Yum-Sperrdatei /var/run/yum.pid
dort, wo sie aufgrund eines schwerwiegenden Fehlers bei einem vorherigen Yum-Lauf hinterlassen wurde.
Ich habe es entfernt sudo rm /var/run/yum.pid
und das Problem war gelöst.