Ubuntu 17.10不会使用nvidia驱动程序,而是使用nouveau

我现在正在运行Ubuntu 17.10一段时间。 我有一台联想Ideapad 510-15ISK,配有Nvidia Geforce 940MX和一些Intel集成显卡。 这与我演奏的Dota 2完美搭配。 我安装了Nvidia Proprietary驱动程序384.111。

但是突然我注意到在播放Dota 2时帧率降低了很多,从稳定的100降到了30-40.我当然认为有一个驱动问题。 所以我发现Nvidia驱动程序不再使用了,而是nouveau驱动程序:

03:00.0 3D controller: NVIDIA Corporation GM108M [GeForce 940MX] (rev a2) Subsystem: Lenovo GM108M [GeForce 940MX] Flags: bus master, fast devsel, latency 0, IRQ 11 Memory at 93000000 (32-bit, non-prefetchable) [size=16M] Memory at 80000000 (64-bit, prefetchable) [size=256M] Memory at 90000000 (64-bit, prefetchable) [size=32M] I/O ports at 3000 [disabled] [size=128] Expansion ROM at  [disabled] Capabilities:  Kernel modules: nvidiafb, nouveau 

我发现’nvidiafb’不是Nvidia Proprietary驱动程序。

但是,当我查看“软件和更新”时,它表明我正在使用专有驱动程序。 看这个截图: nvidia驱动程序

正如您在屏幕截图中看到的,我已经更改了驱动程序版本。 我已经尝试清除所有nvidia驱动程序并重新安装。 我已经使用了384.111和390.12,但在所有情况下,我的Ubuntu安装仍然使用nouveau驱动程序。

此外,我已经尝试将新手驱动程序添加到黑名单中,但这不会产生任何影响。

可能是什么问题呢? 如何让Ubuntu再次使用专有驱动程序? 希望我提供了足够的信息,如果我需要提供更多信息,请告诉我。

(可能因此,Nvidia X Server应用程序无法启动。)

一个常见问题是没有加载正确的内核模块。 你有这个问题(见下文):

Kernel modules: nvidiafb, nouveau

请遵循建议

Elder_Geek

在关于这个主题的原始文章中: 安装Nvidia驱动程序而不是nouveau

0)下载当前的NVIDIA驱动程序

1)使用Ctrl + Alt + F1关闭登录管理器,然后输入

 sudo service lightdm stop 

2)通过编辑/etc/modprobe.d/blacklist.conf将非专有驱动程序列入黑名单

 blacklist nouveau blacklist nvidiafb 

3)删除现有的nvidia驱动程序并清除任何旧的状态和模块条目

 sudo apt-get remove --purge nvidia-* 

4)重建你当前的内核

 sudo update-initramfs -u 

5)重启

6)从命令行安装新的NVIDIA驱动程序:退出登录屏幕并停止x-server [参见步骤(1)],运行NVIDIA下载的驱动程序,安装驱动程序,然后重新启动

7)执行lshw -c videomodprobe nvidia以确保正确运行的内核模块:

 modinfo nvidia filename: /lib/modules/4.13.0-36-generic/kernel/drivers/video/nvidia.ko alias: char-major-195-* version: 390.25 supported: external license: NVIDIA srcversion: B5B1CA3087B567ADFADC070 alias: pci:v000010DEd00000E00sv*sd*bc04sc80i00* alias: pci:v000010DEd*sv*sd*bc03sc02i00* alias: pci:v000010DEd*sv*sd*bc03sc00i00* depends: ipmi_msghandler name: nvidia vermagic: 4.13.0-36-generic SMP mod_unload parm: NVreg_Mobile:int parm: NVreg_ResmanDebugLevel:int parm: NVreg_RmLogonRC:int parm: NVreg_ModifyDeviceFiles:int parm: NVreg_DeviceFileUID:int parm: NVreg_DeviceFileGID:int parm: NVreg_DeviceFileMode:int parm: NVreg_UpdateMemoryTypes:int parm: NVreg_InitializeSystemMemoryAllocations:int parm: NVreg_UsePageAttributeTable:int parm: NVreg_MapRegistersEarly:int parm: NVreg_RegisterForACPIEvents:int parm: NVreg_CheckPCIConfigSpace:int parm: NVreg_EnablePCIeGen3:int parm: NVreg_EnableMSI:int parm: NVreg_TCEBypassMode:int parm: NVreg_UseThreadedInterrupts:int parm: NVreg_EnableStreamMemOPs:int parm: NVreg_EnableBacklightHandler:int parm: NVreg_EnableUserNUMAManagement:int parm: NVreg_EnableIBMNPURelaxedOrderingMode:int parm: NVreg_MemoryPoolSize:int parm: NVreg_IgnoreMMIOCheck:int parm: NVreg_RegistryDwords:charp parm: NVreg_RegistryDwordsPerDevice:charp parm: NVreg_RmMsg:charp parm: NVreg_AssignGpus:charp 

lshw -c video

  *-display description: VGA compatible controller product: NVIDIA Corporation vendor: NVIDIA Corporation physical id: 0 bus info: pci@0000:04:00.0 version: a1 width: 64 bits clock: 33MHz capabilities: vga_controller bus_master cap_list rom configuration: driver=nvidia latency=0 resources: irq:64 memory:f2000000-f2ffffff memory:e0000000-efffffff memory:f0000000-f1ffffff ioport:2000(size=128) memory:c0000-dffff 

如果条目licensenameconfiguration: driver与您在这里相同,一切顺利,专有驱动程序正在运行。