AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 831537
Accepted
Frands Hansen
Frands Hansen
Asked: 2017-02-09 23:45:46 +0800 CST2017-02-09 23:45:46 +0800 CST 2017-02-09 23:45:46 +0800 CST

Yum 无法更新 - 存在冲突

  • 772

问题是什么

简而言之,这就是让我头疼的原因:

--> Finished Dependency Resolution
Error: Package: policycoreutils-2.5-11.el7_3.x86_64 (base)
           Requires: libsepol.so.1(LIBSEPOL_1.0)(64bit)
Error: Package: libsemanage-2.5-5.1.el7_3.x86_64 (base)
           Requires: libsepol.so.1(LIBSEPOL_1.0)(64bit)
Error: Package: 1:NetworkManager-tui-1.4.0-14.el7_3.x86_64 (base)
           Requires: libjansson.so.4()(64bit)
Error: Package: libsemanage-2.5-5.1.el7_3.x86_64 (base)
           Requires: libsepol.so.1(LIBSEPOL_1.1)(64bit)
Error: Package: 7:lvm2-2.02.166-1.el7_3.2.x86_64 (base)
           Requires: device-mapper-persistent-data >= 0.6.3-1
           Installed: device-mapper-persistent-data-0.6.2-1.el7_2.x86_64 (@base)
               device-mapper-persistent-data = 0.6.2-1.el7_2
Error: Package: policycoreutils-2.5-11.el7_3.x86_64 (base)
           Requires: libselinux-utils >= 2.5-6
           Installed: libselinux-utils-2.2.2-6.el7.x86_64 (@anaconda)
               libselinux-utils = 2.2.2-6.el7
Error: Package: 1:NetworkManager-libnm-1.4.0-14.el7_3.x86_64 (base)
           Requires: libjansson.so.4()(64bit)
Error: Package: 1:NetworkManager-1.4.0-14.el7_3.x86_64 (base)
           Requires: libjansson.so.4()(64bit)
Error: Package: kernel-3.10.0-514.6.1.el7.x86_64 (base)
           Requires: linux-firmware >= 20160830-49
           Installed: linux-firmware-20150904-43.git6ebf5d5.el7.noarch (@anaconda)
               linux-firmware = 20150904-43.git6ebf5d5.el7
Error: Package: policycoreutils-2.5-11.el7_3.x86_64 (base)
           Requires: libsepol >= 2.5-6
           Installed: libsepol-2.1.9-3.el7.x86_64 (@anaconda)
               libsepol = 2.1.9-3.el7
Error: Package: policycoreutils-2.5-11.el7_3.x86_64 (base)
           Requires: libsepol.so.1(LIBSEPOL_1.1)(64bit)
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest  

系统信息

该服务器运行 CentOS 7。它没有额外的存储库,并且仅使用来自核心 CentOS 7 存储库的软件包。没有安装任何不是 yum 默认提供的软件。

我尝试了什么以及我发现了什么

我已经尝试了很多事情,所以我会尝试排除这些:

清洁百胜

yum clean all基本上。

擦除 yum 缓存目录

rm -rf /var/cache/yum并重建yum makecache

检查存储库

我已经尝试了几个存储库,并且我确实检查了所有存储库是否确实存在更新文件。我什至尝试从 repo 下载一些 RPM 并手动更新它们,效果很好。但显然我希望 yum 为我做这件事。

检查存储库配置

下面的文件/etc/yum.repos.d看起来很好,完全匹配另一台服务器,效果很好。

检查 repolist

yum repolist- 这是一个发现!看:

# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
repo id                             repo name                             status
base/7/x86_64                       CentOS-7 - Base                       807
extras/7/x86_64                     CentOS-7 - Extras                     807
updates/7/x86_64                    CentOS-7 - Updates                    807
repolist: 2,421 

请注意,每个包中只有 807 个包。在我的其他服务器上,有更多可用的软件包。

检查 yum sqlite 数据库

我尝试从服务器下载 primary_db.sqlite 以使用 SQLite 编辑器对其进行检查。而实际上packages表中只有 807 条记录。

显然这已经被清除了很多次,所以它不是一个旧的遗留物。

...这就是你们进来的地方。我没有好主意,但对我来说似乎缩小到数字 807。为什么只有 807 包?当然,我像疯子一样用谷歌搜索,但我找不到这样的东西。

我在这里找到了另一个线程,有人似乎有同样的问题,但没有提供太多信息:在 CentOS 7 中更新 Yum 时的依赖冲突

更新

评论 1

yum.conf

[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release


#  This is the default, if you make this bigger yum won't see if the metadata
# is newer on the remote and so you'll "gain" the bandwidth of not having to
# download the new metadata and "pay" for it by yum not having correct
# information.
#  It is esp. important, to have correct metadata, for distributions like
# Fedora which don't keep old packages around. If you don't like this checking
# interupting your command line usage, it's much better to have something
# manually check the metadata once an hour (yum-updatesd will do this).
# metadata_expire=90m

# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d 

All yum.repos.d files http://pastebin.centos.org/65881/

linux centos yum
  • 1 1 个回答
  • 1931 Views

1 个回答

  • Voted
  1. Best Answer
    Michael Hampton
    2017-02-10T00:29:00+08:002017-02-10T00:29:00+08:00

    好的,现在我们可以看到您CentOS-Base.repo的baseurl四个存储库中的三个是错误的。

    reposbase和extras(centosplus已禁用)都有一个 bad baseurl. 它们不是指向您选择的镜像上实际对应的存储库,而是都指向updates存储库。

    您应该会发现这很容易解决。根据文件中已经存在的示例,只需将baseurl指向正确的 repo 更改。

    解决此问题后,您应该yum clean all再次。

    • 1

相关问题

  • 多操作系统环境的首选电子邮件客户端

  • 你最喜欢的 Linux 发行版是什么?[关闭]

  • 更改 PHP 的默认配置设置?

  • 保护新的 Ubuntu 服务器 [关闭]

  • (软)Ubuntu 7.10 上的 RAID 6,我应该迁移到 8.10 吗?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve