14

For a long time, I have used the NVIDIA proprietary driver. In Additional Drivers the NVIDIA driver was activated. However, I just "Removed" that driver because I would like to use the Nouveau driver for other reasons. Yet, I have reason to believe I am still using the NVIDIA driver as the output of modprobe -l is as follows:

$  modprobe -l | grep 'nvidia'
kernel/drivers/video/nvidia/nvidiafb.ko

How do I really determine what driver I am using, and how to I enable Nouveau?

  • On Ubuntu 20.04, I get the error modprobe: invalid option -- 'l'. – PJ Singh May 26 at 1:48
21

nvidiafb is a framebuffer driver inside the Linux Kernel. Is not the proprietary module from nvidia. (nvidia.ko).

If you want to see the short description of the module, issue the following command in terminal

modinfo nvidiafb | grep description

If you want to read more a about framebuffer , read the FrambeBuffer on Ubuntu Wiki.

You can see if some nvidia package is installed by applying the following command

dpkg -l | grep -i nvidia

If you want to search if the nouveau module is loaded you can apply

lsmod | grep nouveau

If nvidia restricted module was loaded , then the nouveau module Cannot be loaded too (conflict each other).

Nvidia's (restricted) module name is nvidia . Not nvidiafb or something similar.

Also you can search from Additional Drivers page . In example below , no proprietary drivers are in use

enter image description here

And another command that can show you, which driver is in use:

lspci -nnk | grep -iA2 vga 

There you will see a line like

kernel driver in use: *****

If it's nvidia , then you have nvidia driver installed and in use. If it's nouveau, then you don't.

| improve this answer | |
  • What happens if I don't have Kernel driver in use under NVIDIA devices using lspci -nnk at all? – CMCDragonkai Jan 22 '16 at 4:08
  • @CMCDragonkai , any module that can be used by NVIDIA, is not loaded. Maybe the Card is not in use at all (if you have hybrid graphics, maybe it's disabled). – NickTux Jan 22 '16 at 15:05
  • Thought as much. No nvidia driver is being used or loaded. When booting via BIOS, X ends up using VESA driver, but when booting via UEFI, X cannot start at all. – CMCDragonkai Jan 23 '16 at 1:17
8

You can use excellent inxi tool. Install it from repository :

sudo apt install inxi

or from github : https://github.com/smxi/inxi

Then do a query by :

$ inxi -Gx
Graphics:  Card: NVIDIA GP104 [GeForce GTX 1080] bus-ID: 01:00.0
Display Server: X.Org 1.19.5 driver: nvidia Resolution: 3440x1440@74.92hz
OpenGL: renderer: GeForce GTX 1080/PCIe/SSE2 version: 4.5.0 NVIDIA 390.25 Direct Render: Yes

At the third line You can see string NVIDIA 390.25 which means that I am using Nvidia Binary driver.

| improve this answer | |
  • Awesome. Shows if the graphics driver is installed and if it is enabled. Display Server: X.Org 1.18.4 drivers: intel (unloaded: fbdev,vesa) FAILED: nouveau – Underverse Mar 9 '18 at 11:55
4

This is an old question but here is a reliable answer that you can count on in case someone else is looking for the same answer.

Run the following command:

sudo lshw -class video | grep driver=

Sample output:

configuration: driver=nouveau latency=0

If you want to get more details, run:

sudo lshw -class video

Here is a sample output:

  *-display                 
       description: VGA compatible controller
       product: GP106M [GeForce GTX 1060 Mobile 6GB]
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:01:00.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
       configuration: driver=nouveau latency=0
       resources: irq:124 memory:db000000-dbffffff memory:90000000-9fffffff memory:a0000000-a1ffffff ioport:e000(size=128) memory:c0000-dffff
| improve this answer | |
3

You may need to either reboot or restart X first. You can then try :

grep nouveau /var/log/Xorg.0.log

Output:

[ 29.227] (==) Matched nouveau as autoconfigured driver 0

[ 29.227] (==) Matched nouveau as autoconfigured driver 2

[ 29.227] (II) LoadModule: "nouveau"

[ 29.227] (II) Loading /usr/lib64/xorg/modules/drivers/nouveau_drv.so

[ 29.227] (II) Module nouveau: vendor="X.Org Foundation"

[ 29.240] (II) [drm] nouveau interface version: 1.1.0

[ 29.534] (II) NOUVEAU(0): [DRI2] DRI driver: nouveau

[ 29.534] (II) NOUVEAU(0): [DRI2] VDPAU driver: nouveau

[ 30.474] (II) AIGLX: Loaded and initialized nouveau

| improve this answer | |
2

On any linux system with the NVIDIA driver installed and loaded into the kernel, you can execute:

cat /proc/driver/nvidia/version
| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.