今天早些时候,我在 USB 上安装了 Fedora 23。安装完成后,我进行了标准配置dnf upgrade
、shell 配置,最后准备安装 NVIDIA 驱动程序(我将使用的所有计算机都具有 NVIDIA GPU)。
rsync
当我正在整理我的 20GB+ 文件夹时,我把我那可怜的 U 盘推得太用力了同时作为dnf upgrade
.我意识到这是一个糟糕的主意,但我已经为此付出了更多的代价。
除了 Fedora 23 破坏了我/dev/sda
安装的计算机上的引导加载程序(不管我是从 USB 到 USB 安装的/dev/sdd
)之外/dev/sde
,在某些时候,一切都死掉了,计算机在更新期间关闭了。结果有点令人惊讶,我很有兴趣尝试弄清楚
- 在哪里查看或更好地如何解析诸如
/var/log*
, - 如何以编程方式识别所有损坏的包,以及
- 修复它们的正确方法是什么
dnf
?
大量重要的系统包似乎有两个版本,一个是更新前的版本,一个是更新后的版本。这使得生活难以发展......
例子:
我在另一台计算机上完成了,dnf upgrade
一切似乎都很好。我更新到了一个闪亮的新内核,等等。但是在重新启动后,我意识到虽然安装了内核 4.4,但 grub 仅列出了 4.2。当我发现 F20 的一个晦涩的错误报告提到同样的问题时,我正在放弃并vmlinuz
从源代码构建,他们通过安装grubby
.后来很多评论,事实证明我需要dnf reinstall kernel-core
(我已经有了grubby
并且是最新版本)。
这一直是许多修复的主题,只是它发生在一些相当重要的软件包上,这让我感觉好像发生了其他事情。
- 必须删除冲突的
hplip-libs-3.{15,16}
(两者都已安装,并且dnf
不愿意在不删除两者然后安装的情况下执行任何操作3.16
)。 任何时候输入不真实的命令(例如打字错误):
无法搜索文件:GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: 任何 .service 文件均未提供名称 org.freedesktop.PackageKit
- 我在网上看到了很多关于这个的帖子,尤其是关于 gedit 的帖子。但不适用于在终端中找不到的命令。
- 好的,NP
dnf search PackageKit
哦,好的,我会尝试一下install
。但事实证明,即使有了reinstall --allowerasing
,我仍然拥有1.0.10
并1.0.11
安装并且dnf
不会让步。 考虑到这个包涉及的所有事情,我现在有点鲁莽了......
dnf remove PackageKit-* dnf install PackageKit-* dnf list PackageKit-* # shows 1.0.10 dnf check-update && dnf upgrade dnf list PackageKit-* # shows 1.0.11 now
但它现在起作用了,因为冲突的版本再次减少到一个奇点。
有什么指点吗?我一直在滚动浏览 dnf 的日志/手册页/尝试一些各种实用程序distro-sync
(可能比我应该拥有的更多),但似乎无法弄清楚发生了什么。
这些冲突不断地突然出现。他们必须结束,对吧?
查看日志,唯一有意义的事情是,有时可能就在最初崩溃的地方,有一堆非 ASCII 字符/var/log/dnf.rpm.log
,或者至少在接下来的几个小时后,less
它显示为一长行before 。^@
logging initialized