Kürzlich hatte ich das Upgrade von CentOS 7 auf CentOS 8 untersucht und während des Vorgangs stieß ich auf den Fehler:Fehler beim Synchronisieren des Cache für Repo „Appstream“ . Unten ist der vollständige Fehler:
Failed to synchronize cache for repo 'baseos', ignoring this repo. Failed to synchronize cache for repo 'appstream', ignoring this repo.
Ausgabe von /var/log/dnf.log
für weitere DEBUG-Informationen:
2022-02-15T10:09:08Z DEBUG repo: downloading from remote: appstream 2022-02-15T10:09:08Z DEBUG Cannot download 'http://mirror.centos.org/centos/8/AppStream/x86_64/os/': Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried. 2022-02-15T10:09:08Z DEBUG repo: downloading from remote: extras 2022-02-15T10:09:08Z DEBUG not found other for: CentOS Linux 8 - Extras 2022-02-15T10:09:08Z DEBUG not found modules for: CentOS Linux 8 - Extras 2022-02-15T10:09:08Z DEBUG not found deltainfo for: CentOS Linux 8 - Extras 2022-02-15T10:09:08Z DEBUG not found updateinfo for: CentOS Linux 8 - Extras 2022-02-15T10:09:08Z DEBUG extras: using metadata from Fri 10 Dec 2021 06:26:25 PM IST. 2022-02-15T10:09:08Z WARNING Failed to synchronize cache for repo 'baseos', ignoring this repo. 2022-02-15T10:09:08Z WARNING Failed to synchronize cache for repo 'appstream', ignoring this repo.
Als ich mir die Fehlermeldung ansah, dachte ich, das Problem könnte an der Internetverbindung liegen. Die Internetverbindung und DNS funktionierten jedoch einwandfrei, wie unten gezeigt.
[root@upgrade-centos log]# ping google.com PING google.com (172.217.166.206) 56(84) bytes of data. 64 bytes from del03s13-in-f14.1e100.net (172.217.166.206): icmp_seq=1 ttl=115 time=44.10 ms ^C --- google.com ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 44.971/44.971/44.971/0.000 ms
Wie habe ich das Problem behoben? Hier ist es.
So beheben Sie Fehler beim Synchronisieren des Cache für Repo-Appstream
Dieses Problem kann mehrere Ursachen haben. Die häufigsten sind:
- Falsche Datums- und Uhrzeiteinstellungen
- Alter
dnf
Cache verfügbar oder abgelaufen - CentOS-Basis-URL
So beheben Sie falsche Datums- und Uhrzeiteinstellungen
Das timedatectl
command ist ein neues Dienstprogramm in CentOS 7/8. Es ist ein Ersatz für das alte traditionelle date
Befehl, der in sysvinit
verwendet wird Daemon-basierte Linux-Distributionen.
Ermitteln Sie das aktuelle Datum und die Uhrzeit Ihres Systems. Stellen Sie sicher, dass es mit der richtigen Zeitzone korrekt ist.
[root@upgrade-centos ~]# timedatectl Local time: Tue 2022-02-15 11:24:25 UTC Universal time: Tue 2022-02-15 11:24:25 UTC RTC time: Tue 2022-02-15 11:24:25 Time zone: UTC (UTC, +0000) System clock synchronized: no NTP service: active RTC in local TZ: no
Auf Ihre Zeitzone einstellen
[root@upgrade-centos ~]# timedatectl set-timezone "Asia/Kolkata" [root@upgrade-centos ~]# date Tue Feb 15 16:58:57 IST 2022
So löschen Sie den alten/abgelaufenen DNF-Cache
Hier ist ein Artikel, um jede Art von Cache zu bereinigen. Führen Sie den folgenden Befehl aus, um alles zu bereinigen:
[root@upgrade-centos ~]# dnf clean all [root@upgrade-centos ~]# rm -rf /var/cache/dnf
So ändern Sie die CentOS-Basis-URL von mirror.centos.org in vault.centos.org
CentOS Linux 8 hatte am 31. Dezember 2021 das End Of Life (EOL) erreicht. Das bedeutet, dass CentOS 8 keine Entwicklungsressourcen mehr aus dem offiziellen CentOS-Projekt erhalten wird. Wenn Sie nach dem 31. Dezember 2021 Ihr CentOS aktualisieren müssen, müssen Sie die Mirrors auf vault.centos.org ändern, wo sie dauerhaft archiviert werden. Alternativ können Sie ein Upgrade auf CentOS Stream durchführen oder von CentOS zu Rocky Linux migrieren.
Gehen Sie zu /etc/yum.repos.d/
Verzeichnis.
[root@autocontroller ~]# cd /etc/yum.repos.d/
Führen Sie die folgenden Befehle aus
[root@autocontroller ~]# sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
[root@autocontroller ~]# sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
Führen Sie jetzt dnf update
aus
[root@autocontroller ~]# dnf update
Das ist es!