![为什么没有 Nvidia 硬件的 Linux 计算机会因 Nvidia 内核而消化不良?](https://linux22.com/image/1496226/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%B2%A1%E6%9C%89%20Nvidia%20%E7%A1%AC%E4%BB%B6%E7%9A%84%20Linux%20%E8%AE%A1%E7%AE%97%E6%9C%BA%E4%BC%9A%E5%9B%A0%20Nvidia%20%E5%86%85%E6%A0%B8%E8%80%8C%E6%B6%88%E5%8C%96%E4%B8%8D%E8%89%AF%EF%BC%9F.png)
我在一台装有 ATI / AMD 显卡而没有 Nvidia 硬件的计算机上运行 Debian Wheezy。一周前,毫无征兆地,我apt
决定每次运行时都需要配置 Nvidia 显卡,这导致更新过程中出现不稳定行为和故障。
apt 日志(相关部分如下所示)列出了与 Nvidia 内核相关的各种故障(nvidia-kernel-amd64
及其依赖性,nvidia-kernel-3.2.0-4-amd64
)。它似乎认为 Linux 内核未配置,因此无法配置 Nvidia 内核。请注意,这是在 Debian 上运行了一年多的系统上发生的,并且没有更改任何硬件。
尽管报告了这些错误,系统仍正常运行。
- 更奇怪的是,它认为需要配置一些根本不存在的东西。Apper 中没有列出这些安装项。
- 虽然没有安装,但驱动器上的各个文件夹中有一些工件。 Nvidia 内核是非免费的,因此它不是基本 Debian 发行版的标准组成部分,并且不应包含 Debian 运行所需的任何内容。我的 Debian 安装实际上是 Wheezy 旋转版,捆绑了一系列免费和非免费的驱动程序和软件,因此这很可能是工件的来源。
- 检查系统(通过
lspci
)可验证系统是否正确识别 ATI 显卡且未看到任何 Nvidia 硬件,并且正在使用正确的 (radeon) 驱动程序。没有明显的理由表明应发生涉及 Nvidia 的任何操作。 - 作为实验,我尝试看看是否可以安装然后卸载
nvidia-kernel-amd64
和nvidia-kernel-3.2.0-4-amd64
有可能该过程可能会清理一些可能损坏或不完整的先前安装。Apper 完成了两者的下载、准备和安装步骤,然后添加了安装linux-image-3.2.0-4-amd64
添加到列表中,失败(与此处显示的问题相同)。当我重新打开 Apper 时,两个 Nvidia 软件包仍然显示为已卸载,问题仍然存在。
答案1
这是一个很奇怪的问题,除了某些东西被损坏外,没有任何意义。Apt 有一些内置的清理工具,我试过了:
apt-get check
此命令是一个诊断工具。它会更新软件包列表并检查是否存在损坏的依赖关系。
apt-get -f install
当您收到有关“未满足的依赖关系”的投诉时,此命令会修复损坏的软件包。
都没有帮助。由于系统上不需要任何 Nvidia 软件包,因此我使用了:
apt-get remove <package_name>
此命令删除已安装的包(这在 Apper 中无法完成,因为系统认为这些包甚至没有安装)。
有关尝试配置 Nvidia 的问题的消息消失了。
不幸的是,事实证明这只是另一个问题(Linux 内核问题)导致的无法解释的产物。更新的基本问题仍然存在,只是现在它不再以 Nvidia 为借口。由于这揭示了一个不同的潜在问题,我将把它放在一个新问题中。