20

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?

1
  • 10
    On Ubuntu 20.04, I get the error modprobe: invalid option -- 'l'.
    – Enterprise
    May 26, 2020 at 1:48

5 Answers 5

31

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.

3
  • What happens if I don't have Kernel driver in use under NVIDIA devices using lspci -nnk at all? Jan 22, 2016 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, 2016 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. Jan 23, 2016 at 1:17
10

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: [email protected]
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.

1
  • 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, 2018 at 11:55
6

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
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

3

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

cat /proc/driver/nvidia/version

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .