查看系统当前正在使用哪种驱动程序的简单方法是什么?
#1 楼
运行lshw -c video
,然后查找带有“ configuration”的行。加载的驱动程序的前缀为“ driver =”。输出示例:*-display description: VGA compatible controller product: Core Processor Integrated Graphics Controller vendor: Intel Corporation physical id: 2 bus info: pci@0000:00:02.0 version: 02 width: 64 bits clock: 33MHz capabilities: vga_controller bus_master cap_list rom configuration: driver=i915 latency=0 resources: irq:45 memory:fd000000-fd3fffff memory: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 }' | cut -d= -f2`
加载后,命令
lsmod
将显示nvidia
模块已加载。 modinfo nvidia
将出错。为什么?因为没有名为“ nvidia”的模块,所以它只是一个别名。要解析别名,可以使用modprobe --resolve-alias nvidia
。或通过一个命令获取整个modinfo:modinfo $(modprobe --resolve-alias nvidia)
#2 楼
您可以使用以下命令查看当前使用的vga内核驱动程序:lspci -nnk | grep -i vga -A3 | grep 'in use'
ATI / AMD图形卡的示例输出:
如果使用开源Radeon驱动程序:
Kernel driver in use: radeon
如果使用专有的Fglrx驱动程序:
Kernel driver in use: fglrx_pci
使用
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
,没有任何驱动程序信息。
评论
+1使用“标准” Linux工具的解决方案(在此处可在fedora上完美运行)
– 4级
15年4月27日在10:09
如果看到同时使用i915和nouveau怎么办?我怎么知道X使用哪个?
–akostadinov
17年1月11日在15:31
+1我试图在lubuntu系统上使用视频驱动程序的名称:您的lspci | grep让我呆在那里。 Lekensteyn提出的lshw在ubuntu上工作时,未能在lubuntu上检测到模块文件的名称。
– Antonio Molinaro
18-10-25在21:27
有关每个视频卡使用哪个驱动程序的简要信息,请尝试lspci -nnk | grep -i vga -A3 | grep -e'正在使用'-e VGA,例如显示00:02.0与VGA兼容的控制器[0300]:英特尔公司第四代核心处理器集成图形控制器[8086:0416](修订版06)正在使用的内核驱动程序:i915 01: 00.0 VGA兼容控制器[0300]:NVIDIA Corporation GK106GLM [Quadro K2100M] [10de:11fc](rev a1)使用的内核驱动程序:nvidia
–brewmanz
20-2-10在0:40
#3 楼
hwinfo --gfxcard
查找以“ Driver:”开头的行。
您可能必须先安装hwinfo软件包。
#4 楼
我尝试了很多方法都没有成功,但这确实对我有效(Ubuntu 12.10):/usr/lib/nux/unity_support_test --print
一个原因是我有Nvidia Optimus卡,这使事情变得更难所以我在命令前添加了
optirun
。评论
我以为它仅显示驱动程序功能和OpenGL版本-这是否显示您正在使用的驱动程序?
– Belacqua
13年2月15日在16:32
我已经在Ubuntu 16.04.2。中测试了此命令。似乎使用与命令glxinfo | egrep“ OpenGL vendor | OpenGL renderer *”相似的语法报告活动的GPU。我相信unity_support_test --print在后端运行OpenGL命令。
–太阳熊
17-4-18在13:02
#5 楼
到目前为止,我所看到的最好的信息在nouveau
Wiki中。它还可以帮助使用非nvidia卡:https://nouveau.freedesktop.org/wiki/Optimus/
这是
xrandr --listproviders
和sudo cat /sys/kernel/debug/vgaswitcheroo/switch
。有关如何控制电源,输出和卸载等的许多其他有用信息。#6 楼
打开终端并输入:sudo apt-get install sysinfo
这是一个方便的小程序,可以告诉您所有有关PC的知识。
评论
我无法通过Sysinfo获取任何VGA驱动程序信息。 Sysinfo VGA信息屏幕截图
–BuZZ-dEE
13年2月14日在13:50
sysinfo在Ubuntu 16.04下崩溃。好的程序可以显示有用的系统信息。
–颠倒
18年3月3日在11:24
评论
谢谢-您是否知道是否可以将返回给数据库的字符串(或列表等)与返回的字符串进行匹配?
– Belacqua
2011年1月25日20:30
modinfo nvidia_current对我不起作用。但是lshw -c视频确实向我显示了驱动程序详细信息,为nvidia
–超级用户
13年2月8日在7:39
我的笔记本电脑有两个视频卡:一个集成的英特尔卡和一个Radeon HD 6xxx。两张卡都有驱动程序,因此都通过这些命令显示。但这并不能告诉我X11实际使用的是哪个,不是吗?
–naught101
13年10月10日在1:17
@ naught101在/var/log/Xorg.0.log中查找以发现。正在使用的卡上标有星号:`(-)PCI:*(0:0:2:0)...
– Lekensteyn
13年10月10日在9:58
当我运行sudo lshw -c video时,“ configuration”行显示为“ latency = 0”,并且在任何地方都没有驱动程序条目。我已经成功安装了几次英特尔驱动程序,并且在两次重启之间进行了重新启动,无论如何,lshw不会显示任何驱动程序信息。
– ely
16-10-12在17:44