我在尝试恢复使用 Puppy Linux 预构建的旧版本时遇到了麻烦。上述预装的是 Acer Aspire X3200,其规格如下:
- 速龙 II X2 4400+
- 1.5Gb DDR2
- 无存储空间
- 英伟达 GeForce 8200
我的想法是,这将是客厅中的一台媒体电脑,通过 USB 连接到电视显示器,因为我没有多余的存储空间。由于它配备了 Nvidia IGP,当然会出现各种各样的问题:
- 第一次启动只会以黑屏结束,快速谷歌搜索,我发现了一个在没有内核模块设置的情况下加载 fossapup 的建议,该建议有效(但图形只会使用该选项显示)。然而,显示分辨率最大为 1280x1024,这意味着它不会在电视(32 英寸夏普 Aquos)上显示全屏,这并不可取。
- 结果发现 Puppy 包管理器中有一个旧版 Nvidia 340.108 驱动程序(支持 GeForce 8200)(http://distro.ibiblio.org/puppylinux/pet_packages-fossa64/)。尝试安装上述包时,我会收到“No Swap”警告(可能是由于通过 USB 运行),因此我决定忽略该错误并安装它。一切都很顺利,当光标显示时,使用内核模块设置启动可以正常工作。然而屏幕会疯狂地闪烁,除了光标之外什么也看不见。在没有内核模块的情况下重新启动会产生相同的结果,并且从技术上讲,该发行版无法使用。
此时我已经放弃了这一天,但仍然很好奇:
- 使用 USB 是罪魁祸首吗?使用 SSD 可以吗?主板可能只有 SATA II 接口,但我认为它仍然比旋转磁盘更好。
答案1
事实证明这是一个关于 MSI 中断的古老且已知的问题,导致驱动程序无法初始化。不幸的是,据我所知,Nvidia 从未正确解决这个问题,但有一个解决方法,只需禁用 MSI(主要感谢这些可爱的 互联网人)。
它就像添加options nvidia NVreg_EnableMSI=0
到内核模块配置文件一样简单(可以使用任何名称;在我的例子中为/etc/modprobe.b/video.conf
),或者添加pci=nomsi
为内核引导命令之一。
我还将以下内容添加到配置文件(同样,任何名称)到 blacklist nouveau
,因为我读到它可能会导致一些问题:
blacklist nouveau
options nouveau modeset=0
尝试添加这是一个麻烦,因为驱动程序只会在登录屏幕上崩溃,所以我通过添加GRUB > Ubuntu recovery mode > Drop to root