Driver not loading on Zorin 16

Already having installed version 470 through the builtin ubuntu driver manager (this one worked fine), I tried switching to another version (460). From this point on, any driver seems to fail to load.

Things I tried so far:

  • Ensured secure boot is off.
  • Reinstalled 470 from the driver manager.
  • Reinstalled with apt-get install nvidia-driver-460.
  • Reinstalled from .run file, downloaded from website.
  • Tried apt purge *nvidia* to remove all nvidia packages.

…leading up to the same result every time, which is that the driver seems to be installed correctly but fails to load (also version 470).

Some terminal output:

$ uname -r
5.11.0-46-generic

$ lspci -v | grep VGA
01:00.0 VGA compatible controller: NVIDIA Corporation GK104 [GeForce GTX 760 OEM] (rev a1) (prog-if 00 [VGA controller])

$ dpkg -l | grep nvidia
ii  libnvidia-cfg1-460:amd64                                    460.91.03-0ubuntu0.20.04.1                  amd64        NVIDIA binary OpenGL/GLX configuration library
ii  libnvidia-common-460                                        460.91.03-0ubuntu0.20.04.1                  all          Shared files used by the NVIDIA libraries
rc  libnvidia-compute-390:i386                                  390.144-0ubuntu0.20.04.1                    i386         NVIDIA libcompute package
ii  libnvidia-compute-460:amd64                                 460.91.03-0ubuntu0.20.04.1                  amd64        NVIDIA libcompute package
ii  libnvidia-compute-460:i386                                  460.91.03-0ubuntu0.20.04.1                  i386         NVIDIA libcompute package
ii  libnvidia-decode-460:amd64                                  460.91.03-0ubuntu0.20.04.1                  amd64        NVIDIA Video Decoding runtime libraries
ii  libnvidia-decode-460:i386                                   460.91.03-0ubuntu0.20.04.1                  i386         NVIDIA Video Decoding runtime libraries
ii  libnvidia-encode-460:amd64                                  460.91.03-0ubuntu0.20.04.1                  amd64        NVENC Video Encoding runtime library
ii  libnvidia-encode-460:i386                                   460.91.03-0ubuntu0.20.04.1                  i386         NVENC Video Encoding runtime library
ii  libnvidia-extra-460:amd64                                   460.91.03-0ubuntu0.20.04.1                  amd64        Extra libraries for the NVIDIA driver
ii  libnvidia-fbc1-460:amd64                                    460.91.03-0ubuntu0.20.04.1                  amd64        NVIDIA OpenGL-based Framebuffer Capture runtime library
ii  libnvidia-fbc1-460:i386                                     460.91.03-0ubuntu0.20.04.1                  i386         NVIDIA OpenGL-based Framebuffer Capture runtime library
ii  libnvidia-gl-460:amd64                                      460.91.03-0ubuntu0.20.04.1                  amd64        NVIDIA OpenGL/GLX/EGL/GLES GLVND libraries and Vulkan ICD
ii  libnvidia-gl-460:i386                                       460.91.03-0ubuntu0.20.04.1                  i386         NVIDIA OpenGL/GLX/EGL/GLES GLVND libraries and Vulkan ICD
ii  libnvidia-ifr1-460:amd64                                    460.91.03-0ubuntu0.20.04.1                  amd64        NVIDIA OpenGL-based Inband Frame Readback runtime library
ii  libnvidia-ifr1-460:i386                                     460.91.03-0ubuntu0.20.04.1                  i386         NVIDIA OpenGL-based Inband Frame Readback runtime library
ii  nvidia-compute-utils-460                                    460.91.03-0ubuntu0.20.04.1                  amd64        NVIDIA compute utilities
ii  nvidia-dkms-460                                             460.91.03-0ubuntu0.20.04.1                  amd64        NVIDIA DKMS package
ii  nvidia-driver-460                                           460.91.03-0ubuntu0.20.04.1                  amd64        NVIDIA driver metapackage
ii  nvidia-kernel-common-460                                    460.91.03-0ubuntu0.20.04.1                  amd64        Shared files used with the kernel module
ii  nvidia-kernel-source-460                                    460.91.03-0ubuntu0.20.04.1                  amd64        NVIDIA kernel source package
ii  nvidia-prime                                                0.8.16~0.20.04.1                            all          Tools to enable NVIDIA's Prime
ii  nvidia-settings                                             470.57.01-0ubuntu0.20.04.2                  amd64        Tool for configuring the NVIDIA graphics driver
ii  nvidia-utils-460                                            460.91.03-0ubuntu0.20.04.1                  amd64        NVIDIA driver support binaries
ii  screen-resolution-extra                                     0.18build1                                  all          Extension for the nvidia-settings control panel
ii  xserver-xorg-video-nvidia-460                               460.91.03-0ubuntu0.20.04.1                  amd64        NVIDIA binary Xorg driver

$ nvidia-settings 

ERROR: NVIDIA driver is not loaded


ERROR: Unable to load info from any available system


(nvidia-settings:3804): GLib-GObject-CRITICAL **: 19:41:07.210: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
** Message: 19:41:07.213: PRIME: No offloading required. Abort
** Message: 19:41:07.213: PRIME: is it supported? no

Any help would be appreciated!

nvidia-bug-report.log.gz (96.0 KB)

Please post the output of
dkms status

That would be

$ dkms status
nvidia, 460.91.03: added
virtualbox, 6.1.26, 5.11.0-44-generic, x86_64: installed

Please run
sudo dkms install nvidia/460.91.03
post any errors that appear and attach make.log or check
dkms status
if state changed to ‘installed’

$ sudo dkms install nvidia/460.91.03     
Error! echo
Your kernel headers for kernel 5.11.0-46-generic cannot be found at
/lib/modules/5.11.0-46-generic/build or /lib/modules/5.11.0-46-generic/source.
You can use the --kernelsourcedir option to tell DKMS where it's located.

Strange. Maybe related to another issue: The first driver switch from 470 to 460 removed the package linux-modules-extra-5.11.0-46-generic, which i had to reinstall manually.

I do not really know where to find my kernel source dir though.

Needless to say, nothing changed for dkms status.

Just run
sudo apt install linux-headers-$(uname -r)
to install the sources, then check
dkms status.

That did the trick!

DKMS install was successful and everything is up and running again.

Thanks a lot!