在 CentOS 8 中
Error: Failed to synchronize cache for repo 'AppStream
最近,我在 CentOS 8 中遇到了“无法同步 repo ' appstream ' 的缓存”错误,这令人沮丧,但这是一个常见问题,有多种潜在原因。在此指南中,我将提供解决此问题的步骤。
在深入研究解决方案之前,让我们先了解此错误背后的常见原因:
识别常见原因:
在深入研究解决方案之前,让我们先了解此错误背后的常见原因:
1. 日期和时间设置不正确:确保系统的日期和时间设置准确,包括正确的时区。
2. 旧的或过期的 DNF 缓存:过时的 DNF 缓存可能会导致同步问题。清理缓存通常是必要的。
3. ****CentOS BaseURL:由于 CentOS 8 于 2021 年 12 月 31 日达到其生命周期结束 (EOL),您可能需要从“mirror.centos.org”切换到“vault.centos.org”以进行更新。
修复错误的日期和时间设置:
CentOS 7/8 引入了 timedatectl命令。请检查系统的日期和时间设置,确保它们适合您的时区。
[root@nayana ~]# timedatectl
Local time: Mon 2023-10-09 01:13:43 EDT
Universal time: Mon 2023-10-09 05:13:43 UTC
RTC time: Mon 2023-10-09 05:13:42
Time zone: America/New_York (EDT, -0400)
System clock synchronized: no
NTP service: active
RTC in local TZ: no
Set to your timezone
[root@nayana ~]# timedatectl set-timezone "Asia/Kolkata"
[root@nayana ~]# date
Mon Oct 9 10:45:19 IST 2023
清除旧的/过期的 DNF 缓存:
这里有一篇文章介绍如何清理各种缓存。要清理所有缓存,请运行以下命令:
[root@nayana ~]# dnf clean all
[root@nayana ~]# rm -rf /var/cache/dnf
将 CentOS BaseURL 更改为 vault.centos.org:
CentOS Linux 8 已于 2021 年 12 月 31 日退役。这意味着 CentOS 官方项目将不再为 CentOS 8 提供开发资源。如果您需要在 2021 年 12 月 31 日之后更新 CentOS,则必须将镜像更改为vault.centos.org,它们将永久存档在那里。您也可以升级到CentOS Stream或从 CentOS 迁移到Rocky Linux。
1. 导航到 /etc/yum.repos.d/
目录:
[root@nayana ~]#
cd /etc/yum.repos.d/
- 使用以下命令修改存储库文件:
[root@nayana yum.repos.d]# sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
[root@nayana yum.repos.d]# sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
3.更新您的系统:
[root@nayana yum.repos.d]# dnf update
解决 CentOS 8 中的“无法同步 repo 'appstream' 的缓存”错误对于维护正常运行的系统至关重要。通过遵循以下步骤,您可以有效地解决问题。请记住将这些解决方案应用于您的特定环境,并随时关注最新的 CentOS 新闻以了解任何迁移注意事项。