dnf 更新与 gnome 软件中心更新冲突吗?

dnf 更新与 gnome 软件中心更新冲突吗?

我正在使用 fedora 25 gnome 最新更新。我的 dnf 仓库列表是

fedora-cisco-openh264.repo  rpmfusion-free-updates.repo
fedora.repo                 rpmfusion-free-updates-testing.repo
fedora-spotify.repo         rpmfusion-nonfree-rawhide.repo
fedora-updates.repo         rpmfusion-nonfree.repo
google-chrome.repo          rpmfusion-nonfree-updates.repo
rpmfusion-free.repo         rpmfusion-nonfree-updates-testing.repo

昨天我用dnf更新了我的系统。今天 gnome 软件中心通知我有 19 个软件包需要更新。我尝试使用 dnf 进行更新,因为我讨厌使用软件中心进行更新,因为它需要重新启动,但找不到任何使用dnf update.

所以我使用gnome软件中心更新了fedora,它安装了一个有问题的gdm版本,无法登录,不得不使用tty登录,然后startx

然后我会sudo dnf distro-sync删除 dnf 并降级 gnome 软件中心安装的所有更新,然后重新启动,一切正常。

Gnome 软件中心对我来说很熟悉,这不是我第一次在这个网站上询问它。值得信赖吗?它的仓库与dnf冲突吗?

答案1

Fedora Workstation 上的 GUI 使用 PackageKit 来安装操作系统软件包。 Fedora 上的 PackageKit 使用与/etc/yum.repos.d.

也可以使用 PackageKit 来pkcon代替。它不一定提供正常操作中的太多细节。不过,您可以查看一些工具:

  • pkcon get-updates- 列出更新而不安装
  • pkcon refresh force- 刷新更新/包列表
  • pkcon update- 安装更新,无需重新启动或停止运行先前版本的任何程序。
  • pkcon resolve gdm- 如果有多个可用的 gdm 软件包(包括更新),文档表示应该将它们全部列出。显然这是一个谎言,但它没有列出更新。 https://bugzilla.redhat.com/show_bug.cgi?id=1429488

PackageKit 绕过dnf.他们确实通过许多库共享大量代码。然而,它被粘合在一起并以不同的方式配置,例如它使用完全独立的缓存。它甚至以不同的方式处理签名验证(据我所知,dnf 主要将其委托给 rpm)。

FWIW,我在使用 Fedora Workstation 时还没有看到 PackageKit 导致任何此类问题。我在使用 PackageKit 时遇到的主要问题是它没有通知更新。

我的 Fedora 25 系统报告以下内容:

$ dnf repolist
Last metadata expiration check: 0:16:16 ago on Mon Mar  6 12:50:41 2017.
repo id                                                        repo name                                                                        status
fedora                                                         Fedora 25 - x86_64                                                               51,669
local-google-chrome                                            local-google-chrome                                                                   3
*rpmfusion-free                                                RPM Fusion for Fedora 25 - Free                                                     541
*rpmfusion-free-updates                                        RPM Fusion for Fedora 25 - Free - Updates                                           170
updates                                                        Fedora 25 - x86_64 - Updates                                                     17,151

$ dnf info gdm | grep -E 'Version|Repo'
Version     : 3.22.1
Repo        : @System
Version     : 3.22.2
Repo        : updates
Version     : 3.22.2
Repo        : updates

$ pkcon refresh force
...

$ pkcon get-updates | grep gdm
Available    gdm-1:3.22.2-1.fc25.x86_64 (updates)

(以及pkcon resolve错误:)

$ pkcon resolve gdm
Resolving                     [=========================]         
Installed       gdm-1:3.22.1-1.fc25.x86_64 (installed:anaconda)                 The GNOME Display Manager
Available       gdm-1:3.22.1-1.fc25.i686 (fedora)                               The GNOME Display Manager

相关内容