Как я могу узнать, какой видеодрайвер используется в моей системе?

190

Я хотел бы попробовать другой драйвер видео дисплея, но я не уверен, какой я сейчас использую.

Какой простой способ узнать, какой драйвер использует моя система в настоящее время?

belacqua
источник

Ответы:

182

Запустите lshw -c videoи найдите строку с «конфигурацией». Загруженный драйвер имеет префикс «driver =». Пример вывода:

  * -display
       описание: VGA-совместимый контроллер
       Продукт: Core Processor Integrated Graphics Controller
       поставщик: корпорация Intel
       физический идентификатор: 2
       информация об автобусе: pci @ 0000: 00: 02.0
       версия: 02
       ширина: 64 бита
       тактовая частота: 33 МГц
       Возможности: vga_controller bus_master cap_list rom
       конфигурация: драйвер = задержка i915 = 0
       ресурсы: irq: 45 память: fd000000-fd3fffff память: d0000000-dfffffff ioport: 1800 (размер = 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 $(modprobe --resolve-alias nvidia)
Lekensteyn
источник
1
Спасибо. Знаете ли вы, есть ли способ сопоставить строку, которую она возвращает, с базой данных (или списком и т. Д.), Которая дает более длинное описание?
Белаква
3
modinfo nvidia_currentне работает для меня. однако lshw -c videoпоказывает мне подробности драйвера как nvidia
Ubuntuser
1
В моем ноутбуке есть две видеокарты: интегрированная карта Intel и Radeon HD 6xxx. Обе карты имеют драйверы, и поэтому обе отображаются с этими командами. Но это не говорит мне, какой из них на самом деле используется X11, не так ли?
naught101
3
@ naught101 Посмотрите, /var/log/Xorg.0.logчтобы узнать. Используемая карта помечена звездочкой: `(-) PCI: * (0: 0: 2: 0) ...`
Лекенштейн
3
Когда я запускаю sudo lshw -c video, строка для «конфигурации» говорит «latency = 0» и нигде нет записи для драйвера. Я несколько раз успешно переустанавливал драйверы Intel с перезагружениями между ними, и, несмотря ни на что, lshw не показывает никакой информации о драйверах.
Ely
85

Вы можете использовать следующую команду, чтобы увидеть текущий используемый драйвер ядра 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

Примечание: это работает не во всех случаях!

Для адаптера дисплея SiGA 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

без какой-либо информации о драйвере.

Базз-DEE
источник
4
+1 за решение с помощью «стандартных» инструментов linux (отлично работает на fedora здесь)
уровня
1
Как насчет того, чтобы увидеть in usei915 и nouveau? Как мне узнать, какой из них используется X?
Акостадинов
+1 Я пытался использовать имя видеодрайвера в системе lubuntu : вы lspci | grepполучили меня прямо там. lshwПредложенный Lekensteyn, в то время как работает на убунту , не удалось обнаружить имя файла модуля на Lubuntu .
Антонио Молинаро
3

Я пробовал много способов без успеха, но это сработало на меня (Ubuntu 12.10):

/usr/lib/nux/unity_support_test --print

Одна причина в том, что у меня есть карта Nvidia Optimus, и это усложняет ситуацию, поэтому я добавил ее optirunперед командой.

yksikerta
источник
2
Я думал, что это только печатные возможности драйвера и версия OpenGL - это показывает, какой драйвер вы используете?
belacqua
Я проверил эту команду в Ubuntu 16.04.2. Похоже, он сообщает об активном графическом процессоре с синтаксисом, аналогичным команде glxinfo|egrep "OpenGL vendor|OpenGL renderer*" см . Я считаю, что unity_support_test --printзапускает команду OpenGL на серверной части.
Солнечный медведь
2

Лучшая информация, которую я видел до сих пор, в nouveauвики. Он также может помочь с картами не-nvidia: https://nouveau.freedesktop.org/wiki/Optimus/

Это xrandr --listproviders и есть sudo cat /sys/kernel/debug/vgaswitcheroo/switch. Много другой полезной информации о том, как управлять питанием, выходами и разгрузкой и т. Д.

akostadinov
источник
2
hwinfo --gfxcard

Найдите строку, начинающуюся с «Driver:». Возможно, вам придется сначала установить пакет hwinfo.

Ярно
источник
0

Откройте терминал и введите:

sudo apt-get install sysinfo

Это небольшая удобная программа, которая может рассказать вам все, что вам нужно знать о вашем ПК.

LinuxPCplus
источник
2
Я не могу получить информацию о драйвере VGA с Sysinfo. Информационный скриншот Sysinfo VGA
BuZZ-dEE
1
sysinfo вылетает под Ubuntu 16.04. Хорошее начало программы для отображения полезной системной информации.
Underverse