我想尝试不同的视频显示驱动程序,但我不确定我当前正在使用哪一个。
有什么简单的方法可以查看我的系统当前正在使用什么驱动程序?
答案1
运行lshw -c video
,并查找包含“configuration”的行。已加载的驱动程序以“driver=”为前缀。示例输出:
*-展示 描述:VGA兼容控制器 产品:核心处理器集成图形控制器 供应商:英特尔公司 物理 ID:2 总线信息:pci@0000:00:02.0 版本:02 宽度:64 位 时钟:33MHz 功能:vga_controller bus_master cap_list rom 配置:驱动程序=i915延迟=0 资源:irq:45 内存:fd000000-fd3fffff 内存:d0000000-dfffffff ioport:1800(size=8)
如果你想要有关已加载驱动程序的更多信息,请运行modinfo
. 输出modinfo i915
:
filename: /lib/modules/2.6.35-24-generic/kernel/drivers/gpu/drm/i915/i915.ko
license: GPL and additional rights
description: Intel Graphics
author: Tungsten Graphics, Inc.
license: GPL and additional rights
... stripped information for saving space ...
depends: drm,drm_kms_helper,video,intel-agp,i2c-algo-bit
vermagic: 2.6.35-24-generic SMP mod_unload modversions
请注意modinfo
适用于文件名和别名,不适用于模块名。大多数模块的模块名和文件名都相同,但也有例外。其中之一是nvidia
。
使用这些命令来显示驱动程序文件名的另一种方法是:
modinfo -F filename `lshw -c video | awk '/configuration: driver/{print $2}' | cut -d= -f2`
加载后,命令lsmod
将显示nvidia
模块已加载。modinfo nvidia
将出错。为什么?因为没有名为“nvidia”的模块,它只是一个别名。要解析别名,您可以使用modprobe --resolve-alias nvidia
。或者在一个命令中获取整个 modinfo:
modinfo $(modprobe --resolve-alias nvidia)
答案2
您可以使用以下命令查看当前使用的 vga 内核驱动程序:
lspci -nnk | egrep -i --color 'vga|3d|2d' -A3 | grep 'in use'
ATI / AMD 显卡的示例输出:
完成输出lspci -nnk | grep -i vga -A3
01:00.0 VGA compatible controller [0300]: Advanced Micro Devices [AMD] nee ATI Mobility Radeon HD 2400 [1002:94c9]
Subsystem: Toshiba America Info Systems Device [1179:ff00]
Kernel driver in use: fglrx_pci
Kernel modules: fglrx, radeon
你可以通过以下命令查看可用的内核模块lspci -nnk | grep -i vga -A3 | grep 'Kernel modules'
:
Kernel modules: fglrx, radeon
笔记:但这并不适用于所有情况!
对于 SiS 65x/M650/740 PCI/AGP VGA 显示适配器,没有“内核驱动程序正在使用”行:
lspci -nnk | grep -i vga -A2
01:00.0 VGA compatible controller [0300]: Silicon Integrated Systems [SiS] 65x/M650/740 PCI/AGP VGA Display Adapter [1039:6325]
Subsystem: ASUSTeK Computer Inc. Device [1043:1612]
Kernel modules: sisfb
并且可用的sisfb
内核模块不是已加载的驱动程序,因为lsmod | grep sisfb
没有输出(sisfb
被列入黑名单)。在这种情况下sudo lshw -c video | grep Konfiguration
不起作用。输出是:
Konfiguration: latency=0
没有任何驾驶员信息。
答案3
hwinfo --gfxcard
查找以“ Driver: ”开头的行,您可能必须先安装 hwinfo 包。
答案4
我尝试了很多方法都没有成功,但是这个确实有效(Ubuntu 12.10):
/usr/lib/nux/unity_support_test --print
一个原因是我有 Nvidia Optimus 卡,这使得事情变得更加困难,所以我optirun
在命令之前添加了。