¿Cómo puedo encontrar qué controlador de video está en uso en mi sistema?

190

Me gustaría probar un controlador de pantalla de video diferente, pero no estoy seguro de cuál estoy usando actualmente.

¿Cuál es la manera simple de ver qué controlador está usando mi sistema actualmente?

belacqua
fuente

Respuestas:

182

Ejecute lshw -c videoy busque la línea con "configuración". El controlador cargado tiene el prefijo "driver =". Salida de ejemplo:

  *-monitor
       descripción: controlador compatible con VGA
       producto: Controlador de gráficos integrado del procesador central
       vendedor: Intel Corporation
       Identificación física: 2
       información del bus: pci @ 0000: 00: 02.0
       versión: 02
       ancho: 64 bits
       reloj: 33MHz
       capacidades: vga_controller bus_master cap_list rom
       configuración: driver = latencia i915 = 0
       recursos: irq: 45 memoria: fd000000-fd3fffff memoria: d0000000-dfffffff ioport: 1800 (tamaño = 8)

Si desea más información sobre el controlador cargado, ejecute modinfo. Salida de 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 

Tenga en cuenta que modinfofunciona en nombres de archivo y alias, no en nombres de módulos. La mayoría de los módulos tendrán el mismo nombre para el nombre del módulo y el nombre del archivo, pero hay excepciones. Uno de ellos es nvidia.

Otra forma de utilizar estos comandos para mostrarle el nombre del archivo del controlador sería:

modinfo -F filename `lshw -c video | awk '/configuration: driver/{print $2}' | cut -d= -f2`

Cuando se carga, el comando lsmodmostrará el nvidiamódulo como cargado. modinfo nvidiaerror fuera ¿Por qué? Debido a que no hay un módulo llamado "nvidia", es solo un alias. Para resolver el alias que puedes usar modprobe --resolve-alias nvidia. O para obtener toda la información de mod en un solo comando:

modinfo $(modprobe --resolve-alias nvidia)
Lekensteyn
fuente
1
Gracias, ¿sabe si hay una manera de hacer coincidir la cadena que devuelve a una base de datos (o lista, etc.) que proporciona una descripción más larga?
belacqua
3
modinfo nvidia_currentno funciona para mi sin embargo lshw -c video, me muestra los detalles del controlador como nvidia
Ubuntuser
1
Mi computadora portátil tiene dos tarjetas de video: una tarjeta Intel integrada y una Radeon HD 6xxx. Ambas tarjetas tienen controladores, por lo que ambas aparecen con estos comandos. Pero eso no me dice cuál está siendo utilizado por X11, ¿verdad?
nada101
3
@ naught101 Mira /var/log/Xorg.0.logpara descubrir. La tarjeta que se está utilizando está marcada con una estrella: `(-) PCI: * (0: 0: 2: 0) ...`
Lekensteyn
3
Cuando ejecuto sudo lshw -c video, la línea de "configuración" dice "latencia = 0" y no hay ninguna entrada para el controlador en ninguna parte. He reinstalado los controladores de Intel con éxito varias veces, con reinicios intermedios, y pase lo que pase, lshw no muestra ninguna información del controlador.
ely
85

Puede usar el siguiente comando para ver el controlador del kernel vga utilizado actualmente:

lspci -nnk | grep -i vga -A3 | grep 'in use'

Ejemplo de salida para una tarjeta gráfica ATI / AMD:

  • si se usa el controlador Radeon de código abierto :

    Kernel driver in use: radeon
    
  • Si se utiliza el controlador Fglrx patentado :

    Kernel driver in use: fglrx_pci
    

Salida completa con 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

Módulos de kernel disponibles que puede ver con lspci -nnk | grep -i vga -A3 | grep 'Kernel modules':

Kernel modules: fglrx, radeon

Nota: ¡ Esto no funciona en todos los casos!

Para un adaptador de pantalla VGA PCI / AGP SiS 65x / M650 / 740, no hay una línea de "controlador de kernel en uso":

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

y el sisfbmódulo de kernel disponible no es el controlador cargado, porque lsmod | grep sisfbno tiene salida ( sisfbestá en la lista negra). En este caso sudo lshw -c video | grep Konfigurationtampoco funciona. El resultado es:

   Konfiguration: latency=0

sin ninguna información del conductor.

BuZZ-dEE
fuente
44
+1 para solución con herramientas linux 'estándar' (funciona perfectamente en fedora aquí)
niveles
1
¿Qué tal si veo in usetanto i915 como nouveau? ¿Cómo sé cuál usa X?
akostadinov
+1 Estaba tratando de usar el nombre del controlador de video en un sistema lubuntu : lspci | grepme tienes bien ahí. La lshwpropuesta de Lekensteyn, mientras trabajaba en ubuntu , no pudo detectar el nombre del archivo del módulo en lubuntu .
Antonio Molinaro
3

He intentado muchas formas sin éxito, pero esto funcionó en mí (Ubuntu 12.10):

/usr/lib/nux/unity_support_test --print

Una razón es que tengo una tarjeta Nvidia Optimus y eso hace las cosas más difíciles, así que agregué optirunantes del comando.

yksikerta
fuente
2
Pensé que solo imprimía las capacidades del controlador y la versión OpenGL: ¿muestra esto qué controlador está utilizando?
belacqua
He probado este comando en Ubuntu 16.04.2. Parece informar la GPU activa con una sintaxis similar a la que se glxinfo|egrep "OpenGL vendor|OpenGL renderer*" ve en el comando . Creo que unity_support_test --printejecuta el comando OpenGL en el backend.
Sun Bear
2

La mejor información que he visto hasta ahora está en nouveauwiki. También puede ayudar con tarjetas que no sean nvidia: https://nouveau.freedesktop.org/wiki/Optimus/

Este es xrandr --listproviders y sudo cat /sys/kernel/debug/vgaswitcheroo/switch. Mucha otra información útil sobre cómo controlar la potencia, las salidas y la descarga, etc.

akostadinov
fuente
2
hwinfo --gfxcard

Busque la línea que comienza por "Controlador:" Es posible que primero deba instalar el paquete hwinfo.

jarno
fuente
0

Abra una terminal y escriba:

sudo apt-get install sysinfo

Este es un pequeño y útil programa que puede decirte todo lo que necesitas saber sobre tu PC.

LinuxPCplus
fuente
2
No puedo obtener ninguna información del controlador VGA con Sysinfo. Captura de pantalla de información de Sysinfo VGA
BuZZ-dEE
1
sysinfo se bloquea en Ubuntu 16.04. Buen comienzo de un programa para mostrar información útil del sistema.
Inverso